UNPKG

1.41 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 transit gateway peering attachment request. The peering attachment must be in the pendingAcceptance state.
25 */
26 acceptTransitGatewayPeeringAttachment(params: EC2.Types.AcceptTransitGatewayPeeringAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayPeeringAttachmentResult, AWSError>;
27 /**
28 * Accepts a transit gateway peering attachment request. The peering attachment must be in the pendingAcceptance state.
29 */
30 acceptTransitGatewayPeeringAttachment(callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayPeeringAttachmentResult, AWSError>;
31 /**
32 * 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.
33 */
34 acceptTransitGatewayVpcAttachment(params: EC2.Types.AcceptTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayVpcAttachmentResult, AWSError>;
35 /**
36 * 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.
37 */
38 acceptTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayVpcAttachmentResult, AWSError>;
39 /**
40 * Accepts one or more interface VPC endpoint connection requests to your VPC endpoint service.
41 */
42 acceptVpcEndpointConnections(params: EC2.Types.AcceptVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.AcceptVpcEndpointConnectionsResult) => void): Request<EC2.Types.AcceptVpcEndpointConnectionsResult, AWSError>;
43 /**
44 * Accepts one or more interface VPC endpoint connection requests to your VPC endpoint service.
45 */
46 acceptVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.AcceptVpcEndpointConnectionsResult) => void): Request<EC2.Types.AcceptVpcEndpointConnectionsResult, AWSError>;
47 /**
48 * 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.
49 */
50 acceptVpcPeeringConnection(params: EC2.Types.AcceptVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.AcceptVpcPeeringConnectionResult) => void): Request<EC2.Types.AcceptVpcPeeringConnectionResult, AWSError>;
51 /**
52 * 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.
53 */
54 acceptVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.AcceptVpcPeeringConnectionResult) => void): Request<EC2.Types.AcceptVpcPeeringConnectionResult, AWSError>;
55 /**
56 * Advertises an IPv4 or IPv6 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.
57 */
58 advertiseByoipCidr(params: EC2.Types.AdvertiseByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.AdvertiseByoipCidrResult) => void): Request<EC2.Types.AdvertiseByoipCidrResult, AWSError>;
59 /**
60 * Advertises an IPv4 or IPv6 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.
61 */
62 advertiseByoipCidr(callback?: (err: AWSError, data: EC2.Types.AdvertiseByoipCidrResult) => void): Request<EC2.Types.AdvertiseByoipCidrResult, AWSError>;
63 /**
64 * 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.
65 */
66 allocateAddress(params: EC2.Types.AllocateAddressRequest, callback?: (err: AWSError, data: EC2.Types.AllocateAddressResult) => void): Request<EC2.Types.AllocateAddressResult, AWSError>;
67 /**
68 * 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.
69 */
70 allocateAddress(callback?: (err: AWSError, data: EC2.Types.AllocateAddressResult) => void): Request<EC2.Types.AllocateAddressResult, AWSError>;
71 /**
72 * Allocates a Dedicated Host to your account. At a minimum, specify the supported instance type or instance family, the Availability Zone in which to allocate the host, and the number of hosts to allocate.
73 */
74 allocateHosts(params: EC2.Types.AllocateHostsRequest, callback?: (err: AWSError, data: EC2.Types.AllocateHostsResult) => void): Request<EC2.Types.AllocateHostsResult, AWSError>;
75 /**
76 * Allocates a Dedicated Host to your account. At a minimum, specify the supported instance type or instance family, the Availability Zone in which to allocate the host, and the number of hosts to allocate.
77 */
78 allocateHosts(callback?: (err: AWSError, data: EC2.Types.AllocateHostsResult) => void): Request<EC2.Types.AllocateHostsResult, AWSError>;
79 /**
80 * 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.
81 */
82 applySecurityGroupsToClientVpnTargetNetwork(params: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult) => void): Request<EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult, AWSError>;
83 /**
84 * 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.
85 */
86 applySecurityGroupsToClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult) => void): Request<EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult, AWSError>;
87 /**
88 * 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. You must specify either the IPv6 addresses or the IPv6 address count in the request.
89 */
90 assignIpv6Addresses(params: EC2.Types.AssignIpv6AddressesRequest, callback?: (err: AWSError, data: EC2.Types.AssignIpv6AddressesResult) => void): Request<EC2.Types.AssignIpv6AddressesResult, AWSError>;
91 /**
92 * 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. You must specify either the IPv6 addresses or the IPv6 address count in the request.
93 */
94 assignIpv6Addresses(callback?: (err: AWSError, data: EC2.Types.AssignIpv6AddressesResult) => void): Request<EC2.Types.AssignIpv6AddressesResult, AWSError>;
95 /**
96 * 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. You must specify either the IP addresses or the IP address count in the request.
97 */
98 assignPrivateIpAddresses(params: EC2.Types.AssignPrivateIpAddressesRequest, callback?: (err: AWSError, data: EC2.Types.AssignPrivateIpAddressesResult) => void): Request<EC2.Types.AssignPrivateIpAddressesResult, AWSError>;
99 /**
100 * 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. You must specify either the IP addresses or the IP address count in the request.
101 */
102 assignPrivateIpAddresses(callback?: (err: AWSError, data: EC2.Types.AssignPrivateIpAddressesResult) => void): Request<EC2.Types.AssignPrivateIpAddressesResult, AWSError>;
103 /**
104 * 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. You cannot associate an Elastic IP address with an interface in a different network border group. 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.
105 */
106 associateAddress(params: EC2.Types.AssociateAddressRequest, callback?: (err: AWSError, data: EC2.Types.AssociateAddressResult) => void): Request<EC2.Types.AssociateAddressResult, AWSError>;
107 /**
108 * 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. You cannot associate an Elastic IP address with an interface in a different network border group. 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.
109 */
110 associateAddress(callback?: (err: AWSError, data: EC2.Types.AssociateAddressResult) => void): Request<EC2.Types.AssociateAddressResult, AWSError>;
111 /**
112 * 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. If you specified a VPC when you created the Client VPN endpoint or if you have previous subnet associations, the specified subnet must be in the same VPC. To specify a subnet that's in a different VPC, you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) and change the VPC that's associated with it.
113 */
114 associateClientVpnTargetNetwork(params: EC2.Types.AssociateClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.AssociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.AssociateClientVpnTargetNetworkResult, AWSError>;
115 /**
116 * 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. If you specified a VPC when you created the Client VPN endpoint or if you have previous subnet associations, the specified subnet must be in the same VPC. To specify a subnet that's in a different VPC, you must first modify the Client VPN endpoint (ModifyClientVpnEndpoint) and change the VPC that's associated with it.
117 */
118 associateClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.AssociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.AssociateClientVpnTargetNetworkResult, AWSError>;
119 /**
120 * 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.
121 */
122 associateDhcpOptions(params: EC2.Types.AssociateDhcpOptionsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
123 /**
124 * 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.
125 */
126 associateDhcpOptions(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
127 /**
128 * Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.
129 */
130 associateIamInstanceProfile(params: EC2.Types.AssociateIamInstanceProfileRequest, callback?: (err: AWSError, data: EC2.Types.AssociateIamInstanceProfileResult) => void): Request<EC2.Types.AssociateIamInstanceProfileResult, AWSError>;
131 /**
132 * Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.
133 */
134 associateIamInstanceProfile(callback?: (err: AWSError, data: EC2.Types.AssociateIamInstanceProfileResult) => void): Request<EC2.Types.AssociateIamInstanceProfileResult, AWSError>;
135 /**
136 * Associates a subnet in your VPC or an internet gateway or virtual private gateway attached to your VPC with a route table in your VPC. This association causes traffic from the subnet or gateway 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 later. A route table can be associated with multiple subnets. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
137 */
138 associateRouteTable(params: EC2.Types.AssociateRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.AssociateRouteTableResult) => void): Request<EC2.Types.AssociateRouteTableResult, AWSError>;
139 /**
140 * Associates a subnet in your VPC or an internet gateway or virtual private gateway attached to your VPC with a route table in your VPC. This association causes traffic from the subnet or gateway 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 later. A route table can be associated with multiple subnets. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
141 */
142 associateRouteTable(callback?: (err: AWSError, data: EC2.Types.AssociateRouteTableResult) => void): Request<EC2.Types.AssociateRouteTableResult, AWSError>;
143 /**
144 * 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.
145 */
146 associateSubnetCidrBlock(params: EC2.Types.AssociateSubnetCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.AssociateSubnetCidrBlockResult) => void): Request<EC2.Types.AssociateSubnetCidrBlockResult, AWSError>;
147 /**
148 * 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.
149 */
150 associateSubnetCidrBlock(callback?: (err: AWSError, data: EC2.Types.AssociateSubnetCidrBlockResult) => void): Request<EC2.Types.AssociateSubnetCidrBlockResult, AWSError>;
151 /**
152 * Associates the specified subnets and transit gateway attachments with the specified transit gateway multicast domain. The transit gateway attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments to see the state of the attachment.
153 */
154 associateTransitGatewayMulticastDomain(params: EC2.Types.AssociateTransitGatewayMulticastDomainRequest, callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.AssociateTransitGatewayMulticastDomainResult, AWSError>;
155 /**
156 * Associates the specified subnets and transit gateway attachments with the specified transit gateway multicast domain. The transit gateway attachment must be in the available state before you can add a resource. Use DescribeTransitGatewayAttachments to see the state of the attachment.
157 */
158 associateTransitGatewayMulticastDomain(callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.AssociateTransitGatewayMulticastDomainResult, AWSError>;
159 /**
160 * Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.
161 */
162 associateTransitGatewayRouteTable(params: EC2.Types.AssociateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.AssociateTransitGatewayRouteTableResult, AWSError>;
163 /**
164 * Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.
165 */
166 associateTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.AssociateTransitGatewayRouteTableResult, AWSError>;
167 /**
168 * Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). The IPv6 CIDR block size is fixed at /56. You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block. 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.
169 */
170 associateVpcCidrBlock(params: EC2.Types.AssociateVpcCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.AssociateVpcCidrBlockResult) => void): Request<EC2.Types.AssociateVpcCidrBlockResult, AWSError>;
171 /**
172 * Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, an Amazon-provided IPv6 CIDR block, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). The IPv6 CIDR block size is fixed at /56. You must specify one of the following in the request: an IPv4 CIDR block, an IPv6 pool, or an Amazon-provided IPv6 CIDR block. 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.
173 */
174 associateVpcCidrBlock(callback?: (err: AWSError, data: EC2.Types.AssociateVpcCidrBlockResult) => void): Request<EC2.Types.AssociateVpcCidrBlockResult, AWSError>;
175 /**
176 * 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.
177 */
178 attachClassicLinkVpc(params: EC2.Types.AttachClassicLinkVpcRequest, callback?: (err: AWSError, data: EC2.Types.AttachClassicLinkVpcResult) => void): Request<EC2.Types.AttachClassicLinkVpcResult, AWSError>;
179 /**
180 * 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.
181 */
182 attachClassicLinkVpc(callback?: (err: AWSError, data: EC2.Types.AttachClassicLinkVpcResult) => void): Request<EC2.Types.AttachClassicLinkVpcResult, AWSError>;
183 /**
184 * Attaches an internet gateway or a virtual private 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.
185 */
186 attachInternetGateway(params: EC2.Types.AttachInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
187 /**
188 * Attaches an internet gateway or a virtual private 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.
189 */
190 attachInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
191 /**
192 * Attaches a network interface to an instance.
193 */
194 attachNetworkInterface(params: EC2.Types.AttachNetworkInterfaceRequest, callback?: (err: AWSError, data: EC2.Types.AttachNetworkInterfaceResult) => void): Request<EC2.Types.AttachNetworkInterfaceResult, AWSError>;
195 /**
196 * Attaches a network interface to an instance.
197 */
198 attachNetworkInterface(callback?: (err: AWSError, data: EC2.Types.AttachNetworkInterfaceResult) => void): Request<EC2.Types.AttachNetworkInterfaceResult, AWSError>;
199 /**
200 * Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name. Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. After you attach an EBS volume, you must make it available. For more information, see Making an EBS Volume Available For Use. 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, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
201 */
202 attachVolume(params: EC2.Types.AttachVolumeRequest, callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
203 /**
204 * Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name. Encrypted EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. After you attach an EBS volume, you must make it available. For more information, see Making an EBS Volume Available For Use. 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, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
205 */
206 attachVolume(callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
207 /**
208 * 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.
209 */
210 attachVpnGateway(params: EC2.Types.AttachVpnGatewayRequest, callback?: (err: AWSError, data: EC2.Types.AttachVpnGatewayResult) => void): Request<EC2.Types.AttachVpnGatewayResult, AWSError>;
211 /**
212 * 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.
213 */
214 attachVpnGateway(callback?: (err: AWSError, data: EC2.Types.AttachVpnGatewayResult) => void): Request<EC2.Types.AttachVpnGatewayResult, AWSError>;
215 /**
216 * 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.
217 */
218 authorizeClientVpnIngress(params: EC2.Types.AuthorizeClientVpnIngressRequest, callback?: (err: AWSError, data: EC2.Types.AuthorizeClientVpnIngressResult) => void): Request<EC2.Types.AuthorizeClientVpnIngressResult, AWSError>;
219 /**
220 * 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.
221 */
222 authorizeClientVpnIngress(callback?: (err: AWSError, data: EC2.Types.AuthorizeClientVpnIngressResult) => void): Request<EC2.Types.AuthorizeClientVpnIngressResult, AWSError>;
223 /**
224 * [VPC only] Adds the specified egress rules to a security group for use with a VPC. An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances associated with the specified destination security groups. You specify a protocol for each rule (for example, TCP). 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. Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur. For more information about VPC security group limits, see Amazon VPC Limits.
225 */
226 authorizeSecurityGroupEgress(params: EC2.Types.AuthorizeSecurityGroupEgressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
227 /**
228 * [VPC only] Adds the specified egress rules to a security group for use with a VPC. An outbound rule permits instances to send traffic to the specified IPv4 or IPv6 CIDR address ranges, or to the instances associated with the specified destination security groups. You specify a protocol for each rule (for example, TCP). 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. Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur. For more information about VPC security group limits, see Amazon VPC Limits.
229 */
230 authorizeSecurityGroupEgress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
231 /**
232 * Adds the specified ingress rules to a security group. An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address ranges, or from the instances associated with the specified destination security groups. You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean all types or all codes. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur. For more information about VPC security group limits, see Amazon VPC Limits.
233 */
234 authorizeSecurityGroupIngress(params: EC2.Types.AuthorizeSecurityGroupIngressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
235 /**
236 * Adds the specified ingress rules to a security group. An inbound rule permits instances to receive traffic from the specified IPv4 or IPv6 CIDR address ranges, or from the instances associated with the specified destination security groups. You specify a protocol for each rule (for example, TCP). For TCP and UDP, you must also specify the destination port or port range. For ICMP/ICMPv6, you must also specify the ICMP/ICMPv6 type and code. You can use -1 to mean all types or all codes. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur. For more information about VPC security group limits, see Amazon VPC Limits.
237 */
238 authorizeSecurityGroupIngress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
239 /**
240 * 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.
241 */
242 bundleInstance(params: EC2.Types.BundleInstanceRequest, callback?: (err: AWSError, data: EC2.Types.BundleInstanceResult) => void): Request<EC2.Types.BundleInstanceResult, AWSError>;
243 /**
244 * 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.
245 */
246 bundleInstance(callback?: (err: AWSError, data: EC2.Types.BundleInstanceResult) => void): Request<EC2.Types.BundleInstanceResult, AWSError>;
247 /**
248 * Cancels a bundling operation for an instance store-backed Windows instance.
249 */
250 cancelBundleTask(params: EC2.Types.CancelBundleTaskRequest, callback?: (err: AWSError, data: EC2.Types.CancelBundleTaskResult) => void): Request<EC2.Types.CancelBundleTaskResult, AWSError>;
251 /**
252 * Cancels a bundling operation for an instance store-backed Windows instance.
253 */
254 cancelBundleTask(callback?: (err: AWSError, data: EC2.Types.CancelBundleTaskResult) => void): Request<EC2.Types.CancelBundleTaskResult, AWSError>;
255 /**
256 * 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.
257 */
258 cancelCapacityReservation(params: EC2.Types.CancelCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.CancelCapacityReservationResult) => void): Request<EC2.Types.CancelCapacityReservationResult, AWSError>;
259 /**
260 * 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.
261 */
262 cancelCapacityReservation(callback?: (err: AWSError, data: EC2.Types.CancelCapacityReservationResult) => void): Request<EC2.Types.CancelCapacityReservationResult, AWSError>;
263 /**
264 * 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.
265 */
266 cancelConversionTask(params: EC2.Types.CancelConversionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
267 /**
268 * 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.
269 */
270 cancelConversionTask(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
271 /**
272 * 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.
273 */
274 cancelExportTask(params: EC2.Types.CancelExportTaskRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
275 /**
276 * 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.
277 */
278 cancelExportTask(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
279 /**
280 * Cancels an in-process import virtual machine or import snapshot task.
281 */
282 cancelImportTask(params: EC2.Types.CancelImportTaskRequest, callback?: (err: AWSError, data: EC2.Types.CancelImportTaskResult) => void): Request<EC2.Types.CancelImportTaskResult, AWSError>;
283 /**
284 * Cancels an in-process import virtual machine or import snapshot task.
285 */
286 cancelImportTask(callback?: (err: AWSError, data: EC2.Types.CancelImportTaskResult) => void): Request<EC2.Types.CancelImportTaskResult, AWSError>;
287 /**
288 * 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.
289 */
290 cancelReservedInstancesListing(params: EC2.Types.CancelReservedInstancesListingRequest, callback?: (err: AWSError, data: EC2.Types.CancelReservedInstancesListingResult) => void): Request<EC2.Types.CancelReservedInstancesListingResult, AWSError>;
291 /**
292 * 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.
293 */
294 cancelReservedInstancesListing(callback?: (err: AWSError, data: EC2.Types.CancelReservedInstancesListingResult) => void): Request<EC2.Types.CancelReservedInstancesListingResult, AWSError>;
295 /**
296 * 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.
297 */
298 cancelSpotFleetRequests(params: EC2.Types.CancelSpotFleetRequestsRequest, callback?: (err: AWSError, data: EC2.Types.CancelSpotFleetRequestsResponse) => void): Request<EC2.Types.CancelSpotFleetRequestsResponse, AWSError>;
299 /**
300 * 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.
301 */
302 cancelSpotFleetRequests(callback?: (err: AWSError, data: EC2.Types.CancelSpotFleetRequestsResponse) => void): Request<EC2.Types.CancelSpotFleetRequestsResponse, AWSError>;
303 /**
304 * Cancels one or more Spot Instance requests. Canceling a Spot Instance request does not terminate running Spot Instances associated with the request.
305 */
306 cancelSpotInstanceRequests(params: EC2.Types.CancelSpotInstanceRequestsRequest, callback?: (err: AWSError, data: EC2.Types.CancelSpotInstanceRequestsResult) => void): Request<EC2.Types.CancelSpotInstanceRequestsResult, AWSError>;
307 /**
308 * Cancels one or more Spot Instance requests. Canceling a Spot Instance request does not terminate running Spot Instances associated with the request.
309 */
310 cancelSpotInstanceRequests(callback?: (err: AWSError, data: EC2.Types.CancelSpotInstanceRequestsResult) => void): Request<EC2.Types.CancelSpotInstanceRequestsResult, AWSError>;
311 /**
312 * 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.
313 */
314 confirmProductInstance(params: EC2.Types.ConfirmProductInstanceRequest, callback?: (err: AWSError, data: EC2.Types.ConfirmProductInstanceResult) => void): Request<EC2.Types.ConfirmProductInstanceResult, AWSError>;
315 /**
316 * 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.
317 */
318 confirmProductInstance(callback?: (err: AWSError, data: EC2.Types.ConfirmProductInstanceResult) => void): Request<EC2.Types.ConfirmProductInstanceResult, AWSError>;
319 /**
320 * Copies the specified Amazon FPGA Image (AFI) to the current Region.
321 */
322 copyFpgaImage(params: EC2.Types.CopyFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.CopyFpgaImageResult) => void): Request<EC2.Types.CopyFpgaImageResult, AWSError>;
323 /**
324 * Copies the specified Amazon FPGA Image (AFI) to the current Region.
325 */
326 copyFpgaImage(callback?: (err: AWSError, data: EC2.Types.CopyFpgaImageResult) => void): Request<EC2.Types.CopyFpgaImageResult, AWSError>;
327 /**
328 * 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.
329 */
330 copyImage(params: EC2.Types.CopyImageRequest, callback?: (err: AWSError, data: EC2.Types.CopyImageResult) => void): Request<EC2.Types.CopyImageResult, AWSError>;
331 /**
332 * 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.
333 */
334 copyImage(callback?: (err: AWSError, data: EC2.Types.CopyImageResult) => void): Request<EC2.Types.CopyImageResult, AWSError>;
335 /**
336 * 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). Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless you enable encryption for 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 different CMK. 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.
337 */
338 copySnapshot(params: EC2.Types.CopySnapshotRequest, callback?: (err: AWSError, data: EC2.Types.CopySnapshotResult) => void): Request<EC2.Types.CopySnapshotResult, AWSError>;
339 /**
340 * 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). Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless you enable encryption for 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 different CMK. 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.
341 */
342 copySnapshot(callback?: (err: AWSError, data: EC2.Types.CopySnapshotResult) => void): Request<EC2.Types.CopySnapshotResult, AWSError>;
343 /**
344 * 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.
345 */
346 createCapacityReservation(params: EC2.Types.CreateCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.CreateCapacityReservationResult) => void): Request<EC2.Types.CreateCapacityReservationResult, AWSError>;
347 /**
348 * 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.
349 */
350 createCapacityReservation(callback?: (err: AWSError, data: EC2.Types.CreateCapacityReservationResult) => void): Request<EC2.Types.CreateCapacityReservationResult, AWSError>;
351 /**
352 * 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.
353 */
354 createClientVpnEndpoint(params: EC2.Types.CreateClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.CreateClientVpnEndpointResult) => void): Request<EC2.Types.CreateClientVpnEndpointResult, AWSError>;
355 /**
356 * 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.
357 */
358 createClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.CreateClientVpnEndpointResult) => void): Request<EC2.Types.CreateClientVpnEndpointResult, AWSError>;
359 /**
360 * 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.
361 */
362 createClientVpnRoute(params: EC2.Types.CreateClientVpnRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateClientVpnRouteResult) => void): Request<EC2.Types.CreateClientVpnRouteResult, AWSError>;
363 /**
364 * 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.
365 */
366 createClientVpnRoute(callback?: (err: AWSError, data: EC2.Types.CreateClientVpnRouteResult) => void): Request<EC2.Types.CreateClientVpnRouteResult, AWSError>;
367 /**
368 * 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 can 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. To create more than one customer gateway with the same VPN type, IP address, and BGP ASN, specify a unique device name for each customer gateway. Identical requests return information about the existing customer gateway and do not create new customer gateways.
369 */
370 createCustomerGateway(params: EC2.Types.CreateCustomerGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateCustomerGatewayResult) => void): Request<EC2.Types.CreateCustomerGatewayResult, AWSError>;
371 /**
372 * 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 can 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. To create more than one customer gateway with the same VPN type, IP address, and BGP ASN, specify a unique device name for each customer gateway. Identical requests return information about the existing customer gateway and do not create new customer gateways.
373 */
374 createCustomerGateway(callback?: (err: AWSError, data: EC2.Types.CreateCustomerGatewayResult) => void): Request<EC2.Types.CreateCustomerGatewayResult, AWSError>;
375 /**
376 * 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.
377 */
378 createDefaultSubnet(params: EC2.Types.CreateDefaultSubnetRequest, callback?: (err: AWSError, data: EC2.Types.CreateDefaultSubnetResult) => void): Request<EC2.Types.CreateDefaultSubnetResult, AWSError>;
379 /**
380 * 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.
381 */
382 createDefaultSubnet(callback?: (err: AWSError, data: EC2.Types.CreateDefaultSubnetResult) => void): Request<EC2.Types.CreateDefaultSubnetResult, AWSError>;
383 /**
384 * 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.
385 */
386 createDefaultVpc(params: EC2.Types.CreateDefaultVpcRequest, callback?: (err: AWSError, data: EC2.Types.CreateDefaultVpcResult) => void): Request<EC2.Types.CreateDefaultVpcResult, AWSError>;
387 /**
388 * 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.
389 */
390 createDefaultVpc(callback?: (err: AWSError, data: EC2.Types.CreateDefaultVpcResult) => void): Request<EC2.Types.CreateDefaultVpcResult, AWSError>;
391 /**
392 * 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. To have your instance 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.
393 */
394 createDhcpOptions(params: EC2.Types.CreateDhcpOptionsRequest, callback?: (err: AWSError, data: EC2.Types.CreateDhcpOptionsResult) => void): Request<EC2.Types.CreateDhcpOptionsResult, AWSError>;
395 /**
396 * 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. To have your instance 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.
397 */
398 createDhcpOptions(callback?: (err: AWSError, data: EC2.Types.CreateDhcpOptionsResult) => void): Request<EC2.Types.CreateDhcpOptionsResult, AWSError>;
399 /**
400 * [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.
401 */
402 createEgressOnlyInternetGateway(params: EC2.Types.CreateEgressOnlyInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.CreateEgressOnlyInternetGatewayResult, AWSError>;
403 /**
404 * [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.
405 */
406 createEgressOnlyInternetGateway(callback?: (err: AWSError, data: EC2.Types.CreateEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.CreateEgressOnlyInternetGatewayResult, AWSError>;
407 /**
408 * 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.
409 */
410 createFleet(params: EC2.Types.CreateFleetRequest, callback?: (err: AWSError, data: EC2.Types.CreateFleetResult) => void): Request<EC2.Types.CreateFleetResult, AWSError>;
411 /**
412 * 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.
413 */
414 createFleet(callback?: (err: AWSError, data: EC2.Types.CreateFleetResult) => void): Request<EC2.Types.CreateFleetResult, AWSError>;
415 /**
416 * 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.
417 */
418 createFlowLogs(params: EC2.Types.CreateFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.CreateFlowLogsResult) => void): Request<EC2.Types.CreateFlowLogsResult, AWSError>;
419 /**
420 * 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.
421 */
422 createFlowLogs(callback?: (err: AWSError, data: EC2.Types.CreateFlowLogsResult) => void): Request<EC2.Types.CreateFlowLogsResult, AWSError>;
423 /**
424 * 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 multiple FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development Kit.
425 */
426 createFpgaImage(params: EC2.Types.CreateFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.CreateFpgaImageResult) => void): Request<EC2.Types.CreateFpgaImageResult, AWSError>;
427 /**
428 * 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 multiple FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development Kit.
429 */
430 createFpgaImage(callback?: (err: AWSError, data: EC2.Types.CreateFpgaImageResult) => void): Request<EC2.Types.CreateFpgaImageResult, AWSError>;
431 /**
432 * 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.
433 */
434 createImage(params: EC2.Types.CreateImageRequest, callback?: (err: AWSError, data: EC2.Types.CreateImageResult) => void): Request<EC2.Types.CreateImageResult, AWSError>;
435 /**
436 * 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.
437 */
438 createImage(callback?: (err: AWSError, data: EC2.Types.CreateImageResult) => void): Request<EC2.Types.CreateImageResult, AWSError>;
439 /**
440 * 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.
441 */
442 createInstanceExportTask(params: EC2.Types.CreateInstanceExportTaskRequest, callback?: (err: AWSError, data: EC2.Types.CreateInstanceExportTaskResult) => void): Request<EC2.Types.CreateInstanceExportTaskResult, AWSError>;
443 /**
444 * 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.
445 */
446 createInstanceExportTask(callback?: (err: AWSError, data: EC2.Types.CreateInstanceExportTaskResult) => void): Request<EC2.Types.CreateInstanceExportTaskResult, AWSError>;
447 /**
448 * 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.
449 */
450 createInternetGateway(params: EC2.Types.CreateInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateInternetGatewayResult) => void): Request<EC2.Types.CreateInternetGatewayResult, AWSError>;
451 /**
452 * 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.
453 */
454 createInternetGateway(callback?: (err: AWSError, data: EC2.Types.CreateInternetGatewayResult) => void): Request<EC2.Types.CreateInternetGatewayResult, AWSError>;
455 /**
456 * 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.
457 */
458 createKeyPair(params: EC2.Types.CreateKeyPairRequest, callback?: (err: AWSError, data: EC2.Types.KeyPair) => void): Request<EC2.Types.KeyPair, AWSError>;
459 /**
460 * 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.
461 */
462 createKeyPair(callback?: (err: AWSError, data: EC2.Types.KeyPair) => void): Request<EC2.Types.KeyPair, AWSError>;
463 /**
464 * 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.
465 */
466 createLaunchTemplate(params: EC2.Types.CreateLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateResult) => void): Request<EC2.Types.CreateLaunchTemplateResult, AWSError>;
467 /**
468 * 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.
469 */
470 createLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateResult) => void): Request<EC2.Types.CreateLaunchTemplateResult, AWSError>;
471 /**
472 * 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.
473 */
474 createLaunchTemplateVersion(params: EC2.Types.CreateLaunchTemplateVersionRequest, callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateVersionResult) => void): Request<EC2.Types.CreateLaunchTemplateVersionResult, AWSError>;
475 /**
476 * 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.
477 */
478 createLaunchTemplateVersion(callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateVersionResult) => void): Request<EC2.Types.CreateLaunchTemplateVersionResult, AWSError>;
479 /**
480 * Creates a static route for the specified local gateway route table.
481 */
482 createLocalGatewayRoute(params: EC2.Types.CreateLocalGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateLocalGatewayRouteResult) => void): Request<EC2.Types.CreateLocalGatewayRouteResult, AWSError>;
483 /**
484 * Creates a static route for the specified local gateway route table.
485 */
486 createLocalGatewayRoute(callback?: (err: AWSError, data: EC2.Types.CreateLocalGatewayRouteResult) => void): Request<EC2.Types.CreateLocalGatewayRouteResult, AWSError>;
487 /**
488 * Associates the specified VPC with the specified local gateway route table.
489 */
490 createLocalGatewayRouteTableVpcAssociation(params: EC2.Types.CreateLocalGatewayRouteTableVpcAssociationRequest, callback?: (err: AWSError, data: EC2.Types.CreateLocalGatewayRouteTableVpcAssociationResult) => void): Request<EC2.Types.CreateLocalGatewayRouteTableVpcAssociationResult, AWSError>;
491 /**
492 * Associates the specified VPC with the specified local gateway route table.
493 */
494 createLocalGatewayRouteTableVpcAssociation(callback?: (err: AWSError, data: EC2.Types.CreateLocalGatewayRouteTableVpcAssociationResult) => void): Request<EC2.Types.CreateLocalGatewayRouteTableVpcAssociationResult, AWSError>;
495 /**
496 * 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.
497 */
498 createNatGateway(params: EC2.Types.CreateNatGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateNatGatewayResult) => void): Request<EC2.Types.CreateNatGatewayResult, AWSError>;
499 /**
500 * 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.
501 */
502 createNatGateway(callback?: (err: AWSError, data: EC2.Types.CreateNatGatewayResult) => void): Request<EC2.Types.CreateNatGatewayResult, AWSError>;
503 /**
504 * 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.
505 */
506 createNetworkAcl(params: EC2.Types.CreateNetworkAclRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkAclResult) => void): Request<EC2.Types.CreateNetworkAclResult, AWSError>;
507 /**
508 * 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.
509 */
510 createNetworkAcl(callback?: (err: AWSError, data: EC2.Types.CreateNetworkAclResult) => void): Request<EC2.Types.CreateNetworkAclResult, AWSError>;
511 /**
512 * 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.
513 */
514 createNetworkAclEntry(params: EC2.Types.CreateNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
515 /**
516 * 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.
517 */
518 createNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
519 /**
520 * 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.
521 */
522 createNetworkInterface(params: EC2.Types.CreateNetworkInterfaceRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfaceResult) => void): Request<EC2.Types.CreateNetworkInterfaceResult, AWSError>;
523 /**
524 * 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.
525 */
526 createNetworkInterface(callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfaceResult) => void): Request<EC2.Types.CreateNetworkInterfaceResult, AWSError>;
527 /**
528 * 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.
529 */
530 createNetworkInterfacePermission(params: EC2.Types.CreateNetworkInterfacePermissionRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfacePermissionResult) => void): Request<EC2.Types.CreateNetworkInterfacePermissionResult, AWSError>;
531 /**
532 * 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.
533 */
534 createNetworkInterfacePermission(callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfacePermissionResult) => void): Request<EC2.Types.CreateNetworkInterfacePermissionResult, AWSError>;
535 /**
536 * 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.
537 */
538 createPlacementGroup(params: EC2.Types.CreatePlacementGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
539 /**
540 * 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.
541 */
542 createPlacementGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
543 /**
544 * 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.
545 */
546 createReservedInstancesListing(params: EC2.Types.CreateReservedInstancesListingRequest, callback?: (err: AWSError, data: EC2.Types.CreateReservedInstancesListingResult) => void): Request<EC2.Types.CreateReservedInstancesListingResult, AWSError>;
547 /**
548 * 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.
549 */
550 createReservedInstancesListing(callback?: (err: AWSError, data: EC2.Types.CreateReservedInstancesListingResult) => void): Request<EC2.Types.CreateReservedInstancesListingResult, AWSError>;
551 /**
552 * 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, egress-only internet gateway, or transit 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.
553 */
554 createRoute(params: EC2.Types.CreateRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateRouteResult) => void): Request<EC2.Types.CreateRouteResult, AWSError>;
555 /**
556 * 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, egress-only internet gateway, or transit 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.
557 */
558 createRoute(callback?: (err: AWSError, data: EC2.Types.CreateRouteResult) => void): Request<EC2.Types.CreateRouteResult, AWSError>;
559 /**
560 * 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.
561 */
562 createRouteTable(params: EC2.Types.CreateRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.CreateRouteTableResult) => void): Request<EC2.Types.CreateRouteTableResult, AWSError>;
563 /**
564 * 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.
565 */
566 createRouteTable(callback?: (err: AWSError, data: EC2.Types.CreateRouteTableResult) => void): Request<EC2.Types.CreateRouteTableResult, AWSError>;
567 /**
568 * Creates a security group. A security group acts as a virtual firewall for your instance to control inbound and outbound traffic. 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. 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. For more information about VPC security group limits, see Amazon VPC Limits.
569 */
570 createSecurityGroup(params: EC2.Types.CreateSecurityGroupRequest, callback?: (err: AWSError, data: EC2.Types.CreateSecurityGroupResult) => void): Request<EC2.Types.CreateSecurityGroupResult, AWSError>;
571 /**
572 * Creates a security group. A security group acts as a virtual firewall for your instance to control inbound and outbound traffic. 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. 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. For more information about VPC security group limits, see Amazon VPC Limits.
573 */
574 createSecurityGroup(callback?: (err: AWSError, data: EC2.Types.CreateSecurityGroupResult) => void): Request<EC2.Types.CreateSecurityGroupResult, AWSError>;
575 /**
576 * 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.
577 */
578 createSnapshot(params: EC2.Types.CreateSnapshotRequest, callback?: (err: AWSError, data: EC2.Types.Snapshot) => void): Request<EC2.Types.Snapshot, AWSError>;
579 /**
580 * 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.
581 */
582 createSnapshot(callback?: (err: AWSError, data: EC2.Types.Snapshot) => void): Request<EC2.Types.Snapshot, AWSError>;
583 /**
584 * Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3. Volumes are chosen by specifying an instance. Any attached volumes will produce one snapshot each that is crash-consistent across the instance. Boot volumes can be excluded by changing the parameters.
585 */
586 createSnapshots(params: EC2.Types.CreateSnapshotsRequest, callback?: (err: AWSError, data: EC2.Types.CreateSnapshotsResult) => void): Request<EC2.Types.CreateSnapshotsResult, AWSError>;
587 /**
588 * Creates crash-consistent snapshots of multiple EBS volumes and stores the data in S3. Volumes are chosen by specifying an instance. Any attached volumes will produce one snapshot each that is crash-consistent across the instance. Boot volumes can be excluded by changing the parameters.
589 */
590 createSnapshots(callback?: (err: AWSError, data: EC2.Types.CreateSnapshotsResult) => void): Request<EC2.Types.CreateSnapshotsResult, AWSError>;
591 /**
592 * 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.
593 */
594 createSpotDatafeedSubscription(params: EC2.Types.CreateSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: EC2.Types.CreateSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.CreateSpotDatafeedSubscriptionResult, AWSError>;
595 /**
596 * 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.
597 */
598 createSpotDatafeedSubscription(callback?: (err: AWSError, data: EC2.Types.CreateSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.CreateSpotDatafeedSubscriptionResult, AWSError>;
599 /**
600 * 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.
601 */
602 createSubnet(params: EC2.Types.CreateSubnetRequest, callback?: (err: AWSError, data: EC2.Types.CreateSubnetResult) => void): Request<EC2.Types.CreateSubnetResult, AWSError>;
603 /**
604 * 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.
605 */
606 createSubnet(callback?: (err: AWSError, data: EC2.Types.CreateSubnetResult) => void): Request<EC2.Types.CreateSubnetResult, AWSError>;
607 /**
608 * Adds or overwrites the specified 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.
609 */
610 createTags(params: EC2.Types.CreateTagsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
611 /**
612 * Adds or overwrites the specified 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.
613 */
614 createTags(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
615 /**
616 * Creates a Traffic Mirror filter. A Traffic Mirror filter is a set of rules that defines the traffic to mirror. By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic Mirror rules to the filter. The rules you add define what traffic gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.
617 */
618 createTrafficMirrorFilter(params: EC2.Types.CreateTrafficMirrorFilterRequest, callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorFilterResult) => void): Request<EC2.Types.CreateTrafficMirrorFilterResult, AWSError>;
619 /**
620 * Creates a Traffic Mirror filter. A Traffic Mirror filter is a set of rules that defines the traffic to mirror. By default, no traffic is mirrored. To mirror traffic, use CreateTrafficMirrorFilterRule to add Traffic Mirror rules to the filter. The rules you add define what traffic gets mirrored. You can also use ModifyTrafficMirrorFilterNetworkServices to mirror supported network services.
621 */
622 createTrafficMirrorFilter(callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorFilterResult) => void): Request<EC2.Types.CreateTrafficMirrorFilterResult, AWSError>;
623 /**
624 * Creates a Traffic Mirror filter rule. A Traffic Mirror rule defines the Traffic Mirror source traffic to mirror. You need the Traffic Mirror filter ID when you create the rule.
625 */
626 createTrafficMirrorFilterRule(params: EC2.Types.CreateTrafficMirrorFilterRuleRequest, callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.CreateTrafficMirrorFilterRuleResult, AWSError>;
627 /**
628 * Creates a Traffic Mirror filter rule. A Traffic Mirror rule defines the Traffic Mirror source traffic to mirror. You need the Traffic Mirror filter ID when you create the rule.
629 */
630 createTrafficMirrorFilterRule(callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.CreateTrafficMirrorFilterRuleResult, AWSError>;
631 /**
632 * Creates a Traffic Mirror session. A Traffic Mirror session actively copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a filter, and then assign it to the session to define a subset of the traffic to mirror, for example all TCP traffic. The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a different VPC connected via VPC peering or a transit gateway. By default, no traffic is mirrored. Use CreateTrafficMirrorFilter to create filter rules that specify the traffic to mirror.
633 */
634 createTrafficMirrorSession(params: EC2.Types.CreateTrafficMirrorSessionRequest, callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorSessionResult) => void): Request<EC2.Types.CreateTrafficMirrorSessionResult, AWSError>;
635 /**
636 * Creates a Traffic Mirror session. A Traffic Mirror session actively copies packets from a Traffic Mirror source to a Traffic Mirror target. Create a filter, and then assign it to the session to define a subset of the traffic to mirror, for example all TCP traffic. The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in a different VPC connected via VPC peering or a transit gateway. By default, no traffic is mirrored. Use CreateTrafficMirrorFilter to create filter rules that specify the traffic to mirror.
637 */
638 createTrafficMirrorSession(callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorSessionResult) => void): Request<EC2.Types.CreateTrafficMirrorSessionResult, AWSError>;
639 /**
640 * Creates a target for your Traffic Mirror session. A Traffic Mirror target is the destination for mirrored traffic. The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in different VPCs connected via VPC peering or a transit gateway. A Traffic Mirror target can be a network interface, or a Network Load Balancer. To use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.
641 */
642 createTrafficMirrorTarget(params: EC2.Types.CreateTrafficMirrorTargetRequest, callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorTargetResult) => void): Request<EC2.Types.CreateTrafficMirrorTargetResult, AWSError>;
643 /**
644 * Creates a target for your Traffic Mirror session. A Traffic Mirror target is the destination for mirrored traffic. The Traffic Mirror source and the Traffic Mirror target (monitoring appliances) can be in the same VPC, or in different VPCs connected via VPC peering or a transit gateway. A Traffic Mirror target can be a network interface, or a Network Load Balancer. To use the target in a Traffic Mirror session, use CreateTrafficMirrorSession.
645 */
646 createTrafficMirrorTarget(callback?: (err: AWSError, data: EC2.Types.CreateTrafficMirrorTargetResult) => void): Request<EC2.Types.CreateTrafficMirrorTargetResult, AWSError>;
647 /**
648 * 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.
649 */
650 createTransitGateway(params: EC2.Types.CreateTransitGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayResult) => void): Request<EC2.Types.CreateTransitGatewayResult, AWSError>;
651 /**
652 * 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.
653 */
654 createTransitGateway(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayResult) => void): Request<EC2.Types.CreateTransitGatewayResult, AWSError>;
655 /**
656 * Creates a multicast domain using the specified transit gateway. The transit gateway must be in the available state before you create a domain. Use DescribeTransitGateways to see the state of transit gateway.
657 */
658 createTransitGatewayMulticastDomain(params: EC2.Types.CreateTransitGatewayMulticastDomainRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.CreateTransitGatewayMulticastDomainResult, AWSError>;
659 /**
660 * Creates a multicast domain using the specified transit gateway. The transit gateway must be in the available state before you create a domain. Use DescribeTransitGateways to see the state of transit gateway.
661 */
662 createTransitGatewayMulticastDomain(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.CreateTransitGatewayMulticastDomainResult, AWSError>;
663 /**
664 * Requests a transit gateway peering attachment between the specified transit gateway (requester) and a peer transit gateway (accepter). The transit gateways must be in different Regions. The peer transit gateway can be in your account or a different AWS account. After you create the peering attachment, the owner of the accepter transit gateway must accept the attachment request.
665 */
666 createTransitGatewayPeeringAttachment(params: EC2.Types.CreateTransitGatewayPeeringAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayPeeringAttachmentResult, AWSError>;
667 /**
668 * Requests a transit gateway peering attachment between the specified transit gateway (requester) and a peer transit gateway (accepter). The transit gateways must be in different Regions. The peer transit gateway can be in your account or a different AWS account. After you create the peering attachment, the owner of the accepter transit gateway must accept the attachment request.
669 */
670 createTransitGatewayPeeringAttachment(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayPeeringAttachmentResult, AWSError>;
671 /**
672 * Creates a static route for the specified transit gateway route table.
673 */
674 createTransitGatewayRoute(params: EC2.Types.CreateTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteResult) => void): Request<EC2.Types.CreateTransitGatewayRouteResult, AWSError>;
675 /**
676 * Creates a static route for the specified transit gateway route table.
677 */
678 createTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteResult) => void): Request<EC2.Types.CreateTransitGatewayRouteResult, AWSError>;
679 /**
680 * Creates a route table for the specified transit gateway.
681 */
682 createTransitGatewayRouteTable(params: EC2.Types.CreateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteTableResult) => void): Request<EC2.Types.CreateTransitGatewayRouteTableResult, AWSError>;
683 /**
684 * Creates a route table for the specified transit gateway.
685 */
686 createTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteTableResult) => void): Request<EC2.Types.CreateTransitGatewayRouteTableResult, AWSError>;
687 /**
688 * 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.
689 */
690 createTransitGatewayVpcAttachment(params: EC2.Types.CreateTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayVpcAttachmentResult, AWSError>;
691 /**
692 * 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.
693 */
694 createTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayVpcAttachmentResult, AWSError>;
695 /**
696 * 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. Encrypted volumes must 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.
697 */
698 createVolume(params: EC2.Types.CreateVolumeRequest, callback?: (err: AWSError, data: EC2.Types.Volume) => void): Request<EC2.Types.Volume, AWSError>;
699 /**
700 * 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. Encrypted volumes must 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.
701 */
702 createVolume(callback?: (err: AWSError, data: EC2.Types.Volume) => void): Request<EC2.Types.Volume, AWSError>;
703 /**
704 * 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 IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). 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.
705 */
706 createVpc(params: EC2.Types.CreateVpcRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcResult) => void): Request<EC2.Types.CreateVpcResult, AWSError>;
707 /**
708 * 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 IPv6 CIDR block for the VPC. You can request an Amazon-provided IPv6 CIDR block from Amazon's pool of IPv6 addresses, or an IPv6 CIDR block from an IPv6 address pool that you provisioned through bring your own IP addresses (BYOIP). 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.
709 */
710 createVpc(callback?: (err: AWSError, data: EC2.Types.CreateVpcResult) => void): Request<EC2.Types.CreateVpcResult, AWSError>;
711 /**
712 * 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, which 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.
713 */
714 createVpcEndpoint(params: EC2.Types.CreateVpcEndpointRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointResult) => void): Request<EC2.Types.CreateVpcEndpointResult, AWSError>;
715 /**
716 * 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, which 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.
717 */
718 createVpcEndpoint(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointResult) => void): Request<EC2.Types.CreateVpcEndpointResult, AWSError>;
719 /**
720 * 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.
721 */
722 createVpcEndpointConnectionNotification(params: EC2.Types.CreateVpcEndpointConnectionNotificationRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.CreateVpcEndpointConnectionNotificationResult, AWSError>;
723 /**
724 * 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.
725 */
726 createVpcEndpointConnectionNotification(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.CreateVpcEndpointConnectionNotificationResult, AWSError>;
727 /**
728 * 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. If you set the private DNS name, you must prove that you own the private DNS domain name. For more information, see VPC Endpoint Service Private DNS Name Verification in the Amazon Virtual Private Cloud User Guide.
729 */
730 createVpcEndpointServiceConfiguration(params: EC2.Types.CreateVpcEndpointServiceConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.CreateVpcEndpointServiceConfigurationResult, AWSError>;
731 /**
732 * 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. If you set the private DNS name, you must prove that you own the private DNS domain name. For more information, see VPC Endpoint Service Private DNS Name Verification in the Amazon Virtual Private Cloud User Guide.
733 */
734 createVpcEndpointServiceConfiguration(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.CreateVpcEndpointServiceConfigurationResult, AWSError>;
735 /**
736 * 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.
737 */
738 createVpcPeeringConnection(params: EC2.Types.CreateVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcPeeringConnectionResult) => void): Request<EC2.Types.CreateVpcPeeringConnectionResult, AWSError>;
739 /**
740 * 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.
741 */
742 createVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.CreateVpcPeeringConnectionResult) => void): Request<EC2.Types.CreateVpcPeeringConnectionResult, AWSError>;
743 /**
744 * Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The 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.
745 */
746 createVpnConnection(params: EC2.Types.CreateVpnConnectionRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpnConnectionResult) => void): Request<EC2.Types.CreateVpnConnectionResult, AWSError>;
747 /**
748 * Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The 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.
749 */
750 createVpnConnection(callback?: (err: AWSError, data: EC2.Types.CreateVpnConnectionResult) => void): Request<EC2.Types.CreateVpnConnectionResult, AWSError>;
751 /**
752 * 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.
753 */
754 createVpnConnectionRoute(params: EC2.Types.CreateVpnConnectionRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
755 /**
756 * 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.
757 */
758 createVpnConnectionRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
759 /**
760 * 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.
761 */
762 createVpnGateway(params: EC2.Types.CreateVpnGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpnGatewayResult) => void): Request<EC2.Types.CreateVpnGatewayResult, AWSError>;
763 /**
764 * 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.
765 */
766 createVpnGateway(callback?: (err: AWSError, data: EC2.Types.CreateVpnGatewayResult) => void): Request<EC2.Types.CreateVpnGatewayResult, AWSError>;
767 /**
768 * Deletes the specified Client VPN endpoint. You must disassociate all target networks before you can delete a Client VPN endpoint.
769 */
770 deleteClientVpnEndpoint(params: EC2.Types.DeleteClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnEndpointResult) => void): Request<EC2.Types.DeleteClientVpnEndpointResult, AWSError>;
771 /**
772 * Deletes the specified Client VPN endpoint. You must disassociate all target networks before you can delete a Client VPN endpoint.
773 */
774 deleteClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnEndpointResult) => void): Request<EC2.Types.DeleteClientVpnEndpointResult, AWSError>;
775 /**
776 * 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.
777 */
778 deleteClientVpnRoute(params: EC2.Types.DeleteClientVpnRouteRequest, callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnRouteResult) => void): Request<EC2.Types.DeleteClientVpnRouteResult, AWSError>;
779 /**
780 * 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.
781 */
782 deleteClientVpnRoute(callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnRouteResult) => void): Request<EC2.Types.DeleteClientVpnRouteResult, AWSError>;
783 /**
784 * Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.
785 */
786 deleteCustomerGateway(params: EC2.Types.DeleteCustomerGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
787 /**
788 * Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.
789 */
790 deleteCustomerGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
791 /**
792 * 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.
793 */
794 deleteDhcpOptions(params: EC2.Types.DeleteDhcpOptionsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
795 /**
796 * 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.
797 */
798 deleteDhcpOptions(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
799 /**
800 * Deletes an egress-only internet gateway.
801 */
802 deleteEgressOnlyInternetGateway(params: EC2.Types.DeleteEgressOnlyInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.DeleteEgressOnlyInternetGatewayResult, AWSError>;
803 /**
804 * Deletes an egress-only internet gateway.
805 */
806 deleteEgressOnlyInternetGateway(callback?: (err: AWSError, data: EC2.Types.DeleteEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.DeleteEgressOnlyInternetGatewayResult, AWSError>;
807 /**
808 * 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.
809 */
810 deleteFleets(params: EC2.Types.DeleteFleetsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFleetsResult) => void): Request<EC2.Types.DeleteFleetsResult, AWSError>;
811 /**
812 * 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.
813 */
814 deleteFleets(callback?: (err: AWSError, data: EC2.Types.DeleteFleetsResult) => void): Request<EC2.Types.DeleteFleetsResult, AWSError>;
815 /**
816 * Deletes one or more flow logs.
817 */
818 deleteFlowLogs(params: EC2.Types.DeleteFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFlowLogsResult) => void): Request<EC2.Types.DeleteFlowLogsResult, AWSError>;
819 /**
820 * Deletes one or more flow logs.
821 */
822 deleteFlowLogs(callback?: (err: AWSError, data: EC2.Types.DeleteFlowLogsResult) => void): Request<EC2.Types.DeleteFlowLogsResult, AWSError>;
823 /**
824 * Deletes the specified Amazon FPGA Image (AFI).
825 */
826 deleteFpgaImage(params: EC2.Types.DeleteFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFpgaImageResult) => void): Request<EC2.Types.DeleteFpgaImageResult, AWSError>;
827 /**
828 * Deletes the specified Amazon FPGA Image (AFI).
829 */
830 deleteFpgaImage(callback?: (err: AWSError, data: EC2.Types.DeleteFpgaImageResult) => void): Request<EC2.Types.DeleteFpgaImageResult, AWSError>;
831 /**
832 * Deletes the specified internet gateway. You must detach the internet gateway from the VPC before you can delete it.
833 */
834 deleteInternetGateway(params: EC2.Types.DeleteInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
835 /**
836 * Deletes the specified internet gateway. You must detach the internet gateway from the VPC before you can delete it.
837 */
838 deleteInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
839 /**
840 * Deletes the specified key pair, by removing the public key from Amazon EC2.
841 */
842 deleteKeyPair(params: EC2.Types.DeleteKeyPairRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
843 /**
844 * Deletes the specified key pair, by removing the public key from Amazon EC2.
845 */
846 deleteKeyPair(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
847 /**
848 * Deletes a launch template. Deleting a launch template deletes all of its versions.
849 */
850 deleteLaunchTemplate(params: EC2.Types.DeleteLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateResult) => void): Request<EC2.Types.DeleteLaunchTemplateResult, AWSError>;
851 /**
852 * Deletes a launch template. Deleting a launch template deletes all of its versions.
853 */
854 deleteLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateResult) => void): Request<EC2.Types.DeleteLaunchTemplateResult, AWSError>;
855 /**
856 * 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.
857 */
858 deleteLaunchTemplateVersions(params: EC2.Types.DeleteLaunchTemplateVersionsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateVersionsResult) => void): Request<EC2.Types.DeleteLaunchTemplateVersionsResult, AWSError>;
859 /**
860 * 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.
861 */
862 deleteLaunchTemplateVersions(callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateVersionsResult) => void): Request<EC2.Types.DeleteLaunchTemplateVersionsResult, AWSError>;
863 /**
864 * Deletes the specified route from the specified local gateway route table.
865 */
866 deleteLocalGatewayRoute(params: EC2.Types.DeleteLocalGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLocalGatewayRouteResult) => void): Request<EC2.Types.DeleteLocalGatewayRouteResult, AWSError>;
867 /**
868 * Deletes the specified route from the specified local gateway route table.
869 */
870 deleteLocalGatewayRoute(callback?: (err: AWSError, data: EC2.Types.DeleteLocalGatewayRouteResult) => void): Request<EC2.Types.DeleteLocalGatewayRouteResult, AWSError>;
871 /**
872 * Deletes the specified association between a VPC and local gateway route table.
873 */
874 deleteLocalGatewayRouteTableVpcAssociation(params: EC2.Types.DeleteLocalGatewayRouteTableVpcAssociationRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLocalGatewayRouteTableVpcAssociationResult) => void): Request<EC2.Types.DeleteLocalGatewayRouteTableVpcAssociationResult, AWSError>;
875 /**
876 * Deletes the specified association between a VPC and local gateway route table.
877 */
878 deleteLocalGatewayRouteTableVpcAssociation(callback?: (err: AWSError, data: EC2.Types.DeleteLocalGatewayRouteTableVpcAssociationResult) => void): Request<EC2.Types.DeleteLocalGatewayRouteTableVpcAssociationResult, AWSError>;
879 /**
880 * 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.
881 */
882 deleteNatGateway(params: EC2.Types.DeleteNatGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteNatGatewayResult) => void): Request<EC2.Types.DeleteNatGatewayResult, AWSError>;
883 /**
884 * 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.
885 */
886 deleteNatGateway(callback?: (err: AWSError, data: EC2.Types.DeleteNatGatewayResult) => void): Request<EC2.Types.DeleteNatGatewayResult, AWSError>;
887 /**
888 * 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.
889 */
890 deleteNetworkAcl(params: EC2.Types.DeleteNetworkAclRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
891 /**
892 * 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.
893 */
894 deleteNetworkAcl(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
895 /**
896 * Deletes the specified ingress or egress entry (rule) from the specified network ACL.
897 */
898 deleteNetworkAclEntry(params: EC2.Types.DeleteNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
899 /**
900 * Deletes the specified ingress or egress entry (rule) from the specified network ACL.
901 */
902 deleteNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
903 /**
904 * Deletes the specified network interface. You must detach the network interface before you can delete it.
905 */
906 deleteNetworkInterface(params: EC2.Types.DeleteNetworkInterfaceRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
907 /**
908 * Deletes the specified network interface. You must detach the network interface before you can delete it.
909 */
910 deleteNetworkInterface(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
911 /**
912 * 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.
913 */
914 deleteNetworkInterfacePermission(params: EC2.Types.DeleteNetworkInterfacePermissionRequest, callback?: (err: AWSError, data: EC2.Types.DeleteNetworkInterfacePermissionResult) => void): Request<EC2.Types.DeleteNetworkInterfacePermissionResult, AWSError>;
915 /**
916 * 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.
917 */
918 deleteNetworkInterfacePermission(callback?: (err: AWSError, data: EC2.Types.DeleteNetworkInterfacePermissionResult) => void): Request<EC2.Types.DeleteNetworkInterfacePermissionResult, AWSError>;
919 /**
920 * 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.
921 */
922 deletePlacementGroup(params: EC2.Types.DeletePlacementGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
923 /**
924 * 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.
925 */
926 deletePlacementGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
927 /**
928 * Deletes the queued purchases for the specified Reserved Instances.
929 */
930 deleteQueuedReservedInstances(params: EC2.Types.DeleteQueuedReservedInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DeleteQueuedReservedInstancesResult) => void): Request<EC2.Types.DeleteQueuedReservedInstancesResult, AWSError>;
931 /**
932 * Deletes the queued purchases for the specified Reserved Instances.
933 */
934 deleteQueuedReservedInstances(callback?: (err: AWSError, data: EC2.Types.DeleteQueuedReservedInstancesResult) => void): Request<EC2.Types.DeleteQueuedReservedInstancesResult, AWSError>;
935 /**
936 * Deletes the specified route from the specified route table.
937 */
938 deleteRoute(params: EC2.Types.DeleteRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
939 /**
940 * Deletes the specified route from the specified route table.
941 */
942 deleteRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
943 /**
944 * 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.
945 */
946 deleteRouteTable(params: EC2.Types.DeleteRouteTableRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
947 /**
948 * 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.
949 */
950 deleteRouteTable(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
951 /**
952 * 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.
953 */
954 deleteSecurityGroup(params: EC2.Types.DeleteSecurityGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
955 /**
956 * 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.
957 */
958 deleteSecurityGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
959 /**
960 * 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.
961 */
962 deleteSnapshot(params: EC2.Types.DeleteSnapshotRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
963 /**
964 * 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.
965 */
966 deleteSnapshot(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
967 /**
968 * Deletes the data feed for Spot Instances.
969 */
970 deleteSpotDatafeedSubscription(params: EC2.Types.DeleteSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
971 /**
972 * Deletes the data feed for Spot Instances.
973 */
974 deleteSpotDatafeedSubscription(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
975 /**
976 * Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.
977 */
978 deleteSubnet(params: EC2.Types.DeleteSubnetRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
979 /**
980 * Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.
981 */
982 deleteSubnet(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
983 /**
984 * 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.
985 */
986 deleteTags(params: EC2.Types.DeleteTagsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
987 /**
988 * 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.
989 */
990 deleteTags(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
991 /**
992 * Deletes the specified Traffic Mirror filter. You cannot delete a Traffic Mirror filter that is in use by a Traffic Mirror session.
993 */
994 deleteTrafficMirrorFilter(params: EC2.Types.DeleteTrafficMirrorFilterRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorFilterResult) => void): Request<EC2.Types.DeleteTrafficMirrorFilterResult, AWSError>;
995 /**
996 * Deletes the specified Traffic Mirror filter. You cannot delete a Traffic Mirror filter that is in use by a Traffic Mirror session.
997 */
998 deleteTrafficMirrorFilter(callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorFilterResult) => void): Request<EC2.Types.DeleteTrafficMirrorFilterResult, AWSError>;
999 /**
1000 * Deletes the specified Traffic Mirror rule.
1001 */
1002 deleteTrafficMirrorFilterRule(params: EC2.Types.DeleteTrafficMirrorFilterRuleRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.DeleteTrafficMirrorFilterRuleResult, AWSError>;
1003 /**
1004 * Deletes the specified Traffic Mirror rule.
1005 */
1006 deleteTrafficMirrorFilterRule(callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.DeleteTrafficMirrorFilterRuleResult, AWSError>;
1007 /**
1008 * Deletes the specified Traffic Mirror session.
1009 */
1010 deleteTrafficMirrorSession(params: EC2.Types.DeleteTrafficMirrorSessionRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorSessionResult) => void): Request<EC2.Types.DeleteTrafficMirrorSessionResult, AWSError>;
1011 /**
1012 * Deletes the specified Traffic Mirror session.
1013 */
1014 deleteTrafficMirrorSession(callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorSessionResult) => void): Request<EC2.Types.DeleteTrafficMirrorSessionResult, AWSError>;
1015 /**
1016 * Deletes the specified Traffic Mirror target. You cannot delete a Traffic Mirror target that is in use by a Traffic Mirror session.
1017 */
1018 deleteTrafficMirrorTarget(params: EC2.Types.DeleteTrafficMirrorTargetRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorTargetResult) => void): Request<EC2.Types.DeleteTrafficMirrorTargetResult, AWSError>;
1019 /**
1020 * Deletes the specified Traffic Mirror target. You cannot delete a Traffic Mirror target that is in use by a Traffic Mirror session.
1021 */
1022 deleteTrafficMirrorTarget(callback?: (err: AWSError, data: EC2.Types.DeleteTrafficMirrorTargetResult) => void): Request<EC2.Types.DeleteTrafficMirrorTargetResult, AWSError>;
1023 /**
1024 * Deletes the specified transit gateway.
1025 */
1026 deleteTransitGateway(params: EC2.Types.DeleteTransitGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayResult) => void): Request<EC2.Types.DeleteTransitGatewayResult, AWSError>;
1027 /**
1028 * Deletes the specified transit gateway.
1029 */
1030 deleteTransitGateway(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayResult) => void): Request<EC2.Types.DeleteTransitGatewayResult, AWSError>;
1031 /**
1032 * Deletes the specified transit gateway multicast domain.
1033 */
1034 deleteTransitGatewayMulticastDomain(params: EC2.Types.DeleteTransitGatewayMulticastDomainRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.DeleteTransitGatewayMulticastDomainResult, AWSError>;
1035 /**
1036 * Deletes the specified transit gateway multicast domain.
1037 */
1038 deleteTransitGatewayMulticastDomain(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.DeleteTransitGatewayMulticastDomainResult, AWSError>;
1039 /**
1040 * Deletes a transit gateway peering attachment.
1041 */
1042 deleteTransitGatewayPeeringAttachment(params: EC2.Types.DeleteTransitGatewayPeeringAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayPeeringAttachmentResult, AWSError>;
1043 /**
1044 * Deletes a transit gateway peering attachment.
1045 */
1046 deleteTransitGatewayPeeringAttachment(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayPeeringAttachmentResult, AWSError>;
1047 /**
1048 * Deletes the specified route from the specified transit gateway route table.
1049 */
1050 deleteTransitGatewayRoute(params: EC2.Types.DeleteTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteResult, AWSError>;
1051 /**
1052 * Deletes the specified route from the specified transit gateway route table.
1053 */
1054 deleteTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteResult, AWSError>;
1055 /**
1056 * Deletes the specified transit gateway route table. You must disassociate the route table from any transit gateway route tables before you can delete it.
1057 */
1058 deleteTransitGatewayRouteTable(params: EC2.Types.DeleteTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteTableResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteTableResult, AWSError>;
1059 /**
1060 * Deletes the specified transit gateway route table. You must disassociate the route table from any transit gateway route tables before you can delete it.
1061 */
1062 deleteTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteTableResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteTableResult, AWSError>;
1063 /**
1064 * Deletes the specified VPC attachment.
1065 */
1066 deleteTransitGatewayVpcAttachment(params: EC2.Types.DeleteTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayVpcAttachmentResult, AWSError>;
1067 /**
1068 * Deletes the specified VPC attachment.
1069 */
1070 deleteTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayVpcAttachmentResult, AWSError>;
1071 /**
1072 * 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.
1073 */
1074 deleteVolume(params: EC2.Types.DeleteVolumeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1075 /**
1076 * 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.
1077 */
1078 deleteVolume(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1079 /**
1080 * 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.
1081 */
1082 deleteVpc(params: EC2.Types.DeleteVpcRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1083 /**
1084 * 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.
1085 */
1086 deleteVpc(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1087 /**
1088 * Deletes one or more VPC endpoint connection notifications.
1089 */
1090 deleteVpcEndpointConnectionNotifications(params: EC2.Types.DeleteVpcEndpointConnectionNotificationsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DeleteVpcEndpointConnectionNotificationsResult, AWSError>;
1091 /**
1092 * Deletes one or more VPC endpoint connection notifications.
1093 */
1094 deleteVpcEndpointConnectionNotifications(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DeleteVpcEndpointConnectionNotificationsResult, AWSError>;
1095 /**
1096 * 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.
1097 */
1098 deleteVpcEndpointServiceConfigurations(params: EC2.Types.DeleteVpcEndpointServiceConfigurationsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DeleteVpcEndpointServiceConfigurationsResult, AWSError>;
1099 /**
1100 * 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.
1101 */
1102 deleteVpcEndpointServiceConfigurations(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DeleteVpcEndpointServiceConfigurationsResult, AWSError>;
1103 /**
1104 * 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.
1105 */
1106 deleteVpcEndpoints(params: EC2.Types.DeleteVpcEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointsResult) => void): Request<EC2.Types.DeleteVpcEndpointsResult, AWSError>;
1107 /**
1108 * 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.
1109 */
1110 deleteVpcEndpoints(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointsResult) => void): Request<EC2.Types.DeleteVpcEndpointsResult, AWSError>;
1111 /**
1112 * 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.
1113 */
1114 deleteVpcPeeringConnection(params: EC2.Types.DeleteVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcPeeringConnectionResult) => void): Request<EC2.Types.DeleteVpcPeeringConnectionResult, AWSError>;
1115 /**
1116 * 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.
1117 */
1118 deleteVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.DeleteVpcPeeringConnectionResult) => void): Request<EC2.Types.DeleteVpcPeeringConnectionResult, AWSError>;
1119 /**
1120 * 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.
1121 */
1122 deleteVpnConnection(params: EC2.Types.DeleteVpnConnectionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1123 /**
1124 * 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.
1125 */
1126 deleteVpnConnection(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1127 /**
1128 * 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.
1129 */
1130 deleteVpnConnectionRoute(params: EC2.Types.DeleteVpnConnectionRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1131 /**
1132 * 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.
1133 */
1134 deleteVpnConnectionRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1135 /**
1136 * Deletes the specified virtual private gateway. You must first detach the virtual private gateway from the VPC. 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.
1137 */
1138 deleteVpnGateway(params: EC2.Types.DeleteVpnGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1139 /**
1140 * Deletes the specified virtual private gateway. You must first detach the virtual private gateway from the VPC. 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.
1141 */
1142 deleteVpnGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1143 /**
1144 * 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.
1145 */
1146 deprovisionByoipCidr(params: EC2.Types.DeprovisionByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.DeprovisionByoipCidrResult) => void): Request<EC2.Types.DeprovisionByoipCidrResult, AWSError>;
1147 /**
1148 * 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.
1149 */
1150 deprovisionByoipCidr(callback?: (err: AWSError, data: EC2.Types.DeprovisionByoipCidrResult) => void): Request<EC2.Types.DeprovisionByoipCidrResult, AWSError>;
1151 /**
1152 * 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.
1153 */
1154 deregisterImage(params: EC2.Types.DeregisterImageRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1155 /**
1156 * 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.
1157 */
1158 deregisterImage(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1159 /**
1160 * Deregisters the specified members (network interfaces) from the transit gateway multicast group.
1161 */
1162 deregisterTransitGatewayMulticastGroupMembers(params: EC2.Types.DeregisterTransitGatewayMulticastGroupMembersRequest, callback?: (err: AWSError, data: EC2.Types.DeregisterTransitGatewayMulticastGroupMembersResult) => void): Request<EC2.Types.DeregisterTransitGatewayMulticastGroupMembersResult, AWSError>;
1163 /**
1164 * Deregisters the specified members (network interfaces) from the transit gateway multicast group.
1165 */
1166 deregisterTransitGatewayMulticastGroupMembers(callback?: (err: AWSError, data: EC2.Types.DeregisterTransitGatewayMulticastGroupMembersResult) => void): Request<EC2.Types.DeregisterTransitGatewayMulticastGroupMembersResult, AWSError>;
1167 /**
1168 * Deregisters the specified sources (network interfaces) from the transit gateway multicast group.
1169 */
1170 deregisterTransitGatewayMulticastGroupSources(params: EC2.Types.DeregisterTransitGatewayMulticastGroupSourcesRequest, callback?: (err: AWSError, data: EC2.Types.DeregisterTransitGatewayMulticastGroupSourcesResult) => void): Request<EC2.Types.DeregisterTransitGatewayMulticastGroupSourcesResult, AWSError>;
1171 /**
1172 * Deregisters the specified sources (network interfaces) from the transit gateway multicast group.
1173 */
1174 deregisterTransitGatewayMulticastGroupSources(callback?: (err: AWSError, data: EC2.Types.DeregisterTransitGatewayMulticastGroupSourcesResult) => void): Request<EC2.Types.DeregisterTransitGatewayMulticastGroupSourcesResult, AWSError>;
1175 /**
1176 * 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: This attribute is no longer supported. The returned value does not reflect your actual vCPU limit for running On-Demand Instances. For more information, see On-Demand Instance Limits in the Amazon Elastic Compute Cloud User Guide. 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.
1177 */
1178 describeAccountAttributes(params: EC2.Types.DescribeAccountAttributesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAccountAttributesResult) => void): Request<EC2.Types.DescribeAccountAttributesResult, AWSError>;
1179 /**
1180 * 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: This attribute is no longer supported. The returned value does not reflect your actual vCPU limit for running On-Demand Instances. For more information, see On-Demand Instance Limits in the Amazon Elastic Compute Cloud User Guide. 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.
1181 */
1182 describeAccountAttributes(callback?: (err: AWSError, data: EC2.Types.DescribeAccountAttributesResult) => void): Request<EC2.Types.DescribeAccountAttributesResult, AWSError>;
1183 /**
1184 * Describes the specified Elastic IP addresses or all 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.
1185 */
1186 describeAddresses(params: EC2.Types.DescribeAddressesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAddressesResult) => void): Request<EC2.Types.DescribeAddressesResult, AWSError>;
1187 /**
1188 * Describes the specified Elastic IP addresses or all 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.
1189 */
1190 describeAddresses(callback?: (err: AWSError, data: EC2.Types.DescribeAddressesResult) => void): Request<EC2.Types.DescribeAddressesResult, AWSError>;
1191 /**
1192 * 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.
1193 */
1194 describeAggregateIdFormat(params: EC2.Types.DescribeAggregateIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAggregateIdFormatResult) => void): Request<EC2.Types.DescribeAggregateIdFormatResult, AWSError>;
1195 /**
1196 * 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.
1197 */
1198 describeAggregateIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeAggregateIdFormatResult) => void): Request<EC2.Types.DescribeAggregateIdFormatResult, AWSError>;
1199 /**
1200 * Describes the Availability Zones and Local Zones that are available to you. If there is an event impacting an Availability Zone or Local Zone, you can use this request to view the state and any provided messages for that Availability Zone or Local Zone. For more information about Availability Zones and Local Zones, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.
1201 */
1202 describeAvailabilityZones(params: EC2.Types.DescribeAvailabilityZonesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAvailabilityZonesResult) => void): Request<EC2.Types.DescribeAvailabilityZonesResult, AWSError>;
1203 /**
1204 * Describes the Availability Zones and Local Zones that are available to you. If there is an event impacting an Availability Zone or Local Zone, you can use this request to view the state and any provided messages for that Availability Zone or Local Zone. For more information about Availability Zones and Local Zones, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.
1205 */
1206 describeAvailabilityZones(callback?: (err: AWSError, data: EC2.Types.DescribeAvailabilityZonesResult) => void): Request<EC2.Types.DescribeAvailabilityZonesResult, AWSError>;
1207 /**
1208 * Describes the specified bundle tasks or all of your bundle 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.
1209 */
1210 describeBundleTasks(params: EC2.Types.DescribeBundleTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
1211 /**
1212 * Describes the specified bundle tasks or all of your bundle 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.
1213 */
1214 describeBundleTasks(callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
1215 /**
1216 * 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 or DescribeIpv6Pools.
1217 */
1218 describeByoipCidrs(params: EC2.Types.DescribeByoipCidrsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeByoipCidrsResult) => void): Request<EC2.Types.DescribeByoipCidrsResult, AWSError>;
1219 /**
1220 * 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 or DescribeIpv6Pools.
1221 */
1222 describeByoipCidrs(callback?: (err: AWSError, data: EC2.Types.DescribeByoipCidrsResult) => void): Request<EC2.Types.DescribeByoipCidrsResult, AWSError>;
1223 /**
1224 * Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the AWS Region that you're currently using.
1225 */
1226 describeCapacityReservations(params: EC2.Types.DescribeCapacityReservationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeCapacityReservationsResult) => void): Request<EC2.Types.DescribeCapacityReservationsResult, AWSError>;
1227 /**
1228 * Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the AWS Region that you're currently using.
1229 */
1230 describeCapacityReservations(callback?: (err: AWSError, data: EC2.Types.DescribeCapacityReservationsResult) => void): Request<EC2.Types.DescribeCapacityReservationsResult, AWSError>;
1231 /**
1232 * 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.
1233 */
1234 describeClassicLinkInstances(params: EC2.Types.DescribeClassicLinkInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClassicLinkInstancesResult) => void): Request<EC2.Types.DescribeClassicLinkInstancesResult, AWSError>;
1235 /**
1236 * 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.
1237 */
1238 describeClassicLinkInstances(callback?: (err: AWSError, data: EC2.Types.DescribeClassicLinkInstancesResult) => void): Request<EC2.Types.DescribeClassicLinkInstancesResult, AWSError>;
1239 /**
1240 * Describes the authorization rules for a specified Client VPN endpoint.
1241 */
1242 describeClientVpnAuthorizationRules(params: EC2.Types.DescribeClientVpnAuthorizationRulesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnAuthorizationRulesResult) => void): Request<EC2.Types.DescribeClientVpnAuthorizationRulesResult, AWSError>;
1243 /**
1244 * Describes the authorization rules for a specified Client VPN endpoint.
1245 */
1246 describeClientVpnAuthorizationRules(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnAuthorizationRulesResult) => void): Request<EC2.Types.DescribeClientVpnAuthorizationRulesResult, AWSError>;
1247 /**
1248 * Describes active client connections and connections that have been terminated within the last 60 minutes for the specified Client VPN endpoint.
1249 */
1250 describeClientVpnConnections(params: EC2.Types.DescribeClientVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnConnectionsResult) => void): Request<EC2.Types.DescribeClientVpnConnectionsResult, AWSError>;
1251 /**
1252 * Describes active client connections and connections that have been terminated within the last 60 minutes for the specified Client VPN endpoint.
1253 */
1254 describeClientVpnConnections(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnConnectionsResult) => void): Request<EC2.Types.DescribeClientVpnConnectionsResult, AWSError>;
1255 /**
1256 * Describes one or more Client VPN endpoints in the account.
1257 */
1258 describeClientVpnEndpoints(params: EC2.Types.DescribeClientVpnEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnEndpointsResult) => void): Request<EC2.Types.DescribeClientVpnEndpointsResult, AWSError>;
1259 /**
1260 * Describes one or more Client VPN endpoints in the account.
1261 */
1262 describeClientVpnEndpoints(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnEndpointsResult) => void): Request<EC2.Types.DescribeClientVpnEndpointsResult, AWSError>;
1263 /**
1264 * Describes the routes for the specified Client VPN endpoint.
1265 */
1266 describeClientVpnRoutes(params: EC2.Types.DescribeClientVpnRoutesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnRoutesResult) => void): Request<EC2.Types.DescribeClientVpnRoutesResult, AWSError>;
1267 /**
1268 * Describes the routes for the specified Client VPN endpoint.
1269 */
1270 describeClientVpnRoutes(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnRoutesResult) => void): Request<EC2.Types.DescribeClientVpnRoutesResult, AWSError>;
1271 /**
1272 * Describes the target networks associated with the specified Client VPN endpoint.
1273 */
1274 describeClientVpnTargetNetworks(params: EC2.Types.DescribeClientVpnTargetNetworksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnTargetNetworksResult) => void): Request<EC2.Types.DescribeClientVpnTargetNetworksResult, AWSError>;
1275 /**
1276 * Describes the target networks associated with the specified Client VPN endpoint.
1277 */
1278 describeClientVpnTargetNetworks(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnTargetNetworksResult) => void): Request<EC2.Types.DescribeClientVpnTargetNetworksResult, AWSError>;
1279 /**
1280 * Describes the specified customer-owned address pools or all of your customer-owned address pools.
1281 */
1282 describeCoipPools(params: EC2.Types.DescribeCoipPoolsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeCoipPoolsResult) => void): Request<EC2.Types.DescribeCoipPoolsResult, AWSError>;
1283 /**
1284 * Describes the specified customer-owned address pools or all of your customer-owned address pools.
1285 */
1286 describeCoipPools(callback?: (err: AWSError, data: EC2.Types.DescribeCoipPoolsResult) => void): Request<EC2.Types.DescribeCoipPoolsResult, AWSError>;
1287 /**
1288 * Describes the specified conversion tasks or all 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.
1289 */
1290 describeConversionTasks(params: EC2.Types.DescribeConversionTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
1291 /**
1292 * Describes the specified conversion tasks or all 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.
1293 */
1294 describeConversionTasks(callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
1295 /**
1296 * 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.
1297 */
1298 describeCustomerGateways(params: EC2.Types.DescribeCustomerGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
1299 /**
1300 * 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.
1301 */
1302 describeCustomerGateways(callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
1303 /**
1304 * Describes one or more of your DHCP options sets. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
1305 */
1306 describeDhcpOptions(params: EC2.Types.DescribeDhcpOptionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeDhcpOptionsResult) => void): Request<EC2.Types.DescribeDhcpOptionsResult, AWSError>;
1307 /**
1308 * Describes one or more of your DHCP options sets. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
1309 */
1310 describeDhcpOptions(callback?: (err: AWSError, data: EC2.Types.DescribeDhcpOptionsResult) => void): Request<EC2.Types.DescribeDhcpOptionsResult, AWSError>;
1311 /**
1312 * Describes one or more of your egress-only internet gateways.
1313 */
1314 describeEgressOnlyInternetGateways(params: EC2.Types.DescribeEgressOnlyInternetGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeEgressOnlyInternetGatewaysResult) => void): Request<EC2.Types.DescribeEgressOnlyInternetGatewaysResult, AWSError>;
1315 /**
1316 * Describes one or more of your egress-only internet gateways.
1317 */
1318 describeEgressOnlyInternetGateways(callback?: (err: AWSError, data: EC2.Types.DescribeEgressOnlyInternetGatewaysResult) => void): Request<EC2.Types.DescribeEgressOnlyInternetGatewaysResult, AWSError>;
1319 /**
1320 * Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.
1321 */
1322 describeElasticGpus(params: EC2.Types.DescribeElasticGpusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeElasticGpusResult) => void): Request<EC2.Types.DescribeElasticGpusResult, AWSError>;
1323 /**
1324 * Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.
1325 */
1326 describeElasticGpus(callback?: (err: AWSError, data: EC2.Types.DescribeElasticGpusResult) => void): Request<EC2.Types.DescribeElasticGpusResult, AWSError>;
1327 /**
1328 * Describes the specified export image tasks or all your export image tasks.
1329 */
1330 describeExportImageTasks(params: EC2.Types.DescribeExportImageTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeExportImageTasksResult) => void): Request<EC2.Types.DescribeExportImageTasksResult, AWSError>;
1331 /**
1332 * Describes the specified export image tasks or all your export image tasks.
1333 */
1334 describeExportImageTasks(callback?: (err: AWSError, data: EC2.Types.DescribeExportImageTasksResult) => void): Request<EC2.Types.DescribeExportImageTasksResult, AWSError>;
1335 /**
1336 * Describes the specified export instance tasks or all your export instance tasks.
1337 */
1338 describeExportTasks(params: EC2.Types.DescribeExportTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
1339 /**
1340 * Describes the specified export instance tasks or all your export instance tasks.
1341 */
1342 describeExportTasks(callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
1343 /**
1344 * Describes the state of fast snapshot restores for your snapshots.
1345 */
1346 describeFastSnapshotRestores(params: EC2.Types.DescribeFastSnapshotRestoresRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFastSnapshotRestoresResult) => void): Request<EC2.Types.DescribeFastSnapshotRestoresResult, AWSError>;
1347 /**
1348 * Describes the state of fast snapshot restores for your snapshots.
1349 */
1350 describeFastSnapshotRestores(callback?: (err: AWSError, data: EC2.Types.DescribeFastSnapshotRestoresResult) => void): Request<EC2.Types.DescribeFastSnapshotRestoresResult, AWSError>;
1351 /**
1352 * Describes the events for the specified EC2 Fleet during the specified time. EC2 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. EC2 Fleet events are available for 48 hours.
1353 */
1354 describeFleetHistory(params: EC2.Types.DescribeFleetHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetHistoryResult) => void): Request<EC2.Types.DescribeFleetHistoryResult, AWSError>;
1355 /**
1356 * Describes the events for the specified EC2 Fleet during the specified time. EC2 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. EC2 Fleet events are available for 48 hours.
1357 */
1358 describeFleetHistory(callback?: (err: AWSError, data: EC2.Types.DescribeFleetHistoryResult) => void): Request<EC2.Types.DescribeFleetHistoryResult, AWSError>;
1359 /**
1360 * Describes the running instances for the specified EC2 Fleet.
1361 */
1362 describeFleetInstances(params: EC2.Types.DescribeFleetInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetInstancesResult) => void): Request<EC2.Types.DescribeFleetInstancesResult, AWSError>;
1363 /**
1364 * Describes the running instances for the specified EC2 Fleet.
1365 */
1366 describeFleetInstances(callback?: (err: AWSError, data: EC2.Types.DescribeFleetInstancesResult) => void): Request<EC2.Types.DescribeFleetInstancesResult, AWSError>;
1367 /**
1368 * Describes the specified EC2 Fleets or all of your EC2 Fleets.
1369 */
1370 describeFleets(params: EC2.Types.DescribeFleetsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetsResult) => void): Request<EC2.Types.DescribeFleetsResult, AWSError>;
1371 /**
1372 * Describes the specified EC2 Fleets or all of your EC2 Fleets.
1373 */
1374 describeFleets(callback?: (err: AWSError, data: EC2.Types.DescribeFleetsResult) => void): Request<EC2.Types.DescribeFleetsResult, AWSError>;
1375 /**
1376 * 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.
1377 */
1378 describeFlowLogs(params: EC2.Types.DescribeFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFlowLogsResult) => void): Request<EC2.Types.DescribeFlowLogsResult, AWSError>;
1379 /**
1380 * 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.
1381 */
1382 describeFlowLogs(callback?: (err: AWSError, data: EC2.Types.DescribeFlowLogsResult) => void): Request<EC2.Types.DescribeFlowLogsResult, AWSError>;
1383 /**
1384 * Describes the specified attribute of the specified Amazon FPGA Image (AFI).
1385 */
1386 describeFpgaImageAttribute(params: EC2.Types.DescribeFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImageAttributeResult) => void): Request<EC2.Types.DescribeFpgaImageAttributeResult, AWSError>;
1387 /**
1388 * Describes the specified attribute of the specified Amazon FPGA Image (AFI).
1389 */
1390 describeFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImageAttributeResult) => void): Request<EC2.Types.DescribeFpgaImageAttributeResult, AWSError>;
1391 /**
1392 * Describes the Amazon FPGA Images (AFIs) available to you. These include public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for which you have load permissions.
1393 */
1394 describeFpgaImages(params: EC2.Types.DescribeFpgaImagesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImagesResult) => void): Request<EC2.Types.DescribeFpgaImagesResult, AWSError>;
1395 /**
1396 * Describes the Amazon FPGA Images (AFIs) available to you. These include public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for which you have load permissions.
1397 */
1398 describeFpgaImages(callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImagesResult) => void): Request<EC2.Types.DescribeFpgaImagesResult, AWSError>;
1399 /**
1400 * Describes the Dedicated Host reservations that are available to purchase. The results describe all of the Dedicated Host reservation offerings, including offerings that might 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.
1401 */
1402 describeHostReservationOfferings(params: EC2.Types.DescribeHostReservationOfferingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationOfferingsResult) => void): Request<EC2.Types.DescribeHostReservationOfferingsResult, AWSError>;
1403 /**
1404 * Describes the Dedicated Host reservations that are available to purchase. The results describe all of the Dedicated Host reservation offerings, including offerings that might 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.
1405 */
1406 describeHostReservationOfferings(callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationOfferingsResult) => void): Request<EC2.Types.DescribeHostReservationOfferingsResult, AWSError>;
1407 /**
1408 * Describes reservations that are associated with Dedicated Hosts in your account.
1409 */
1410 describeHostReservations(params: EC2.Types.DescribeHostReservationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationsResult) => void): Request<EC2.Types.DescribeHostReservationsResult, AWSError>;
1411 /**
1412 * Describes reservations that are associated with Dedicated Hosts in your account.
1413 */
1414 describeHostReservations(callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationsResult) => void): Request<EC2.Types.DescribeHostReservationsResult, AWSError>;
1415 /**
1416 * Describes the specified Dedicated Hosts or all 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.
1417 */
1418 describeHosts(params: EC2.Types.DescribeHostsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostsResult) => void): Request<EC2.Types.DescribeHostsResult, AWSError>;
1419 /**
1420 * Describes the specified Dedicated Hosts or all 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.
1421 */
1422 describeHosts(callback?: (err: AWSError, data: EC2.Types.DescribeHostsResult) => void): Request<EC2.Types.DescribeHostsResult, AWSError>;
1423 /**
1424 * Describes your IAM instance profile associations.
1425 */
1426 describeIamInstanceProfileAssociations(params: EC2.Types.DescribeIamInstanceProfileAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIamInstanceProfileAssociationsResult) => void): Request<EC2.Types.DescribeIamInstanceProfileAssociationsResult, AWSError>;
1427 /**
1428 * Describes your IAM instance profile associations.
1429 */
1430 describeIamInstanceProfileAssociations(callback?: (err: AWSError, data: EC2.Types.DescribeIamInstanceProfileAssociationsResult) => void): Request<EC2.Types.DescribeIamInstanceProfileAssociationsResult, AWSError>;
1431 /**
1432 * 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.
1433 */
1434 describeIdFormat(params: EC2.Types.DescribeIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIdFormatResult) => void): Request<EC2.Types.DescribeIdFormatResult, AWSError>;
1435 /**
1436 * 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.
1437 */
1438 describeIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeIdFormatResult) => void): Request<EC2.Types.DescribeIdFormatResult, AWSError>;
1439 /**
1440 * 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.
1441 */
1442 describeIdentityIdFormat(params: EC2.Types.DescribeIdentityIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIdentityIdFormatResult) => void): Request<EC2.Types.DescribeIdentityIdFormatResult, AWSError>;
1443 /**
1444 * 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.
1445 */
1446 describeIdentityIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeIdentityIdFormatResult) => void): Request<EC2.Types.DescribeIdentityIdFormatResult, AWSError>;
1447 /**
1448 * Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.
1449 */
1450 describeImageAttribute(params: EC2.Types.DescribeImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ImageAttribute) => void): Request<EC2.Types.ImageAttribute, AWSError>;
1451 /**
1452 * Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.
1453 */
1454 describeImageAttribute(callback?: (err: AWSError, data: EC2.Types.ImageAttribute) => void): Request<EC2.Types.ImageAttribute, AWSError>;
1455 /**
1456 * Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the images available to you. The images available to you include public images, private images that you own, and private images owned by other AWS accounts for which you have explicit launch permissions. Recently deregistered images appear in the returned results for a short interval and then return empty results. After all instances that reference a deregistered AMI are terminated, specifying the ID of the image results in an error indicating that the AMI ID cannot be found.
1457 */
1458 describeImages(params: EC2.Types.DescribeImagesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
1459 /**
1460 * Describes the specified images (AMIs, AKIs, and ARIs) available to you or all of the images available to you. The images available to you include public images, private images that you own, and private images owned by other AWS accounts for which you have explicit launch permissions. Recently deregistered images appear in the returned results for a short interval and then return empty results. After all instances that reference a deregistered AMI are terminated, specifying the ID of the image results in an error indicating that the AMI ID cannot be found.
1461 */
1462 describeImages(callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
1463 /**
1464 * Displays details about an import virtual machine or import snapshot tasks that are already created.
1465 */
1466 describeImportImageTasks(params: EC2.Types.DescribeImportImageTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImportImageTasksResult) => void): Request<EC2.Types.DescribeImportImageTasksResult, AWSError>;
1467 /**
1468 * Displays details about an import virtual machine or import snapshot tasks that are already created.
1469 */
1470 describeImportImageTasks(callback?: (err: AWSError, data: EC2.Types.DescribeImportImageTasksResult) => void): Request<EC2.Types.DescribeImportImageTasksResult, AWSError>;
1471 /**
1472 * Describes your import snapshot tasks.
1473 */
1474 describeImportSnapshotTasks(params: EC2.Types.DescribeImportSnapshotTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImportSnapshotTasksResult) => void): Request<EC2.Types.DescribeImportSnapshotTasksResult, AWSError>;
1475 /**
1476 * Describes your import snapshot tasks.
1477 */
1478 describeImportSnapshotTasks(callback?: (err: AWSError, data: EC2.Types.DescribeImportSnapshotTasksResult) => void): Request<EC2.Types.DescribeImportSnapshotTasksResult, AWSError>;
1479 /**
1480 * 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
1481 */
1482 describeInstanceAttribute(params: EC2.Types.DescribeInstanceAttributeRequest, callback?: (err: AWSError, data: EC2.Types.InstanceAttribute) => void): Request<EC2.Types.InstanceAttribute, AWSError>;
1483 /**
1484 * 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
1485 */
1486 describeInstanceAttribute(callback?: (err: AWSError, data: EC2.Types.InstanceAttribute) => void): Request<EC2.Types.InstanceAttribute, AWSError>;
1487 /**
1488 * Describes the credit option for CPU usage of the specified burstable performance instances. The credit options are standard and unlimited. If you do not specify an instance ID, Amazon EC2 returns burstable performance instances with the unlimited credit option, as well as instances that were previously configured as T2, T3, and T3a 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 burstable performance 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.
1489 */
1490 describeInstanceCreditSpecifications(params: EC2.Types.DescribeInstanceCreditSpecificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceCreditSpecificationsResult) => void): Request<EC2.Types.DescribeInstanceCreditSpecificationsResult, AWSError>;
1491 /**
1492 * Describes the credit option for CPU usage of the specified burstable performance instances. The credit options are standard and unlimited. If you do not specify an instance ID, Amazon EC2 returns burstable performance instances with the unlimited credit option, as well as instances that were previously configured as T2, T3, and T3a 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 burstable performance 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.
1493 */
1494 describeInstanceCreditSpecifications(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceCreditSpecificationsResult) => void): Request<EC2.Types.DescribeInstanceCreditSpecificationsResult, AWSError>;
1495 /**
1496 * Describes the status of the specified instances or all of your 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.
1497 */
1498 describeInstanceStatus(params: EC2.Types.DescribeInstanceStatusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
1499 /**
1500 * Describes the status of the specified instances or all of your 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.
1501 */
1502 describeInstanceStatus(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
1503 /**
1504 * Returns a list of all instance types offered. The results can be filtered by location (Region or Availability Zone). If no location is specified, the instance types offered in the current Region are returned.
1505 */
1506 describeInstanceTypeOfferings(params: EC2.Types.DescribeInstanceTypeOfferingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceTypeOfferingsResult) => void): Request<EC2.Types.DescribeInstanceTypeOfferingsResult, AWSError>;
1507 /**
1508 * Returns a list of all instance types offered. The results can be filtered by location (Region or Availability Zone). If no location is specified, the instance types offered in the current Region are returned.
1509 */
1510 describeInstanceTypeOfferings(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceTypeOfferingsResult) => void): Request<EC2.Types.DescribeInstanceTypeOfferingsResult, AWSError>;
1511 /**
1512 * Returns a list of all instance types offered in your current AWS Region. The results can be filtered by the attributes of the instance types.
1513 */
1514 describeInstanceTypes(params: EC2.Types.DescribeInstanceTypesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceTypesResult) => void): Request<EC2.Types.DescribeInstanceTypesResult, AWSError>;
1515 /**
1516 * Returns a list of all instance types offered in your current AWS Region. The results can be filtered by the attributes of the instance types.
1517 */
1518 describeInstanceTypes(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceTypesResult) => void): Request<EC2.Types.DescribeInstanceTypesResult, AWSError>;
1519 /**
1520 * Describes the specified instances or all of AWS account's 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.
1521 */
1522 describeInstances(params: EC2.Types.DescribeInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
1523 /**
1524 * Describes the specified instances or all of AWS account's 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.
1525 */
1526 describeInstances(callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
1527 /**
1528 * Describes one or more of your internet gateways.
1529 */
1530 describeInternetGateways(params: EC2.Types.DescribeInternetGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInternetGatewaysResult) => void): Request<EC2.Types.DescribeInternetGatewaysResult, AWSError>;
1531 /**
1532 * Describes one or more of your internet gateways.
1533 */
1534 describeInternetGateways(callback?: (err: AWSError, data: EC2.Types.DescribeInternetGatewaysResult) => void): Request<EC2.Types.DescribeInternetGatewaysResult, AWSError>;
1535 /**
1536 * Describes your IPv6 address pools.
1537 */
1538 describeIpv6Pools(params: EC2.Types.DescribeIpv6PoolsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIpv6PoolsResult) => void): Request<EC2.Types.DescribeIpv6PoolsResult, AWSError>;
1539 /**
1540 * Describes your IPv6 address pools.
1541 */
1542 describeIpv6Pools(callback?: (err: AWSError, data: EC2.Types.DescribeIpv6PoolsResult) => void): Request<EC2.Types.DescribeIpv6PoolsResult, AWSError>;
1543 /**
1544 * Describes the specified key pairs or all of your key pairs. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
1545 */
1546 describeKeyPairs(params: EC2.Types.DescribeKeyPairsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
1547 /**
1548 * Describes the specified key pairs or all of your key pairs. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
1549 */
1550 describeKeyPairs(callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
1551 /**
1552 * Describes one or more versions of a specified launch template. You can describe all versions, individual versions, or a range of versions.
1553 */
1554 describeLaunchTemplateVersions(params: EC2.Types.DescribeLaunchTemplateVersionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplateVersionsResult) => void): Request<EC2.Types.DescribeLaunchTemplateVersionsResult, AWSError>;
1555 /**
1556 * Describes one or more versions of a specified launch template. You can describe all versions, individual versions, or a range of versions.
1557 */
1558 describeLaunchTemplateVersions(callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplateVersionsResult) => void): Request<EC2.Types.DescribeLaunchTemplateVersionsResult, AWSError>;
1559 /**
1560 * Describes one or more launch templates.
1561 */
1562 describeLaunchTemplates(params: EC2.Types.DescribeLaunchTemplatesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplatesResult) => void): Request<EC2.Types.DescribeLaunchTemplatesResult, AWSError>;
1563 /**
1564 * Describes one or more launch templates.
1565 */
1566 describeLaunchTemplates(callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplatesResult) => void): Request<EC2.Types.DescribeLaunchTemplatesResult, AWSError>;
1567 /**
1568 * Describes the associations between virtual interface groups and local gateway route tables.
1569 */
1570 describeLocalGatewayRouteTableVirtualInterfaceGroupAssociations(params: EC2.Types.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult, AWSError>;
1571 /**
1572 * Describes the associations between virtual interface groups and local gateway route tables.
1573 */
1574 describeLocalGatewayRouteTableVirtualInterfaceGroupAssociations(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult, AWSError>;
1575 /**
1576 * Describes the specified associations between VPCs and local gateway route tables.
1577 */
1578 describeLocalGatewayRouteTableVpcAssociations(params: EC2.Types.DescribeLocalGatewayRouteTableVpcAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTableVpcAssociationsResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTableVpcAssociationsResult, AWSError>;
1579 /**
1580 * Describes the specified associations between VPCs and local gateway route tables.
1581 */
1582 describeLocalGatewayRouteTableVpcAssociations(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTableVpcAssociationsResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTableVpcAssociationsResult, AWSError>;
1583 /**
1584 * Describes one or more local gateway route tables. By default, all local gateway route tables are described. Alternatively, you can filter the results.
1585 */
1586 describeLocalGatewayRouteTables(params: EC2.Types.DescribeLocalGatewayRouteTablesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTablesResult, AWSError>;
1587 /**
1588 * Describes one or more local gateway route tables. By default, all local gateway route tables are described. Alternatively, you can filter the results.
1589 */
1590 describeLocalGatewayRouteTables(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeLocalGatewayRouteTablesResult, AWSError>;
1591 /**
1592 * Describes the specified local gateway virtual interface groups.
1593 */
1594 describeLocalGatewayVirtualInterfaceGroups(params: EC2.Types.DescribeLocalGatewayVirtualInterfaceGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayVirtualInterfaceGroupsResult) => void): Request<EC2.Types.DescribeLocalGatewayVirtualInterfaceGroupsResult, AWSError>;
1595 /**
1596 * Describes the specified local gateway virtual interface groups.
1597 */
1598 describeLocalGatewayVirtualInterfaceGroups(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayVirtualInterfaceGroupsResult) => void): Request<EC2.Types.DescribeLocalGatewayVirtualInterfaceGroupsResult, AWSError>;
1599 /**
1600 * Describes the specified local gateway virtual interfaces.
1601 */
1602 describeLocalGatewayVirtualInterfaces(params: EC2.Types.DescribeLocalGatewayVirtualInterfacesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayVirtualInterfacesResult) => void): Request<EC2.Types.DescribeLocalGatewayVirtualInterfacesResult, AWSError>;
1603 /**
1604 * Describes the specified local gateway virtual interfaces.
1605 */
1606 describeLocalGatewayVirtualInterfaces(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewayVirtualInterfacesResult) => void): Request<EC2.Types.DescribeLocalGatewayVirtualInterfacesResult, AWSError>;
1607 /**
1608 * Describes one or more local gateways. By default, all local gateways are described. Alternatively, you can filter the results.
1609 */
1610 describeLocalGateways(params: EC2.Types.DescribeLocalGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewaysResult) => void): Request<EC2.Types.DescribeLocalGatewaysResult, AWSError>;
1611 /**
1612 * Describes one or more local gateways. By default, all local gateways are described. Alternatively, you can filter the results.
1613 */
1614 describeLocalGateways(callback?: (err: AWSError, data: EC2.Types.DescribeLocalGatewaysResult) => void): Request<EC2.Types.DescribeLocalGatewaysResult, AWSError>;
1615 /**
1616 * 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.
1617 */
1618 describeMovingAddresses(params: EC2.Types.DescribeMovingAddressesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeMovingAddressesResult) => void): Request<EC2.Types.DescribeMovingAddressesResult, AWSError>;
1619 /**
1620 * 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.
1621 */
1622 describeMovingAddresses(callback?: (err: AWSError, data: EC2.Types.DescribeMovingAddressesResult) => void): Request<EC2.Types.DescribeMovingAddressesResult, AWSError>;
1623 /**
1624 * Describes one or more of your NAT gateways.
1625 */
1626 describeNatGateways(params: EC2.Types.DescribeNatGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
1627 /**
1628 * Describes one or more of your NAT gateways.
1629 */
1630 describeNatGateways(callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
1631 /**
1632 * Describes one or more of your network ACLs. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
1633 */
1634 describeNetworkAcls(params: EC2.Types.DescribeNetworkAclsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkAclsResult) => void): Request<EC2.Types.DescribeNetworkAclsResult, AWSError>;
1635 /**
1636 * Describes one or more of your network ACLs. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
1637 */
1638 describeNetworkAcls(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkAclsResult) => void): Request<EC2.Types.DescribeNetworkAclsResult, AWSError>;
1639 /**
1640 * Describes a network interface attribute. You can specify only one attribute at a time.
1641 */
1642 describeNetworkInterfaceAttribute(params: EC2.Types.DescribeNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfaceAttributeResult) => void): Request<EC2.Types.DescribeNetworkInterfaceAttributeResult, AWSError>;
1643 /**
1644 * Describes a network interface attribute. You can specify only one attribute at a time.
1645 */
1646 describeNetworkInterfaceAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfaceAttributeResult) => void): Request<EC2.Types.DescribeNetworkInterfaceAttributeResult, AWSError>;
1647 /**
1648 * Describes the permissions for your network interfaces.
1649 */
1650 describeNetworkInterfacePermissions(params: EC2.Types.DescribeNetworkInterfacePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacePermissionsResult) => void): Request<EC2.Types.DescribeNetworkInterfacePermissionsResult, AWSError>;
1651 /**
1652 * Describes the permissions for your network interfaces.
1653 */
1654 describeNetworkInterfacePermissions(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacePermissionsResult) => void): Request<EC2.Types.DescribeNetworkInterfacePermissionsResult, AWSError>;
1655 /**
1656 * Describes one or more of your network interfaces.
1657 */
1658 describeNetworkInterfaces(params: EC2.Types.DescribeNetworkInterfacesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
1659 /**
1660 * Describes one or more of your network interfaces.
1661 */
1662 describeNetworkInterfaces(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
1663 /**
1664 * Describes the specified placement groups or all of your placement groups. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
1665 */
1666 describePlacementGroups(params: EC2.Types.DescribePlacementGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePlacementGroupsResult) => void): Request<EC2.Types.DescribePlacementGroupsResult, AWSError>;
1667 /**
1668 * Describes the specified placement groups or all of your placement groups. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
1669 */
1670 describePlacementGroups(callback?: (err: AWSError, data: EC2.Types.DescribePlacementGroupsResult) => void): Request<EC2.Types.DescribePlacementGroupsResult, AWSError>;
1671 /**
1672 * 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.
1673 */
1674 describePrefixLists(params: EC2.Types.DescribePrefixListsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePrefixListsResult) => void): Request<EC2.Types.DescribePrefixListsResult, AWSError>;
1675 /**
1676 * 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.
1677 */
1678 describePrefixLists(callback?: (err: AWSError, data: EC2.Types.DescribePrefixListsResult) => void): Request<EC2.Types.DescribePrefixListsResult, AWSError>;
1679 /**
1680 * 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.
1681 */
1682 describePrincipalIdFormat(params: EC2.Types.DescribePrincipalIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribePrincipalIdFormatResult) => void): Request<EC2.Types.DescribePrincipalIdFormatResult, AWSError>;
1683 /**
1684 * 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.
1685 */
1686 describePrincipalIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribePrincipalIdFormatResult) => void): Request<EC2.Types.DescribePrincipalIdFormatResult, AWSError>;
1687 /**
1688 * Describes the specified IPv4 address pools.
1689 */
1690 describePublicIpv4Pools(params: EC2.Types.DescribePublicIpv4PoolsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePublicIpv4PoolsResult) => void): Request<EC2.Types.DescribePublicIpv4PoolsResult, AWSError>;
1691 /**
1692 * Describes the specified IPv4 address pools.
1693 */
1694 describePublicIpv4Pools(callback?: (err: AWSError, data: EC2.Types.DescribePublicIpv4PoolsResult) => void): Request<EC2.Types.DescribePublicIpv4PoolsResult, AWSError>;
1695 /**
1696 * Describes the Regions that are enabled for your account, or all Regions. For a list of the Regions supported by Amazon EC2, see Regions and Endpoints. For information about enabling and disabling Regions for your account, see Managing AWS Regions in the AWS General Reference.
1697 */
1698 describeRegions(params: EC2.Types.DescribeRegionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeRegionsResult) => void): Request<EC2.Types.DescribeRegionsResult, AWSError>;
1699 /**
1700 * Describes the Regions that are enabled for your account, or all Regions. For a list of the Regions supported by Amazon EC2, see Regions and Endpoints. For information about enabling and disabling Regions for your account, see Managing AWS Regions in the AWS General Reference.
1701 */
1702 describeRegions(callback?: (err: AWSError, data: EC2.Types.DescribeRegionsResult) => void): Request<EC2.Types.DescribeRegionsResult, AWSError>;
1703 /**
1704 * 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.
1705 */
1706 describeReservedInstances(params: EC2.Types.DescribeReservedInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesResult) => void): Request<EC2.Types.DescribeReservedInstancesResult, AWSError>;
1707 /**
1708 * 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.
1709 */
1710 describeReservedInstances(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesResult) => void): Request<EC2.Types.DescribeReservedInstancesResult, AWSError>;
1711 /**
1712 * 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.
1713 */
1714 describeReservedInstancesListings(params: EC2.Types.DescribeReservedInstancesListingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesListingsResult) => void): Request<EC2.Types.DescribeReservedInstancesListingsResult, AWSError>;
1715 /**
1716 * 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.
1717 */
1718 describeReservedInstancesListings(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesListingsResult) => void): Request<EC2.Types.DescribeReservedInstancesListingsResult, AWSError>;
1719 /**
1720 * 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.
1721 */
1722 describeReservedInstancesModifications(params: EC2.Types.DescribeReservedInstancesModificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesModificationsResult) => void): Request<EC2.Types.DescribeReservedInstancesModificationsResult, AWSError>;
1723 /**
1724 * 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.
1725 */
1726 describeReservedInstancesModifications(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesModificationsResult) => void): Request<EC2.Types.DescribeReservedInstancesModificationsResult, AWSError>;
1727 /**
1728 * 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.
1729 */
1730 describeReservedInstancesOfferings(params: EC2.Types.DescribeReservedInstancesOfferingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesOfferingsResult) => void): Request<EC2.Types.DescribeReservedInstancesOfferingsResult, AWSError>;
1731 /**
1732 * 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.
1733 */
1734 describeReservedInstancesOfferings(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesOfferingsResult) => void): Request<EC2.Types.DescribeReservedInstancesOfferingsResult, AWSError>;
1735 /**
1736 * 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.
1737 */
1738 describeRouteTables(params: EC2.Types.DescribeRouteTablesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeRouteTablesResult) => void): Request<EC2.Types.DescribeRouteTablesResult, AWSError>;
1739 /**
1740 * 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.
1741 */
1742 describeRouteTables(callback?: (err: AWSError, data: EC2.Types.DescribeRouteTablesResult) => void): Request<EC2.Types.DescribeRouteTablesResult, AWSError>;
1743 /**
1744 * 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.
1745 */
1746 describeScheduledInstanceAvailability(params: EC2.Types.DescribeScheduledInstanceAvailabilityRequest, callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstanceAvailabilityResult) => void): Request<EC2.Types.DescribeScheduledInstanceAvailabilityResult, AWSError>;
1747 /**
1748 * 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.
1749 */
1750 describeScheduledInstanceAvailability(callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstanceAvailabilityResult) => void): Request<EC2.Types.DescribeScheduledInstanceAvailabilityResult, AWSError>;
1751 /**
1752 * Describes the specified Scheduled Instances or all your Scheduled Instances.
1753 */
1754 describeScheduledInstances(params: EC2.Types.DescribeScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstancesResult) => void): Request<EC2.Types.DescribeScheduledInstancesResult, AWSError>;
1755 /**
1756 * Describes the specified Scheduled Instances or all your Scheduled Instances.
1757 */
1758 describeScheduledInstances(callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstancesResult) => void): Request<EC2.Types.DescribeScheduledInstancesResult, AWSError>;
1759 /**
1760 * [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.
1761 */
1762 describeSecurityGroupReferences(params: EC2.Types.DescribeSecurityGroupReferencesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupReferencesResult) => void): Request<EC2.Types.DescribeSecurityGroupReferencesResult, AWSError>;
1763 /**
1764 * [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.
1765 */
1766 describeSecurityGroupReferences(callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupReferencesResult) => void): Request<EC2.Types.DescribeSecurityGroupReferencesResult, AWSError>;
1767 /**
1768 * Describes the specified security groups or all 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.
1769 */
1770 describeSecurityGroups(params: EC2.Types.DescribeSecurityGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
1771 /**
1772 * Describes the specified security groups or all 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.
1773 */
1774 describeSecurityGroups(callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
1775 /**
1776 * 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.
1777 */
1778 describeSnapshotAttribute(params: EC2.Types.DescribeSnapshotAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotAttributeResult) => void): Request<EC2.Types.DescribeSnapshotAttributeResult, AWSError>;
1779 /**
1780 * 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.
1781 */
1782 describeSnapshotAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotAttributeResult) => void): Request<EC2.Types.DescribeSnapshotAttributeResult, AWSError>;
1783 /**
1784 * Describes the specified EBS snapshots available to you or all of the EBS snapshots available to you. The snapshots available to you include public snapshots, private snapshots that you own, and private snapshots owned by other AWS accounts for which you have 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 filtered 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. To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1785 */
1786 describeSnapshots(params: EC2.Types.DescribeSnapshotsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
1787 /**
1788 * Describes the specified EBS snapshots available to you or all of the EBS snapshots available to you. The snapshots available to you include public snapshots, private snapshots that you own, and private snapshots owned by other AWS accounts for which you have 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 filtered 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. To get the state of fast snapshot restores for a snapshot, use DescribeFastSnapshotRestores. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1789 */
1790 describeSnapshots(callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
1791 /**
1792 * Describes the data feed for Spot Instances. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
1793 */
1794 describeSpotDatafeedSubscription(params: EC2.Types.DescribeSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.DescribeSpotDatafeedSubscriptionResult, AWSError>;
1795 /**
1796 * Describes the data feed for Spot Instances. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
1797 */
1798 describeSpotDatafeedSubscription(callback?: (err: AWSError, data: EC2.Types.DescribeSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.DescribeSpotDatafeedSubscriptionResult, AWSError>;
1799 /**
1800 * Describes the running instances for the specified Spot Fleet.
1801 */
1802 describeSpotFleetInstances(params: EC2.Types.DescribeSpotFleetInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetInstancesResponse) => void): Request<EC2.Types.DescribeSpotFleetInstancesResponse, AWSError>;
1803 /**
1804 * Describes the running instances for the specified Spot Fleet.
1805 */
1806 describeSpotFleetInstances(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetInstancesResponse) => void): Request<EC2.Types.DescribeSpotFleetInstancesResponse, AWSError>;
1807 /**
1808 * 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.
1809 */
1810 describeSpotFleetRequestHistory(params: EC2.Types.DescribeSpotFleetRequestHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestHistoryResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestHistoryResponse, AWSError>;
1811 /**
1812 * 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.
1813 */
1814 describeSpotFleetRequestHistory(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestHistoryResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestHistoryResponse, AWSError>;
1815 /**
1816 * Describes your Spot Fleet requests. Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.
1817 */
1818 describeSpotFleetRequests(params: EC2.Types.DescribeSpotFleetRequestsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestsResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestsResponse, AWSError>;
1819 /**
1820 * Describes your Spot Fleet requests. Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.
1821 */
1822 describeSpotFleetRequests(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestsResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestsResponse, AWSError>;
1823 /**
1824 * 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.
1825 */
1826 describeSpotInstanceRequests(params: EC2.Types.DescribeSpotInstanceRequestsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
1827 /**
1828 * 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.
1829 */
1830 describeSpotInstanceRequests(callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
1831 /**
1832 * 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.
1833 */
1834 describeSpotPriceHistory(params: EC2.Types.DescribeSpotPriceHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotPriceHistoryResult) => void): Request<EC2.Types.DescribeSpotPriceHistoryResult, AWSError>;
1835 /**
1836 * 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.
1837 */
1838 describeSpotPriceHistory(callback?: (err: AWSError, data: EC2.Types.DescribeSpotPriceHistoryResult) => void): Request<EC2.Types.DescribeSpotPriceHistoryResult, AWSError>;
1839 /**
1840 * [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.
1841 */
1842 describeStaleSecurityGroups(params: EC2.Types.DescribeStaleSecurityGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeStaleSecurityGroupsResult) => void): Request<EC2.Types.DescribeStaleSecurityGroupsResult, AWSError>;
1843 /**
1844 * [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.
1845 */
1846 describeStaleSecurityGroups(callback?: (err: AWSError, data: EC2.Types.DescribeStaleSecurityGroupsResult) => void): Request<EC2.Types.DescribeStaleSecurityGroupsResult, AWSError>;
1847 /**
1848 * Describes one or more of your subnets. For more information, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
1849 */
1850 describeSubnets(params: EC2.Types.DescribeSubnetsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
1851 /**
1852 * Describes one or more of your subnets. For more information, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
1853 */
1854 describeSubnets(callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
1855 /**
1856 * Describes the specified tags for your EC2 resources. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
1857 */
1858 describeTags(params: EC2.Types.DescribeTagsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTagsResult) => void): Request<EC2.Types.DescribeTagsResult, AWSError>;
1859 /**
1860 * Describes the specified tags for your EC2 resources. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
1861 */
1862 describeTags(callback?: (err: AWSError, data: EC2.Types.DescribeTagsResult) => void): Request<EC2.Types.DescribeTagsResult, AWSError>;
1863 /**
1864 * Describes one or more Traffic Mirror filters.
1865 */
1866 describeTrafficMirrorFilters(params: EC2.Types.DescribeTrafficMirrorFiltersRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorFiltersResult) => void): Request<EC2.Types.DescribeTrafficMirrorFiltersResult, AWSError>;
1867 /**
1868 * Describes one or more Traffic Mirror filters.
1869 */
1870 describeTrafficMirrorFilters(callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorFiltersResult) => void): Request<EC2.Types.DescribeTrafficMirrorFiltersResult, AWSError>;
1871 /**
1872 * Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.
1873 */
1874 describeTrafficMirrorSessions(params: EC2.Types.DescribeTrafficMirrorSessionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorSessionsResult) => void): Request<EC2.Types.DescribeTrafficMirrorSessionsResult, AWSError>;
1875 /**
1876 * Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.
1877 */
1878 describeTrafficMirrorSessions(callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorSessionsResult) => void): Request<EC2.Types.DescribeTrafficMirrorSessionsResult, AWSError>;
1879 /**
1880 * Information about one or more Traffic Mirror targets.
1881 */
1882 describeTrafficMirrorTargets(params: EC2.Types.DescribeTrafficMirrorTargetsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorTargetsResult) => void): Request<EC2.Types.DescribeTrafficMirrorTargetsResult, AWSError>;
1883 /**
1884 * Information about one or more Traffic Mirror targets.
1885 */
1886 describeTrafficMirrorTargets(callback?: (err: AWSError, data: EC2.Types.DescribeTrafficMirrorTargetsResult) => void): Request<EC2.Types.DescribeTrafficMirrorTargetsResult, AWSError>;
1887 /**
1888 * 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.
1889 */
1890 describeTransitGatewayAttachments(params: EC2.Types.DescribeTransitGatewayAttachmentsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayAttachmentsResult, AWSError>;
1891 /**
1892 * 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.
1893 */
1894 describeTransitGatewayAttachments(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayAttachmentsResult, AWSError>;
1895 /**
1896 * Describes one or more transit gateway multicast domains.
1897 */
1898 describeTransitGatewayMulticastDomains(params: EC2.Types.DescribeTransitGatewayMulticastDomainsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayMulticastDomainsResult) => void): Request<EC2.Types.DescribeTransitGatewayMulticastDomainsResult, AWSError>;
1899 /**
1900 * Describes one or more transit gateway multicast domains.
1901 */
1902 describeTransitGatewayMulticastDomains(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayMulticastDomainsResult) => void): Request<EC2.Types.DescribeTransitGatewayMulticastDomainsResult, AWSError>;
1903 /**
1904 * Describes your transit gateway peering attachments.
1905 */
1906 describeTransitGatewayPeeringAttachments(params: EC2.Types.DescribeTransitGatewayPeeringAttachmentsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayPeeringAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayPeeringAttachmentsResult, AWSError>;
1907 /**
1908 * Describes your transit gateway peering attachments.
1909 */
1910 describeTransitGatewayPeeringAttachments(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayPeeringAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayPeeringAttachmentsResult, AWSError>;
1911 /**
1912 * Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. Alternatively, you can filter the results.
1913 */
1914 describeTransitGatewayRouteTables(params: EC2.Types.DescribeTransitGatewayRouteTablesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeTransitGatewayRouteTablesResult, AWSError>;
1915 /**
1916 * Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. Alternatively, you can filter the results.
1917 */
1918 describeTransitGatewayRouteTables(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeTransitGatewayRouteTablesResult, AWSError>;
1919 /**
1920 * Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can filter the results.
1921 */
1922 describeTransitGatewayVpcAttachments(params: EC2.Types.DescribeTransitGatewayVpcAttachmentsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayVpcAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayVpcAttachmentsResult, AWSError>;
1923 /**
1924 * Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can filter the results.
1925 */
1926 describeTransitGatewayVpcAttachments(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayVpcAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayVpcAttachmentsResult, AWSError>;
1927 /**
1928 * Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can filter the results.
1929 */
1930 describeTransitGateways(params: EC2.Types.DescribeTransitGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewaysResult) => void): Request<EC2.Types.DescribeTransitGatewaysResult, AWSError>;
1931 /**
1932 * Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can filter the results.
1933 */
1934 describeTransitGateways(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewaysResult) => void): Request<EC2.Types.DescribeTransitGatewaysResult, AWSError>;
1935 /**
1936 * 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.
1937 */
1938 describeVolumeAttribute(params: EC2.Types.DescribeVolumeAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumeAttributeResult) => void): Request<EC2.Types.DescribeVolumeAttributeResult, AWSError>;
1939 /**
1940 * 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.
1941 */
1942 describeVolumeAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeVolumeAttributeResult) => void): Request<EC2.Types.DescribeVolumeAttributeResult, AWSError>;
1943 /**
1944 * 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.)
1945 */
1946 describeVolumeStatus(params: EC2.Types.DescribeVolumeStatusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumeStatusResult) => void): Request<EC2.Types.DescribeVolumeStatusResult, AWSError>;
1947 /**
1948 * 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.)
1949 */
1950 describeVolumeStatus(callback?: (err: AWSError, data: EC2.Types.DescribeVolumeStatusResult) => void): Request<EC2.Types.DescribeVolumeStatusResult, AWSError>;
1951 /**
1952 * Describes the specified EBS volumes or all of your 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.
1953 */
1954 describeVolumes(params: EC2.Types.DescribeVolumesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
1955 /**
1956 * Describes the specified EBS volumes or all of your 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.
1957 */
1958 describeVolumes(callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
1959 /**
1960 * 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.
1961 */
1962 describeVolumesModifications(params: EC2.Types.DescribeVolumesModificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesModificationsResult) => void): Request<EC2.Types.DescribeVolumesModificationsResult, AWSError>;
1963 /**
1964 * 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.
1965 */
1966 describeVolumesModifications(callback?: (err: AWSError, data: EC2.Types.DescribeVolumesModificationsResult) => void): Request<EC2.Types.DescribeVolumesModificationsResult, AWSError>;
1967 /**
1968 * Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.
1969 */
1970 describeVpcAttribute(params: EC2.Types.DescribeVpcAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcAttributeResult) => void): Request<EC2.Types.DescribeVpcAttributeResult, AWSError>;
1971 /**
1972 * Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.
1973 */
1974 describeVpcAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeVpcAttributeResult) => void): Request<EC2.Types.DescribeVpcAttributeResult, AWSError>;
1975 /**
1976 * Describes the ClassicLink status of one or more VPCs.
1977 */
1978 describeVpcClassicLink(params: EC2.Types.DescribeVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkResult) => void): Request<EC2.Types.DescribeVpcClassicLinkResult, AWSError>;
1979 /**
1980 * Describes the ClassicLink status of one or more VPCs.
1981 */
1982 describeVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkResult) => void): Request<EC2.Types.DescribeVpcClassicLinkResult, AWSError>;
1983 /**
1984 * 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.
1985 */
1986 describeVpcClassicLinkDnsSupport(params: EC2.Types.DescribeVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DescribeVpcClassicLinkDnsSupportResult, AWSError>;
1987 /**
1988 * 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.
1989 */
1990 describeVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DescribeVpcClassicLinkDnsSupportResult, AWSError>;
1991 /**
1992 * Describes the connection notifications for VPC endpoints and VPC endpoint services.
1993 */
1994 describeVpcEndpointConnectionNotifications(params: EC2.Types.DescribeVpcEndpointConnectionNotificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionNotificationsResult, AWSError>;
1995 /**
1996 * Describes the connection notifications for VPC endpoints and VPC endpoint services.
1997 */
1998 describeVpcEndpointConnectionNotifications(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionNotificationsResult, AWSError>;
1999 /**
2000 * Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance.
2001 */
2002 describeVpcEndpointConnections(params: EC2.Types.DescribeVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionsResult, AWSError>;
2003 /**
2004 * Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance.
2005 */
2006 describeVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionsResult, AWSError>;
2007 /**
2008 * Describes the VPC endpoint service configurations in your account (your services).
2009 */
2010 describeVpcEndpointServiceConfigurations(params: EC2.Types.DescribeVpcEndpointServiceConfigurationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DescribeVpcEndpointServiceConfigurationsResult, AWSError>;
2011 /**
2012 * Describes the VPC endpoint service configurations in your account (your services).
2013 */
2014 describeVpcEndpointServiceConfigurations(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DescribeVpcEndpointServiceConfigurationsResult, AWSError>;
2015 /**
2016 * Describes the principals (service consumers) that are permitted to discover your VPC endpoint service.
2017 */
2018 describeVpcEndpointServicePermissions(params: EC2.Types.DescribeVpcEndpointServicePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.DescribeVpcEndpointServicePermissionsResult, AWSError>;
2019 /**
2020 * Describes the principals (service consumers) that are permitted to discover your VPC endpoint service.
2021 */
2022 describeVpcEndpointServicePermissions(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.DescribeVpcEndpointServicePermissionsResult, AWSError>;
2023 /**
2024 * Describes available services to which you can create a VPC endpoint.
2025 */
2026 describeVpcEndpointServices(params: EC2.Types.DescribeVpcEndpointServicesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicesResult) => void): Request<EC2.Types.DescribeVpcEndpointServicesResult, AWSError>;
2027 /**
2028 * Describes available services to which you can create a VPC endpoint.
2029 */
2030 describeVpcEndpointServices(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicesResult) => void): Request<EC2.Types.DescribeVpcEndpointServicesResult, AWSError>;
2031 /**
2032 * Describes one or more of your VPC endpoints.
2033 */
2034 describeVpcEndpoints(params: EC2.Types.DescribeVpcEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointsResult) => void): Request<EC2.Types.DescribeVpcEndpointsResult, AWSError>;
2035 /**
2036 * Describes one or more of your VPC endpoints.
2037 */
2038 describeVpcEndpoints(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointsResult) => void): Request<EC2.Types.DescribeVpcEndpointsResult, AWSError>;
2039 /**
2040 * Describes one or more of your VPC peering connections.
2041 */
2042 describeVpcPeeringConnections(params: EC2.Types.DescribeVpcPeeringConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2043 /**
2044 * Describes one or more of your VPC peering connections.
2045 */
2046 describeVpcPeeringConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2047 /**
2048 * Describes one or more of your VPCs.
2049 */
2050 describeVpcs(params: EC2.Types.DescribeVpcsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2051 /**
2052 * Describes one or more of your VPCs.
2053 */
2054 describeVpcs(callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2055 /**
2056 * 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.
2057 */
2058 describeVpnConnections(params: EC2.Types.DescribeVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2059 /**
2060 * 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.
2061 */
2062 describeVpnConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2063 /**
2064 * 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.
2065 */
2066 describeVpnGateways(params: EC2.Types.DescribeVpnGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpnGatewaysResult) => void): Request<EC2.Types.DescribeVpnGatewaysResult, AWSError>;
2067 /**
2068 * 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.
2069 */
2070 describeVpnGateways(callback?: (err: AWSError, data: EC2.Types.DescribeVpnGatewaysResult) => void): Request<EC2.Types.DescribeVpnGatewaysResult, AWSError>;
2071 /**
2072 * 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.
2073 */
2074 detachClassicLinkVpc(params: EC2.Types.DetachClassicLinkVpcRequest, callback?: (err: AWSError, data: EC2.Types.DetachClassicLinkVpcResult) => void): Request<EC2.Types.DetachClassicLinkVpcResult, AWSError>;
2075 /**
2076 * 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.
2077 */
2078 detachClassicLinkVpc(callback?: (err: AWSError, data: EC2.Types.DetachClassicLinkVpcResult) => void): Request<EC2.Types.DetachClassicLinkVpcResult, AWSError>;
2079 /**
2080 * 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.
2081 */
2082 detachInternetGateway(params: EC2.Types.DetachInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2083 /**
2084 * 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.
2085 */
2086 detachInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2087 /**
2088 * Detaches a network interface from an instance.
2089 */
2090 detachNetworkInterface(params: EC2.Types.DetachNetworkInterfaceRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2091 /**
2092 * Detaches a network interface from an instance.
2093 */
2094 detachNetworkInterface(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2095 /**
2096 * 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.
2097 */
2098 detachVolume(params: EC2.Types.DetachVolumeRequest, callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
2099 /**
2100 * 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.
2101 */
2102 detachVolume(callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
2103 /**
2104 * 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.
2105 */
2106 detachVpnGateway(params: EC2.Types.DetachVpnGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2107 /**
2108 * 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.
2109 */
2110 detachVpnGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2111 /**
2112 * Disables EBS encryption by default for your account in the current Region. After you disable encryption by default, you can still create encrypted volumes by enabling encryption when you create each volume. Disabling encryption by default does not change the encryption status of your existing volumes. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2113 */
2114 disableEbsEncryptionByDefault(params: EC2.Types.DisableEbsEncryptionByDefaultRequest, callback?: (err: AWSError, data: EC2.Types.DisableEbsEncryptionByDefaultResult) => void): Request<EC2.Types.DisableEbsEncryptionByDefaultResult, AWSError>;
2115 /**
2116 * Disables EBS encryption by default for your account in the current Region. After you disable encryption by default, you can still create encrypted volumes by enabling encryption when you create each volume. Disabling encryption by default does not change the encryption status of your existing volumes. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2117 */
2118 disableEbsEncryptionByDefault(callback?: (err: AWSError, data: EC2.Types.DisableEbsEncryptionByDefaultResult) => void): Request<EC2.Types.DisableEbsEncryptionByDefaultResult, AWSError>;
2119 /**
2120 * Disables fast snapshot restores for the specified snapshots in the specified Availability Zones.
2121 */
2122 disableFastSnapshotRestores(params: EC2.Types.DisableFastSnapshotRestoresRequest, callback?: (err: AWSError, data: EC2.Types.DisableFastSnapshotRestoresResult) => void): Request<EC2.Types.DisableFastSnapshotRestoresResult, AWSError>;
2123 /**
2124 * Disables fast snapshot restores for the specified snapshots in the specified Availability Zones.
2125 */
2126 disableFastSnapshotRestores(callback?: (err: AWSError, data: EC2.Types.DisableFastSnapshotRestoresResult) => void): Request<EC2.Types.DisableFastSnapshotRestoresResult, AWSError>;
2127 /**
2128 * Disables the specified resource attachment from propagating routes to the specified propagation route table.
2129 */
2130 disableTransitGatewayRouteTablePropagation(params: EC2.Types.DisableTransitGatewayRouteTablePropagationRequest, callback?: (err: AWSError, data: EC2.Types.DisableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.DisableTransitGatewayRouteTablePropagationResult, AWSError>;
2131 /**
2132 * Disables the specified resource attachment from propagating routes to the specified propagation route table.
2133 */
2134 disableTransitGatewayRouteTablePropagation(callback?: (err: AWSError, data: EC2.Types.DisableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.DisableTransitGatewayRouteTablePropagationResult, AWSError>;
2135 /**
2136 * Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.
2137 */
2138 disableVgwRoutePropagation(params: EC2.Types.DisableVgwRoutePropagationRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2139 /**
2140 * Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.
2141 */
2142 disableVgwRoutePropagation(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2143 /**
2144 * Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.
2145 */
2146 disableVpcClassicLink(params: EC2.Types.DisableVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkResult) => void): Request<EC2.Types.DisableVpcClassicLinkResult, AWSError>;
2147 /**
2148 * Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.
2149 */
2150 disableVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkResult) => void): Request<EC2.Types.DisableVpcClassicLinkResult, AWSError>;
2151 /**
2152 * 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.
2153 */
2154 disableVpcClassicLinkDnsSupport(params: EC2.Types.DisableVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DisableVpcClassicLinkDnsSupportResult, AWSError>;
2155 /**
2156 * 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.
2157 */
2158 disableVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DisableVpcClassicLinkDnsSupportResult, AWSError>;
2159 /**
2160 * 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.
2161 */
2162 disassociateAddress(params: EC2.Types.DisassociateAddressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2163 /**
2164 * 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.
2165 */
2166 disassociateAddress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2167 /**
2168 * 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
2169 */
2170 disassociateClientVpnTargetNetwork(params: EC2.Types.DisassociateClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.DisassociateClientVpnTargetNetworkResult, AWSError>;
2171 /**
2172 * 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
2173 */
2174 disassociateClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.DisassociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.DisassociateClientVpnTargetNetworkResult, AWSError>;
2175 /**
2176 * Disassociates an IAM instance profile from a running or stopped instance. Use DescribeIamInstanceProfileAssociations to get the association ID.
2177 */
2178 disassociateIamInstanceProfile(params: EC2.Types.DisassociateIamInstanceProfileRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateIamInstanceProfileResult) => void): Request<EC2.Types.DisassociateIamInstanceProfileResult, AWSError>;
2179 /**
2180 * Disassociates an IAM instance profile from a running or stopped instance. Use DescribeIamInstanceProfileAssociations to get the association ID.
2181 */
2182 disassociateIamInstanceProfile(callback?: (err: AWSError, data: EC2.Types.DisassociateIamInstanceProfileResult) => void): Request<EC2.Types.DisassociateIamInstanceProfileResult, AWSError>;
2183 /**
2184 * 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.
2185 */
2186 disassociateRouteTable(params: EC2.Types.DisassociateRouteTableRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2187 /**
2188 * 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.
2189 */
2190 disassociateRouteTable(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2191 /**
2192 * 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.
2193 */
2194 disassociateSubnetCidrBlock(params: EC2.Types.DisassociateSubnetCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateSubnetCidrBlockResult) => void): Request<EC2.Types.DisassociateSubnetCidrBlockResult, AWSError>;
2195 /**
2196 * 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.
2197 */
2198 disassociateSubnetCidrBlock(callback?: (err: AWSError, data: EC2.Types.DisassociateSubnetCidrBlockResult) => void): Request<EC2.Types.DisassociateSubnetCidrBlockResult, AWSError>;
2199 /**
2200 * Disassociates the specified subnets from the transit gateway multicast domain.
2201 */
2202 disassociateTransitGatewayMulticastDomain(params: EC2.Types.DisassociateTransitGatewayMulticastDomainRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.DisassociateTransitGatewayMulticastDomainResult, AWSError>;
2203 /**
2204 * Disassociates the specified subnets from the transit gateway multicast domain.
2205 */
2206 disassociateTransitGatewayMulticastDomain(callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayMulticastDomainResult) => void): Request<EC2.Types.DisassociateTransitGatewayMulticastDomainResult, AWSError>;
2207 /**
2208 * Disassociates a resource attachment from a transit gateway route table.
2209 */
2210 disassociateTransitGatewayRouteTable(params: EC2.Types.DisassociateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.DisassociateTransitGatewayRouteTableResult, AWSError>;
2211 /**
2212 * Disassociates a resource attachment from a transit gateway route table.
2213 */
2214 disassociateTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.DisassociateTransitGatewayRouteTableResult, AWSError>;
2215 /**
2216 * 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).
2217 */
2218 disassociateVpcCidrBlock(params: EC2.Types.DisassociateVpcCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateVpcCidrBlockResult) => void): Request<EC2.Types.DisassociateVpcCidrBlockResult, AWSError>;
2219 /**
2220 * 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).
2221 */
2222 disassociateVpcCidrBlock(callback?: (err: AWSError, data: EC2.Types.DisassociateVpcCidrBlockResult) => void): Request<EC2.Types.DisassociateVpcCidrBlockResult, AWSError>;
2223 /**
2224 * Enables EBS encryption by default for your account in the current Region. After you enable encryption by default, the EBS volumes that you create are are always encrypted, either using the default CMK or the CMK that you specified when you created each volume. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. You can specify the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId. Enabling encryption by default has no effect on the encryption status of your existing volumes. After you enable encryption by default, you can no longer launch instances using instance types that do not support encryption. For more information, see Supported Instance Types.
2225 */
2226 enableEbsEncryptionByDefault(params: EC2.Types.EnableEbsEncryptionByDefaultRequest, callback?: (err: AWSError, data: EC2.Types.EnableEbsEncryptionByDefaultResult) => void): Request<EC2.Types.EnableEbsEncryptionByDefaultResult, AWSError>;
2227 /**
2228 * Enables EBS encryption by default for your account in the current Region. After you enable encryption by default, the EBS volumes that you create are are always encrypted, either using the default CMK or the CMK that you specified when you created each volume. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. You can specify the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId. Enabling encryption by default has no effect on the encryption status of your existing volumes. After you enable encryption by default, you can no longer launch instances using instance types that do not support encryption. For more information, see Supported Instance Types.
2229 */
2230 enableEbsEncryptionByDefault(callback?: (err: AWSError, data: EC2.Types.EnableEbsEncryptionByDefaultResult) => void): Request<EC2.Types.EnableEbsEncryptionByDefaultResult, AWSError>;
2231 /**
2232 * Enables fast snapshot restores for the specified snapshots in the specified Availability Zones. You get the full benefit of fast snapshot restores after they enter the enabled state. To get the current state of fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast snapshot restores, use DisableFastSnapshotRestores. For more information, see Amazon EBS Fast Snapshot Restore in the Amazon Elastic Compute Cloud User Guide.
2233 */
2234 enableFastSnapshotRestores(params: EC2.Types.EnableFastSnapshotRestoresRequest, callback?: (err: AWSError, data: EC2.Types.EnableFastSnapshotRestoresResult) => void): Request<EC2.Types.EnableFastSnapshotRestoresResult, AWSError>;
2235 /**
2236 * Enables fast snapshot restores for the specified snapshots in the specified Availability Zones. You get the full benefit of fast snapshot restores after they enter the enabled state. To get the current state of fast snapshot restores, use DescribeFastSnapshotRestores. To disable fast snapshot restores, use DisableFastSnapshotRestores. For more information, see Amazon EBS Fast Snapshot Restore in the Amazon Elastic Compute Cloud User Guide.
2237 */
2238 enableFastSnapshotRestores(callback?: (err: AWSError, data: EC2.Types.EnableFastSnapshotRestoresResult) => void): Request<EC2.Types.EnableFastSnapshotRestoresResult, AWSError>;
2239 /**
2240 * Enables the specified attachment to propagate routes to the specified propagation route table.
2241 */
2242 enableTransitGatewayRouteTablePropagation(params: EC2.Types.EnableTransitGatewayRouteTablePropagationRequest, callback?: (err: AWSError, data: EC2.Types.EnableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.EnableTransitGatewayRouteTablePropagationResult, AWSError>;
2243 /**
2244 * Enables the specified attachment to propagate routes to the specified propagation route table.
2245 */
2246 enableTransitGatewayRouteTablePropagation(callback?: (err: AWSError, data: EC2.Types.EnableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.EnableTransitGatewayRouteTablePropagationResult, AWSError>;
2247 /**
2248 * Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.
2249 */
2250 enableVgwRoutePropagation(params: EC2.Types.EnableVgwRoutePropagationRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2251 /**
2252 * Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.
2253 */
2254 enableVgwRoutePropagation(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2255 /**
2256 * Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.
2257 */
2258 enableVolumeIO(params: EC2.Types.EnableVolumeIORequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2259 /**
2260 * Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.
2261 */
2262 enableVolumeIO(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2263 /**
2264 * 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.
2265 */
2266 enableVpcClassicLink(params: EC2.Types.EnableVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkResult) => void): Request<EC2.Types.EnableVpcClassicLinkResult, AWSError>;
2267 /**
2268 * 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.
2269 */
2270 enableVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkResult) => void): Request<EC2.Types.EnableVpcClassicLinkResult, AWSError>;
2271 /**
2272 * 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.
2273 */
2274 enableVpcClassicLinkDnsSupport(params: EC2.Types.EnableVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.EnableVpcClassicLinkDnsSupportResult, AWSError>;
2275 /**
2276 * 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.
2277 */
2278 enableVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.EnableVpcClassicLinkDnsSupportResult, AWSError>;
2279 /**
2280 * Downloads the client certificate revocation list for the specified Client VPN endpoint.
2281 */
2282 exportClientVpnClientCertificateRevocationList(params: EC2.Types.ExportClientVpnClientCertificateRevocationListRequest, callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ExportClientVpnClientCertificateRevocationListResult, AWSError>;
2283 /**
2284 * Downloads the client certificate revocation list for the specified Client VPN endpoint.
2285 */
2286 exportClientVpnClientCertificateRevocationList(callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ExportClientVpnClientCertificateRevocationListResult, AWSError>;
2287 /**
2288 * 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.
2289 */
2290 exportClientVpnClientConfiguration(params: EC2.Types.ExportClientVpnClientConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientConfigurationResult) => void): Request<EC2.Types.ExportClientVpnClientConfigurationResult, AWSError>;
2291 /**
2292 * 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.
2293 */
2294 exportClientVpnClientConfiguration(callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientConfigurationResult) => void): Request<EC2.Types.ExportClientVpnClientConfigurationResult, AWSError>;
2295 /**
2296 * Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM Directory from an Amazon Machine Image (AMI) in the VM Import/Export User Guide.
2297 */
2298 exportImage(params: EC2.Types.ExportImageRequest, callback?: (err: AWSError, data: EC2.Types.ExportImageResult) => void): Request<EC2.Types.ExportImageResult, AWSError>;
2299 /**
2300 * Exports an Amazon Machine Image (AMI) to a VM file. For more information, see Exporting a VM Directory from an Amazon Machine Image (AMI) in the VM Import/Export User Guide.
2301 */
2302 exportImage(callback?: (err: AWSError, data: EC2.Types.ExportImageResult) => void): Request<EC2.Types.ExportImageResult, AWSError>;
2303 /**
2304 * 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. The routes are saved to the specified bucket in a JSON file. For more information, see Export Route Tables to Amazon S3 in Transit Gateways.
2305 */
2306 exportTransitGatewayRoutes(params: EC2.Types.ExportTransitGatewayRoutesRequest, callback?: (err: AWSError, data: EC2.Types.ExportTransitGatewayRoutesResult) => void): Request<EC2.Types.ExportTransitGatewayRoutesResult, AWSError>;
2307 /**
2308 * 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. The routes are saved to the specified bucket in a JSON file. For more information, see Export Route Tables to Amazon S3 in Transit Gateways.
2309 */
2310 exportTransitGatewayRoutes(callback?: (err: AWSError, data: EC2.Types.ExportTransitGatewayRoutesResult) => void): Request<EC2.Types.ExportTransitGatewayRoutesResult, AWSError>;
2311 /**
2312 * Gets information about the IPv6 CIDR block associations for a specified IPv6 address pool.
2313 */
2314 getAssociatedIpv6PoolCidrs(params: EC2.Types.GetAssociatedIpv6PoolCidrsRequest, callback?: (err: AWSError, data: EC2.Types.GetAssociatedIpv6PoolCidrsResult) => void): Request<EC2.Types.GetAssociatedIpv6PoolCidrsResult, AWSError>;
2315 /**
2316 * Gets information about the IPv6 CIDR block associations for a specified IPv6 address pool.
2317 */
2318 getAssociatedIpv6PoolCidrs(callback?: (err: AWSError, data: EC2.Types.GetAssociatedIpv6PoolCidrsResult) => void): Request<EC2.Types.GetAssociatedIpv6PoolCidrsResult, AWSError>;
2319 /**
2320 * Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner and each AWS account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only the Capacity Reservation owner's usage.
2321 */
2322 getCapacityReservationUsage(params: EC2.Types.GetCapacityReservationUsageRequest, callback?: (err: AWSError, data: EC2.Types.GetCapacityReservationUsageResult) => void): Request<EC2.Types.GetCapacityReservationUsageResult, AWSError>;
2323 /**
2324 * Gets usage information about a Capacity Reservation. If the Capacity Reservation is shared, it shows usage information for the Capacity Reservation owner and each AWS account that is currently using the shared capacity. If the Capacity Reservation is not shared, it shows only the Capacity Reservation owner's usage.
2325 */
2326 getCapacityReservationUsage(callback?: (err: AWSError, data: EC2.Types.GetCapacityReservationUsageResult) => void): Request<EC2.Types.GetCapacityReservationUsageResult, AWSError>;
2327 /**
2328 * Describes the allocations from the specified customer-owned address pool.
2329 */
2330 getCoipPoolUsage(params: EC2.Types.GetCoipPoolUsageRequest, callback?: (err: AWSError, data: EC2.Types.GetCoipPoolUsageResult) => void): Request<EC2.Types.GetCoipPoolUsageResult, AWSError>;
2331 /**
2332 * Describes the allocations from the specified customer-owned address pool.
2333 */
2334 getCoipPoolUsage(callback?: (err: AWSError, data: EC2.Types.GetCoipPoolUsageResult) => void): Request<EC2.Types.GetCoipPoolUsageResult, AWSError>;
2335 /**
2336 * 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.
2337 */
2338 getConsoleOutput(params: EC2.Types.GetConsoleOutputRequest, callback?: (err: AWSError, data: EC2.Types.GetConsoleOutputResult) => void): Request<EC2.Types.GetConsoleOutputResult, AWSError>;
2339 /**
2340 * 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.
2341 */
2342 getConsoleOutput(callback?: (err: AWSError, data: EC2.Types.GetConsoleOutputResult) => void): Request<EC2.Types.GetConsoleOutputResult, AWSError>;
2343 /**
2344 * Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. The returned content is Base64-encoded.
2345 */
2346 getConsoleScreenshot(params: EC2.Types.GetConsoleScreenshotRequest, callback?: (err: AWSError, data: EC2.Types.GetConsoleScreenshotResult) => void): Request<EC2.Types.GetConsoleScreenshotResult, AWSError>;
2347 /**
2348 * Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. The returned content is Base64-encoded.
2349 */
2350 getConsoleScreenshot(callback?: (err: AWSError, data: EC2.Types.GetConsoleScreenshotResult) => void): Request<EC2.Types.GetConsoleScreenshotResult, AWSError>;
2351 /**
2352 * Describes the default credit option for CPU usage of a burstable performance instance family. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2353 */
2354 getDefaultCreditSpecification(params: EC2.Types.GetDefaultCreditSpecificationRequest, callback?: (err: AWSError, data: EC2.Types.GetDefaultCreditSpecificationResult) => void): Request<EC2.Types.GetDefaultCreditSpecificationResult, AWSError>;
2355 /**
2356 * Describes the default credit option for CPU usage of a burstable performance instance family. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2357 */
2358 getDefaultCreditSpecification(callback?: (err: AWSError, data: EC2.Types.GetDefaultCreditSpecificationResult) => void): Request<EC2.Types.GetDefaultCreditSpecificationResult, AWSError>;
2359 /**
2360 * Describes the default customer master key (CMK) for EBS encryption by default for your account in this Region. You can change the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2361 */
2362 getEbsDefaultKmsKeyId(params: EC2.Types.GetEbsDefaultKmsKeyIdRequest, callback?: (err: AWSError, data: EC2.Types.GetEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.GetEbsDefaultKmsKeyIdResult, AWSError>;
2363 /**
2364 * Describes the default customer master key (CMK) for EBS encryption by default for your account in this Region. You can change the default CMK for encryption by default using ModifyEbsDefaultKmsKeyId or ResetEbsDefaultKmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2365 */
2366 getEbsDefaultKmsKeyId(callback?: (err: AWSError, data: EC2.Types.GetEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.GetEbsDefaultKmsKeyIdResult, AWSError>;
2367 /**
2368 * Describes whether EBS encryption by default is enabled for your account in the current Region. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2369 */
2370 getEbsEncryptionByDefault(params: EC2.Types.GetEbsEncryptionByDefaultRequest, callback?: (err: AWSError, data: EC2.Types.GetEbsEncryptionByDefaultResult) => void): Request<EC2.Types.GetEbsEncryptionByDefaultResult, AWSError>;
2371 /**
2372 * Describes whether EBS encryption by default is enabled for your account in the current Region. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2373 */
2374 getEbsEncryptionByDefault(callback?: (err: AWSError, data: EC2.Types.GetEbsEncryptionByDefaultResult) => void): Request<EC2.Types.GetEbsEncryptionByDefaultResult, AWSError>;
2375 /**
2376 * 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.
2377 */
2378 getHostReservationPurchasePreview(params: EC2.Types.GetHostReservationPurchasePreviewRequest, callback?: (err: AWSError, data: EC2.Types.GetHostReservationPurchasePreviewResult) => void): Request<EC2.Types.GetHostReservationPurchasePreviewResult, AWSError>;
2379 /**
2380 * 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.
2381 */
2382 getHostReservationPurchasePreview(callback?: (err: AWSError, data: EC2.Types.GetHostReservationPurchasePreviewResult) => void): Request<EC2.Types.GetHostReservationPurchasePreviewResult, AWSError>;
2383 /**
2384 * Retrieves the configuration data of the specified instance. You can use this data to create a launch template.
2385 */
2386 getLaunchTemplateData(params: EC2.Types.GetLaunchTemplateDataRequest, callback?: (err: AWSError, data: EC2.Types.GetLaunchTemplateDataResult) => void): Request<EC2.Types.GetLaunchTemplateDataResult, AWSError>;
2387 /**
2388 * Retrieves the configuration data of the specified instance. You can use this data to create a launch template.
2389 */
2390 getLaunchTemplateData(callback?: (err: AWSError, data: EC2.Types.GetLaunchTemplateDataResult) => void): Request<EC2.Types.GetLaunchTemplateDataResult, AWSError>;
2391 /**
2392 * 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.
2393 */
2394 getPasswordData(params: EC2.Types.GetPasswordDataRequest, callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
2395 /**
2396 * 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.
2397 */
2398 getPasswordData(callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
2399 /**
2400 * 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.
2401 */
2402 getReservedInstancesExchangeQuote(params: EC2.Types.GetReservedInstancesExchangeQuoteRequest, callback?: (err: AWSError, data: EC2.Types.GetReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.GetReservedInstancesExchangeQuoteResult, AWSError>;
2403 /**
2404 * 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.
2405 */
2406 getReservedInstancesExchangeQuote(callback?: (err: AWSError, data: EC2.Types.GetReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.GetReservedInstancesExchangeQuoteResult, AWSError>;
2407 /**
2408 * Lists the route tables to which the specified resource attachment propagates routes.
2409 */
2410 getTransitGatewayAttachmentPropagations(params: EC2.Types.GetTransitGatewayAttachmentPropagationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayAttachmentPropagationsResult) => void): Request<EC2.Types.GetTransitGatewayAttachmentPropagationsResult, AWSError>;
2411 /**
2412 * Lists the route tables to which the specified resource attachment propagates routes.
2413 */
2414 getTransitGatewayAttachmentPropagations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayAttachmentPropagationsResult) => void): Request<EC2.Types.GetTransitGatewayAttachmentPropagationsResult, AWSError>;
2415 /**
2416 * Gets information about the associations for the transit gateway multicast domain.
2417 */
2418 getTransitGatewayMulticastDomainAssociations(params: EC2.Types.GetTransitGatewayMulticastDomainAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayMulticastDomainAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayMulticastDomainAssociationsResult, AWSError>;
2419 /**
2420 * Gets information about the associations for the transit gateway multicast domain.
2421 */
2422 getTransitGatewayMulticastDomainAssociations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayMulticastDomainAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayMulticastDomainAssociationsResult, AWSError>;
2423 /**
2424 * Gets information about the associations for the specified transit gateway route table.
2425 */
2426 getTransitGatewayRouteTableAssociations(params: EC2.Types.GetTransitGatewayRouteTableAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTableAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTableAssociationsResult, AWSError>;
2427 /**
2428 * Gets information about the associations for the specified transit gateway route table.
2429 */
2430 getTransitGatewayRouteTableAssociations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTableAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTableAssociationsResult, AWSError>;
2431 /**
2432 * Gets information about the route table propagations for the specified transit gateway route table.
2433 */
2434 getTransitGatewayRouteTablePropagations(params: EC2.Types.GetTransitGatewayRouteTablePropagationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTablePropagationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTablePropagationsResult, AWSError>;
2435 /**
2436 * Gets information about the route table propagations for the specified transit gateway route table.
2437 */
2438 getTransitGatewayRouteTablePropagations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTablePropagationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTablePropagationsResult, AWSError>;
2439 /**
2440 * 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.
2441 */
2442 importClientVpnClientCertificateRevocationList(params: EC2.Types.ImportClientVpnClientCertificateRevocationListRequest, callback?: (err: AWSError, data: EC2.Types.ImportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ImportClientVpnClientCertificateRevocationListResult, AWSError>;
2443 /**
2444 * 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.
2445 */
2446 importClientVpnClientCertificateRevocationList(callback?: (err: AWSError, data: EC2.Types.ImportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ImportClientVpnClientCertificateRevocationListResult, AWSError>;
2447 /**
2448 * 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.
2449 */
2450 importImage(params: EC2.Types.ImportImageRequest, callback?: (err: AWSError, data: EC2.Types.ImportImageResult) => void): Request<EC2.Types.ImportImageResult, AWSError>;
2451 /**
2452 * 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.
2453 */
2454 importImage(callback?: (err: AWSError, data: EC2.Types.ImportImageResult) => void): Request<EC2.Types.ImportImageResult, AWSError>;
2455 /**
2456 * 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.
2457 */
2458 importInstance(params: EC2.Types.ImportInstanceRequest, callback?: (err: AWSError, data: EC2.Types.ImportInstanceResult) => void): Request<EC2.Types.ImportInstanceResult, AWSError>;
2459 /**
2460 * 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.
2461 */
2462 importInstance(callback?: (err: AWSError, data: EC2.Types.ImportInstanceResult) => void): Request<EC2.Types.ImportInstanceResult, AWSError>;
2463 /**
2464 * 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.
2465 */
2466 importKeyPair(params: EC2.Types.ImportKeyPairRequest, callback?: (err: AWSError, data: EC2.Types.ImportKeyPairResult) => void): Request<EC2.Types.ImportKeyPairResult, AWSError>;
2467 /**
2468 * 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.
2469 */
2470 importKeyPair(callback?: (err: AWSError, data: EC2.Types.ImportKeyPairResult) => void): Request<EC2.Types.ImportKeyPairResult, AWSError>;
2471 /**
2472 * Imports a disk into an EBS snapshot.
2473 */
2474 importSnapshot(params: EC2.Types.ImportSnapshotRequest, callback?: (err: AWSError, data: EC2.Types.ImportSnapshotResult) => void): Request<EC2.Types.ImportSnapshotResult, AWSError>;
2475 /**
2476 * Imports a disk into an EBS snapshot.
2477 */
2478 importSnapshot(callback?: (err: AWSError, data: EC2.Types.ImportSnapshotResult) => void): Request<EC2.Types.ImportSnapshotResult, AWSError>;
2479 /**
2480 * 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.
2481 */
2482 importVolume(params: EC2.Types.ImportVolumeRequest, callback?: (err: AWSError, data: EC2.Types.ImportVolumeResult) => void): Request<EC2.Types.ImportVolumeResult, AWSError>;
2483 /**
2484 * 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.
2485 */
2486 importVolume(callback?: (err: AWSError, data: EC2.Types.ImportVolumeResult) => void): Request<EC2.Types.ImportVolumeResult, AWSError>;
2487 /**
2488 * Enables or disables an Availability Zone group for your account. Use describe-availability-zones to view the value for GroupName.
2489 */
2490 modifyAvailabilityZoneGroup(params: EC2.Types.ModifyAvailabilityZoneGroupRequest, callback?: (err: AWSError, data: EC2.Types.ModifyAvailabilityZoneGroupResult) => void): Request<EC2.Types.ModifyAvailabilityZoneGroupResult, AWSError>;
2491 /**
2492 * Enables or disables an Availability Zone group for your account. Use describe-availability-zones to view the value for GroupName.
2493 */
2494 modifyAvailabilityZoneGroup(callback?: (err: AWSError, data: EC2.Types.ModifyAvailabilityZoneGroupResult) => void): Request<EC2.Types.ModifyAvailabilityZoneGroupResult, AWSError>;
2495 /**
2496 * 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.
2497 */
2498 modifyCapacityReservation(params: EC2.Types.ModifyCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyCapacityReservationResult) => void): Request<EC2.Types.ModifyCapacityReservationResult, AWSError>;
2499 /**
2500 * 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.
2501 */
2502 modifyCapacityReservation(callback?: (err: AWSError, data: EC2.Types.ModifyCapacityReservationResult) => void): Request<EC2.Types.ModifyCapacityReservationResult, AWSError>;
2503 /**
2504 * Modifies the specified Client VPN endpoint. Modifying the DNS server resets existing client connections.
2505 */
2506 modifyClientVpnEndpoint(params: EC2.Types.ModifyClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.ModifyClientVpnEndpointResult) => void): Request<EC2.Types.ModifyClientVpnEndpointResult, AWSError>;
2507 /**
2508 * Modifies the specified Client VPN endpoint. Modifying the DNS server resets existing client connections.
2509 */
2510 modifyClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.ModifyClientVpnEndpointResult) => void): Request<EC2.Types.ModifyClientVpnEndpointResult, AWSError>;
2511 /**
2512 * Modifies the default credit option for CPU usage of burstable performance instances. The default credit option is set at the account level per AWS Region, and is specified per instance family. All new burstable performance instances in the account launch using the default credit option. ModifyDefaultCreditSpecification is an asynchronous operation, which works at an AWS Region level and modifies the credit option for each Availability Zone. All zones in a Region are updated within five minutes. But if instances are launched during this operation, they might not get the new credit option until the zone is updated. To verify whether the update has occurred, you can call GetDefaultCreditSpecification and check DefaultCreditSpecification for updates. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2513 */
2514 modifyDefaultCreditSpecification(params: EC2.Types.ModifyDefaultCreditSpecificationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyDefaultCreditSpecificationResult) => void): Request<EC2.Types.ModifyDefaultCreditSpecificationResult, AWSError>;
2515 /**
2516 * Modifies the default credit option for CPU usage of burstable performance instances. The default credit option is set at the account level per AWS Region, and is specified per instance family. All new burstable performance instances in the account launch using the default credit option. ModifyDefaultCreditSpecification is an asynchronous operation, which works at an AWS Region level and modifies the credit option for each Availability Zone. All zones in a Region are updated within five minutes. But if instances are launched during this operation, they might not get the new credit option until the zone is updated. To verify whether the update has occurred, you can call GetDefaultCreditSpecification and check DefaultCreditSpecification for updates. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2517 */
2518 modifyDefaultCreditSpecification(callback?: (err: AWSError, data: EC2.Types.ModifyDefaultCreditSpecificationResult) => void): Request<EC2.Types.ModifyDefaultCreditSpecificationResult, AWSError>;
2519 /**
2520 * Changes the default customer master key (CMK) for EBS encryption by default for your account in this Region. AWS creates a unique AWS managed CMK in each Region for use with encryption by default. If you change the default CMK to a symmetric customer managed CMK, it is used instead of the AWS managed CMK. To reset the default CMK to the AWS managed CMK for EBS, use ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric CMKs. If you delete or disable the customer managed CMK that you specified for use with encryption by default, your instances will fail to launch. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2521 */
2522 modifyEbsDefaultKmsKeyId(params: EC2.Types.ModifyEbsDefaultKmsKeyIdRequest, callback?: (err: AWSError, data: EC2.Types.ModifyEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.ModifyEbsDefaultKmsKeyIdResult, AWSError>;
2523 /**
2524 * Changes the default customer master key (CMK) for EBS encryption by default for your account in this Region. AWS creates a unique AWS managed CMK in each Region for use with encryption by default. If you change the default CMK to a symmetric customer managed CMK, it is used instead of the AWS managed CMK. To reset the default CMK to the AWS managed CMK for EBS, use ResetEbsDefaultKmsKeyId. Amazon EBS does not support asymmetric CMKs. If you delete or disable the customer managed CMK that you specified for use with encryption by default, your instances will fail to launch. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
2525 */
2526 modifyEbsDefaultKmsKeyId(callback?: (err: AWSError, data: EC2.Types.ModifyEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.ModifyEbsDefaultKmsKeyIdResult, AWSError>;
2527 /**
2528 * Modifies the specified EC2 Fleet. You can only modify an EC2 Fleet request of type maintain. While the EC2 Fleet is being modified, it is in the modifying state. To scale up your EC2 Fleet, increase its target capacity. The EC2 Fleet launches the additional Spot Instances according to the allocation strategy for the EC2 Fleet request. If the allocation strategy is lowest-price, the EC2 Fleet launches instances using the Spot Instance pool with the lowest price. If the allocation strategy is diversified, the EC2 Fleet distributes the instances across the Spot Instance pools. If the allocation strategy is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching. To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 Fleet cancels any open requests that exceed the new target capacity. You can request that the EC2 Fleet terminate Spot Instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowest-price, the EC2 Fleet terminates the instances with the highest price per unit. If the allocation strategy is capacity-optimized, the EC2 Fleet terminates the instances in the Spot Instance pools that have the least available Spot Instance capacity. If the allocation strategy is diversified, the EC2 Fleet terminates instances across the Spot Instance pools. Alternatively, you can request that the EC2 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 EC2 Fleet for now, but will use it again later, you can set the target capacity to 0.
2529 */
2530 modifyFleet(params: EC2.Types.ModifyFleetRequest, callback?: (err: AWSError, data: EC2.Types.ModifyFleetResult) => void): Request<EC2.Types.ModifyFleetResult, AWSError>;
2531 /**
2532 * Modifies the specified EC2 Fleet. You can only modify an EC2 Fleet request of type maintain. While the EC2 Fleet is being modified, it is in the modifying state. To scale up your EC2 Fleet, increase its target capacity. The EC2 Fleet launches the additional Spot Instances according to the allocation strategy for the EC2 Fleet request. If the allocation strategy is lowest-price, the EC2 Fleet launches instances using the Spot Instance pool with the lowest price. If the allocation strategy is diversified, the EC2 Fleet distributes the instances across the Spot Instance pools. If the allocation strategy is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching. To scale down your EC2 Fleet, decrease its target capacity. First, the EC2 Fleet cancels any open requests that exceed the new target capacity. You can request that the EC2 Fleet terminate Spot Instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowest-price, the EC2 Fleet terminates the instances with the highest price per unit. If the allocation strategy is capacity-optimized, the EC2 Fleet terminates the instances in the Spot Instance pools that have the least available Spot Instance capacity. If the allocation strategy is diversified, the EC2 Fleet terminates instances across the Spot Instance pools. Alternatively, you can request that the EC2 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 EC2 Fleet for now, but will use it again later, you can set the target capacity to 0.
2533 */
2534 modifyFleet(callback?: (err: AWSError, data: EC2.Types.ModifyFleetResult) => void): Request<EC2.Types.ModifyFleetResult, AWSError>;
2535 /**
2536 * Modifies the specified attribute of the specified Amazon FPGA Image (AFI).
2537 */
2538 modifyFpgaImageAttribute(params: EC2.Types.ModifyFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyFpgaImageAttributeResult) => void): Request<EC2.Types.ModifyFpgaImageAttributeResult, AWSError>;
2539 /**
2540 * Modifies the specified attribute of the specified Amazon FPGA Image (AFI).
2541 */
2542 modifyFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.ModifyFpgaImageAttributeResult) => void): Request<EC2.Types.ModifyFpgaImageAttributeResult, AWSError>;
2543 /**
2544 * 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. You can also use this API action to modify a Dedicated Host to support either multiple instance types in an instance family, or to support a specific instance type only.
2545 */
2546 modifyHosts(params: EC2.Types.ModifyHostsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyHostsResult) => void): Request<EC2.Types.ModifyHostsResult, AWSError>;
2547 /**
2548 * 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. You can also use this API action to modify a Dedicated Host to support either multiple instance types in an instance family, or to support a specific instance type only.
2549 */
2550 modifyHosts(callback?: (err: AWSError, data: EC2.Types.ModifyHostsResult) => void): Request<EC2.Types.ModifyHostsResult, AWSError>;
2551 /**
2552 * 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.
2553 */
2554 modifyIdFormat(params: EC2.Types.ModifyIdFormatRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2555 /**
2556 * 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.
2557 */
2558 modifyIdFormat(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2559 /**
2560 * 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.
2561 */
2562 modifyIdentityIdFormat(params: EC2.Types.ModifyIdentityIdFormatRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2563 /**
2564 * 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.
2565 */
2566 modifyIdentityIdFormat(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2567 /**
2568 * 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.
2569 */
2570 modifyImageAttribute(params: EC2.Types.ModifyImageAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2571 /**
2572 * 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.
2573 */
2574 modifyImageAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2575 /**
2576 * 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.
2577 */
2578 modifyInstanceAttribute(params: EC2.Types.ModifyInstanceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2579 /**
2580 * 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.
2581 */
2582 modifyInstanceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2583 /**
2584 * 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.
2585 */
2586 modifyInstanceCapacityReservationAttributes(params: EC2.Types.ModifyInstanceCapacityReservationAttributesRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCapacityReservationAttributesResult) => void): Request<EC2.Types.ModifyInstanceCapacityReservationAttributesResult, AWSError>;
2587 /**
2588 * 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.
2589 */
2590 modifyInstanceCapacityReservationAttributes(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCapacityReservationAttributesResult) => void): Request<EC2.Types.ModifyInstanceCapacityReservationAttributesResult, AWSError>;
2591 /**
2592 * Modifies the credit option for CPU usage on a running or stopped burstable performance instance. The credit options are standard and unlimited. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2593 */
2594 modifyInstanceCreditSpecification(params: EC2.Types.ModifyInstanceCreditSpecificationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCreditSpecificationResult) => void): Request<EC2.Types.ModifyInstanceCreditSpecificationResult, AWSError>;
2595 /**
2596 * Modifies the credit option for CPU usage on a running or stopped burstable performance instance. The credit options are standard and unlimited. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2597 */
2598 modifyInstanceCreditSpecification(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCreditSpecificationResult) => void): Request<EC2.Types.ModifyInstanceCreditSpecificationResult, AWSError>;
2599 /**
2600 * Modifies the start time for a scheduled Amazon EC2 instance event.
2601 */
2602 modifyInstanceEventStartTime(params: EC2.Types.ModifyInstanceEventStartTimeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceEventStartTimeResult) => void): Request<EC2.Types.ModifyInstanceEventStartTimeResult, AWSError>;
2603 /**
2604 * Modifies the start time for a scheduled Amazon EC2 instance event.
2605 */
2606 modifyInstanceEventStartTime(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceEventStartTimeResult) => void): Request<EC2.Types.ModifyInstanceEventStartTimeResult, AWSError>;
2607 /**
2608 * Modify the instance metadata parameters on a running or stopped instance. When you modify the parameters on a stopped instance, they are applied when the instance is started. When you modify the parameters on a running instance, the API responds with a state of “pending”. After the parameter modifications are successfully applied to the instance, the state of the modifications changes from “pending” to “applied” in subsequent describe-instances API calls. For more information, see Instance Metadata and User Data.
2609 */
2610 modifyInstanceMetadataOptions(params: EC2.Types.ModifyInstanceMetadataOptionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceMetadataOptionsResult) => void): Request<EC2.Types.ModifyInstanceMetadataOptionsResult, AWSError>;
2611 /**
2612 * Modify the instance metadata parameters on a running or stopped instance. When you modify the parameters on a stopped instance, they are applied when the instance is started. When you modify the parameters on a running instance, the API responds with a state of “pending”. After the parameter modifications are successfully applied to the instance, the state of the modifications changes from “pending” to “applied” in subsequent describe-instances API calls. For more information, see Instance Metadata and User Data.
2613 */
2614 modifyInstanceMetadataOptions(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceMetadataOptionsResult) => void): Request<EC2.Types.ModifyInstanceMetadataOptionsResult, AWSError>;
2615 /**
2616 * 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.
2617 */
2618 modifyInstancePlacement(params: EC2.Types.ModifyInstancePlacementRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstancePlacementResult) => void): Request<EC2.Types.ModifyInstancePlacementResult, AWSError>;
2619 /**
2620 * 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.
2621 */
2622 modifyInstancePlacement(callback?: (err: AWSError, data: EC2.Types.ModifyInstancePlacementResult) => void): Request<EC2.Types.ModifyInstancePlacementResult, AWSError>;
2623 /**
2624 * 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.
2625 */
2626 modifyLaunchTemplate(params: EC2.Types.ModifyLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.ModifyLaunchTemplateResult) => void): Request<EC2.Types.ModifyLaunchTemplateResult, AWSError>;
2627 /**
2628 * 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.
2629 */
2630 modifyLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.ModifyLaunchTemplateResult) => void): Request<EC2.Types.ModifyLaunchTemplateResult, AWSError>;
2631 /**
2632 * 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.
2633 */
2634 modifyNetworkInterfaceAttribute(params: EC2.Types.ModifyNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2635 /**
2636 * 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.
2637 */
2638 modifyNetworkInterfaceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2639 /**
2640 * 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.
2641 */
2642 modifyReservedInstances(params: EC2.Types.ModifyReservedInstancesRequest, callback?: (err: AWSError, data: EC2.Types.ModifyReservedInstancesResult) => void): Request<EC2.Types.ModifyReservedInstancesResult, AWSError>;
2643 /**
2644 * 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.
2645 */
2646 modifyReservedInstances(callback?: (err: AWSError, data: EC2.Types.ModifyReservedInstancesResult) => void): Request<EC2.Types.ModifyReservedInstancesResult, AWSError>;
2647 /**
2648 * 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 operation. If you need to both add and remove account IDs for a snapshot, you must use multiple operations. You can make up to 500 modifications to a snapshot in a single operation. 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.
2649 */
2650 modifySnapshotAttribute(params: EC2.Types.ModifySnapshotAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2651 /**
2652 * 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 operation. If you need to both add and remove account IDs for a snapshot, you must use multiple operations. You can make up to 500 modifications to a snapshot in a single operation. 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.
2653 */
2654 modifySnapshotAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2655 /**
2656 * Modifies the specified Spot Fleet request. You can only modify a Spot Fleet request of type maintain. 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 Instance pool with the lowest price. If the allocation strategy is diversified, the Spot Fleet distributes the instances across the Spot Instance pools. If the allocation strategy is capacityOptimized, Spot Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching. 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 capacityOptimized, the Spot Fleet terminates the instances in the Spot Instance pools that have the least available Spot Instance capacity. If the allocation strategy is diversified, the Spot Fleet terminates instances across the Spot Instance 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.
2657 */
2658 modifySpotFleetRequest(params: EC2.Types.ModifySpotFleetRequestRequest, callback?: (err: AWSError, data: EC2.Types.ModifySpotFleetRequestResponse) => void): Request<EC2.Types.ModifySpotFleetRequestResponse, AWSError>;
2659 /**
2660 * Modifies the specified Spot Fleet request. You can only modify a Spot Fleet request of type maintain. 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 Instance pool with the lowest price. If the allocation strategy is diversified, the Spot Fleet distributes the instances across the Spot Instance pools. If the allocation strategy is capacityOptimized, Spot Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching. 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 capacityOptimized, the Spot Fleet terminates the instances in the Spot Instance pools that have the least available Spot Instance capacity. If the allocation strategy is diversified, the Spot Fleet terminates instances across the Spot Instance 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.
2661 */
2662 modifySpotFleetRequest(callback?: (err: AWSError, data: EC2.Types.ModifySpotFleetRequestResponse) => void): Request<EC2.Types.ModifySpotFleetRequestResponse, AWSError>;
2663 /**
2664 * Modifies a subnet attribute. You can only modify one attribute at a time.
2665 */
2666 modifySubnetAttribute(params: EC2.Types.ModifySubnetAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2667 /**
2668 * Modifies a subnet attribute. You can only modify one attribute at a time.
2669 */
2670 modifySubnetAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2671 /**
2672 * Allows or restricts mirroring network services. By default, Amazon DNS network services are not eligible for Traffic Mirror. Use AddNetworkServices to add network services to a Traffic Mirror filter. When a network service is added to the Traffic Mirror filter, all traffic related to that network service will be mirrored. When you no longer want to mirror network services, use RemoveNetworkServices to remove the network services from the Traffic Mirror filter. For information about filter rule properties, see Network Services in the Traffic Mirroring User Guide .
2673 */
2674 modifyTrafficMirrorFilterNetworkServices(params: EC2.Types.ModifyTrafficMirrorFilterNetworkServicesRequest, callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorFilterNetworkServicesResult) => void): Request<EC2.Types.ModifyTrafficMirrorFilterNetworkServicesResult, AWSError>;
2675 /**
2676 * Allows or restricts mirroring network services. By default, Amazon DNS network services are not eligible for Traffic Mirror. Use AddNetworkServices to add network services to a Traffic Mirror filter. When a network service is added to the Traffic Mirror filter, all traffic related to that network service will be mirrored. When you no longer want to mirror network services, use RemoveNetworkServices to remove the network services from the Traffic Mirror filter. For information about filter rule properties, see Network Services in the Traffic Mirroring User Guide .
2677 */
2678 modifyTrafficMirrorFilterNetworkServices(callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorFilterNetworkServicesResult) => void): Request<EC2.Types.ModifyTrafficMirrorFilterNetworkServicesResult, AWSError>;
2679 /**
2680 * Modifies the specified Traffic Mirror rule. DestinationCidrBlock and SourceCidrBlock must both be an IPv4 range or an IPv6 range.
2681 */
2682 modifyTrafficMirrorFilterRule(params: EC2.Types.ModifyTrafficMirrorFilterRuleRequest, callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.ModifyTrafficMirrorFilterRuleResult, AWSError>;
2683 /**
2684 * Modifies the specified Traffic Mirror rule. DestinationCidrBlock and SourceCidrBlock must both be an IPv4 range or an IPv6 range.
2685 */
2686 modifyTrafficMirrorFilterRule(callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorFilterRuleResult) => void): Request<EC2.Types.ModifyTrafficMirrorFilterRuleResult, AWSError>;
2687 /**
2688 * Modifies a Traffic Mirror session.
2689 */
2690 modifyTrafficMirrorSession(params: EC2.Types.ModifyTrafficMirrorSessionRequest, callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorSessionResult) => void): Request<EC2.Types.ModifyTrafficMirrorSessionResult, AWSError>;
2691 /**
2692 * Modifies a Traffic Mirror session.
2693 */
2694 modifyTrafficMirrorSession(callback?: (err: AWSError, data: EC2.Types.ModifyTrafficMirrorSessionResult) => void): Request<EC2.Types.ModifyTrafficMirrorSessionResult, AWSError>;
2695 /**
2696 * Modifies the specified VPC attachment.
2697 */
2698 modifyTransitGatewayVpcAttachment(params: EC2.Types.ModifyTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.ModifyTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.ModifyTransitGatewayVpcAttachmentResult, AWSError>;
2699 /**
2700 * Modifies the specified VPC attachment.
2701 */
2702 modifyTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.ModifyTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.ModifyTransitGatewayVpcAttachmentResult, AWSError>;
2703 /**
2704 * 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 DescribeVolumesModifications. 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.
2705 */
2706 modifyVolume(params: EC2.Types.ModifyVolumeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVolumeResult) => void): Request<EC2.Types.ModifyVolumeResult, AWSError>;
2707 /**
2708 * 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 DescribeVolumesModifications. 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.
2709 */
2710 modifyVolume(callback?: (err: AWSError, data: EC2.Types.ModifyVolumeResult) => void): Request<EC2.Types.ModifyVolumeResult, AWSError>;
2711 /**
2712 * 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.
2713 */
2714 modifyVolumeAttribute(params: EC2.Types.ModifyVolumeAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2715 /**
2716 * 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.
2717 */
2718 modifyVolumeAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2719 /**
2720 * Modifies the specified attribute of the specified VPC.
2721 */
2722 modifyVpcAttribute(params: EC2.Types.ModifyVpcAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2723 /**
2724 * Modifies the specified attribute of the specified VPC.
2725 */
2726 modifyVpcAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2727 /**
2728 * 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.
2729 */
2730 modifyVpcEndpoint(params: EC2.Types.ModifyVpcEndpointRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointResult) => void): Request<EC2.Types.ModifyVpcEndpointResult, AWSError>;
2731 /**
2732 * 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.
2733 */
2734 modifyVpcEndpoint(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointResult) => void): Request<EC2.Types.ModifyVpcEndpointResult, AWSError>;
2735 /**
2736 * 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.
2737 */
2738 modifyVpcEndpointConnectionNotification(params: EC2.Types.ModifyVpcEndpointConnectionNotificationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.ModifyVpcEndpointConnectionNotificationResult, AWSError>;
2739 /**
2740 * 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.
2741 */
2742 modifyVpcEndpointConnectionNotification(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.ModifyVpcEndpointConnectionNotificationResult, AWSError>;
2743 /**
2744 * 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. If you set or modify the private DNS name, you must prove that you own the private DNS domain name. For more information, see VPC Endpoint Service Private DNS Name Verification in the Amazon Virtual Private Cloud User Guide.
2745 */
2746 modifyVpcEndpointServiceConfiguration(params: EC2.Types.ModifyVpcEndpointServiceConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.ModifyVpcEndpointServiceConfigurationResult, AWSError>;
2747 /**
2748 * 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. If you set or modify the private DNS name, you must prove that you own the private DNS domain name. For more information, see VPC Endpoint Service Private DNS Name Verification in the Amazon Virtual Private Cloud User Guide.
2749 */
2750 modifyVpcEndpointServiceConfiguration(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.ModifyVpcEndpointServiceConfigurationResult, AWSError>;
2751 /**
2752 * 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.
2753 */
2754 modifyVpcEndpointServicePermissions(params: EC2.Types.ModifyVpcEndpointServicePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.ModifyVpcEndpointServicePermissionsResult, AWSError>;
2755 /**
2756 * 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.
2757 */
2758 modifyVpcEndpointServicePermissions(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.ModifyVpcEndpointServicePermissionsResult, AWSError>;
2759 /**
2760 * 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.
2761 */
2762 modifyVpcPeeringConnectionOptions(params: EC2.Types.ModifyVpcPeeringConnectionOptionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcPeeringConnectionOptionsResult) => void): Request<EC2.Types.ModifyVpcPeeringConnectionOptionsResult, AWSError>;
2763 /**
2764 * 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.
2765 */
2766 modifyVpcPeeringConnectionOptions(callback?: (err: AWSError, data: EC2.Types.ModifyVpcPeeringConnectionOptionsResult) => void): Request<EC2.Types.ModifyVpcPeeringConnectionOptionsResult, AWSError>;
2767 /**
2768 * 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.
2769 */
2770 modifyVpcTenancy(params: EC2.Types.ModifyVpcTenancyRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcTenancyResult) => void): Request<EC2.Types.ModifyVpcTenancyResult, AWSError>;
2771 /**
2772 * 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.
2773 */
2774 modifyVpcTenancy(callback?: (err: AWSError, data: EC2.Types.ModifyVpcTenancyResult) => void): Request<EC2.Types.ModifyVpcTenancyResult, AWSError>;
2775 /**
2776 * Modifies the target gateway of an AWS Site-to-Site VPN connection. The following migration options are available: An existing virtual private gateway to a new virtual private gateway An existing virtual private gateway to a transit gateway An existing transit gateway to a new transit gateway An existing transit gateway to a virtual private gateway Before you perform the migration to the new gateway, you must configure the new gateway. Use CreateVpnGateway to create a virtual private gateway, or CreateTransitGateway to create a transit gateway. This step is required when you migrate from a virtual private gateway with static routes to a transit gateway. You must delete the static routes before you migrate to the new gateway. Keep a copy of the static route before you delete it. You will need to add back these routes to the transit gateway after the VPN connection migration is complete. After you migrate to the new gateway, you might need to modify your VPC route table. Use CreateRoute and DeleteRoute to make the changes described in VPN Gateway Target Modification Required VPC Route Table Updates in the AWS Site-to-Site VPN User Guide. When the new gateway is a transit gateway, modify the transit gateway route table to allow traffic between the VPC and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to add the routes. If you deleted VPN static routes, you must add the static routes to the transit gateway route table. After you perform this operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel options remain intact. Your AWS Site-to-Site VPN connection will be temporarily unavailable for a brief period while we provision the new endpoints.
2777 */
2778 modifyVpnConnection(params: EC2.Types.ModifyVpnConnectionRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpnConnectionResult) => void): Request<EC2.Types.ModifyVpnConnectionResult, AWSError>;
2779 /**
2780 * Modifies the target gateway of an AWS Site-to-Site VPN connection. The following migration options are available: An existing virtual private gateway to a new virtual private gateway An existing virtual private gateway to a transit gateway An existing transit gateway to a new transit gateway An existing transit gateway to a virtual private gateway Before you perform the migration to the new gateway, you must configure the new gateway. Use CreateVpnGateway to create a virtual private gateway, or CreateTransitGateway to create a transit gateway. This step is required when you migrate from a virtual private gateway with static routes to a transit gateway. You must delete the static routes before you migrate to the new gateway. Keep a copy of the static route before you delete it. You will need to add back these routes to the transit gateway after the VPN connection migration is complete. After you migrate to the new gateway, you might need to modify your VPC route table. Use CreateRoute and DeleteRoute to make the changes described in VPN Gateway Target Modification Required VPC Route Table Updates in the AWS Site-to-Site VPN User Guide. When the new gateway is a transit gateway, modify the transit gateway route table to allow traffic between the VPC and the AWS Site-to-Site VPN connection. Use CreateTransitGatewayRoute to add the routes. If you deleted VPN static routes, you must add the static routes to the transit gateway route table. After you perform this operation, the AWS VPN endpoint's IP addresses on the AWS side and the tunnel options remain intact. Your AWS Site-to-Site VPN connection will be temporarily unavailable for a brief period while we provision the new endpoints.
2781 */
2782 modifyVpnConnection(callback?: (err: AWSError, data: EC2.Types.ModifyVpnConnectionResult) => void): Request<EC2.Types.ModifyVpnConnectionResult, AWSError>;
2783 /**
2784 * Modifies the VPN tunnel endpoint certificate.
2785 */
2786 modifyVpnTunnelCertificate(params: EC2.Types.ModifyVpnTunnelCertificateRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpnTunnelCertificateResult) => void): Request<EC2.Types.ModifyVpnTunnelCertificateResult, AWSError>;
2787 /**
2788 * Modifies the VPN tunnel endpoint certificate.
2789 */
2790 modifyVpnTunnelCertificate(callback?: (err: AWSError, data: EC2.Types.ModifyVpnTunnelCertificateResult) => void): Request<EC2.Types.ModifyVpnTunnelCertificateResult, AWSError>;
2791 /**
2792 * Modifies the options for a VPN tunnel in an AWS Site-to-Site VPN connection. You can modify multiple options for a tunnel in a single request, but you can only modify one tunnel at a time. For more information, see Site-to-Site VPN Tunnel Options for Your Site-to-Site VPN Connection in the AWS Site-to-Site VPN User Guide.
2793 */
2794 modifyVpnTunnelOptions(params: EC2.Types.ModifyVpnTunnelOptionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpnTunnelOptionsResult) => void): Request<EC2.Types.ModifyVpnTunnelOptionsResult, AWSError>;
2795 /**
2796 * Modifies the options for a VPN tunnel in an AWS Site-to-Site VPN connection. You can modify multiple options for a tunnel in a single request, but you can only modify one tunnel at a time. For more information, see Site-to-Site VPN Tunnel Options for Your Site-to-Site VPN Connection in the AWS Site-to-Site VPN User Guide.
2797 */
2798 modifyVpnTunnelOptions(callback?: (err: AWSError, data: EC2.Types.ModifyVpnTunnelOptionsResult) => void): Request<EC2.Types.ModifyVpnTunnelOptionsResult, AWSError>;
2799 /**
2800 * 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 .
2801 */
2802 monitorInstances(params: EC2.Types.MonitorInstancesRequest, callback?: (err: AWSError, data: EC2.Types.MonitorInstancesResult) => void): Request<EC2.Types.MonitorInstancesResult, AWSError>;
2803 /**
2804 * 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 .
2805 */
2806 monitorInstances(callback?: (err: AWSError, data: EC2.Types.MonitorInstancesResult) => void): Request<EC2.Types.MonitorInstancesResult, AWSError>;
2807 /**
2808 * 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.
2809 */
2810 moveAddressToVpc(params: EC2.Types.MoveAddressToVpcRequest, callback?: (err: AWSError, data: EC2.Types.MoveAddressToVpcResult) => void): Request<EC2.Types.MoveAddressToVpcResult, AWSError>;
2811 /**
2812 * 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.
2813 */
2814 moveAddressToVpc(callback?: (err: AWSError, data: EC2.Types.MoveAddressToVpcResult) => void): Request<EC2.Types.MoveAddressToVpcResult, AWSError>;
2815 /**
2816 * Provisions an IPv4 or IPv6 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 IPv4 address pool, use AllocateAddress with either the specific address from the address pool or the ID of the address pool.
2817 */
2818 provisionByoipCidr(params: EC2.Types.ProvisionByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.ProvisionByoipCidrResult) => void): Request<EC2.Types.ProvisionByoipCidrResult, AWSError>;
2819 /**
2820 * Provisions an IPv4 or IPv6 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 IPv4 address pool, use AllocateAddress with either the specific address from the address pool or the ID of the address pool.
2821 */
2822 provisionByoipCidr(callback?: (err: AWSError, data: EC2.Types.ProvisionByoipCidrResult) => void): Request<EC2.Types.ProvisionByoipCidrResult, AWSError>;
2823 /**
2824 * 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.
2825 */
2826 purchaseHostReservation(params: EC2.Types.PurchaseHostReservationRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseHostReservationResult) => void): Request<EC2.Types.PurchaseHostReservationResult, AWSError>;
2827 /**
2828 * 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.
2829 */
2830 purchaseHostReservation(callback?: (err: AWSError, data: EC2.Types.PurchaseHostReservationResult) => void): Request<EC2.Types.PurchaseHostReservationResult, AWSError>;
2831 /**
2832 * 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. To queue a purchase for a future date and time, specify a purchase time. If you do not specify a purchase time, the default is the current time. For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
2833 */
2834 purchaseReservedInstancesOffering(params: EC2.Types.PurchaseReservedInstancesOfferingRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseReservedInstancesOfferingResult) => void): Request<EC2.Types.PurchaseReservedInstancesOfferingResult, AWSError>;
2835 /**
2836 * 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. To queue a purchase for a future date and time, specify a purchase time. If you do not specify a purchase time, the default is the current time. For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
2837 */
2838 purchaseReservedInstancesOffering(callback?: (err: AWSError, data: EC2.Types.PurchaseReservedInstancesOfferingResult) => void): Request<EC2.Types.PurchaseReservedInstancesOfferingResult, AWSError>;
2839 /**
2840 * Purchases the 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.
2841 */
2842 purchaseScheduledInstances(params: EC2.Types.PurchaseScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseScheduledInstancesResult) => void): Request<EC2.Types.PurchaseScheduledInstancesResult, AWSError>;
2843 /**
2844 * Purchases the 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.
2845 */
2846 purchaseScheduledInstances(callback?: (err: AWSError, data: EC2.Types.PurchaseScheduledInstancesResult) => void): Request<EC2.Types.PurchaseScheduledInstancesResult, AWSError>;
2847 /**
2848 * Requests a reboot of the specified 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.
2849 */
2850 rebootInstances(params: EC2.Types.RebootInstancesRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2851 /**
2852 * Requests a reboot of the specified 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.
2853 */
2854 rebootInstances(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2855 /**
2856 * 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. Windows and 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. To create a new AMI for operating systems that require a billing product code, instead of registering the AMI, do the following to preserve the billing product code association: Launch an instance from an existing AMI with that billing product code. Customize the instance. Create an AMI from the instance using CreateImage. If you purchase a Reserved Instance to apply to an On-Demand Instance that was launched from an AMI with a billing product code, make sure that the Reserved Instance has the matching billing product code. If you purchase a Reserved Instance without the matching billing product code, the Reserved Instance will not be applied to the On-Demand Instance. For information about how to obtain the platform details and billing information of an AMI, see Obtaining Billing Information in the Amazon Elastic Compute Cloud User Guide. 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.
2857 */
2858 registerImage(params: EC2.Types.RegisterImageRequest, callback?: (err: AWSError, data: EC2.Types.RegisterImageResult) => void): Request<EC2.Types.RegisterImageResult, AWSError>;
2859 /**
2860 * 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. Windows and 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. To create a new AMI for operating systems that require a billing product code, instead of registering the AMI, do the following to preserve the billing product code association: Launch an instance from an existing AMI with that billing product code. Customize the instance. Create an AMI from the instance using CreateImage. If you purchase a Reserved Instance to apply to an On-Demand Instance that was launched from an AMI with a billing product code, make sure that the Reserved Instance has the matching billing product code. If you purchase a Reserved Instance without the matching billing product code, the Reserved Instance will not be applied to the On-Demand Instance. For information about how to obtain the platform details and billing information of an AMI, see Obtaining Billing Information in the Amazon Elastic Compute Cloud User Guide. 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.
2861 */
2862 registerImage(callback?: (err: AWSError, data: EC2.Types.RegisterImageResult) => void): Request<EC2.Types.RegisterImageResult, AWSError>;
2863 /**
2864 * Registers members (network interfaces) with the transit gateway multicast group. A member is a network interface associated with a supported EC2 instance that receives multicast traffic. For information about supported instances, see Multicast Consideration in Amazon VPC Transit Gateways. After you add the members, use SearchTransitGatewayMulticastGroups to verify that the members were added to the transit gateway multicast group.
2865 */
2866 registerTransitGatewayMulticastGroupMembers(params: EC2.Types.RegisterTransitGatewayMulticastGroupMembersRequest, callback?: (err: AWSError, data: EC2.Types.RegisterTransitGatewayMulticastGroupMembersResult) => void): Request<EC2.Types.RegisterTransitGatewayMulticastGroupMembersResult, AWSError>;
2867 /**
2868 * Registers members (network interfaces) with the transit gateway multicast group. A member is a network interface associated with a supported EC2 instance that receives multicast traffic. For information about supported instances, see Multicast Consideration in Amazon VPC Transit Gateways. After you add the members, use SearchTransitGatewayMulticastGroups to verify that the members were added to the transit gateway multicast group.
2869 */
2870 registerTransitGatewayMulticastGroupMembers(callback?: (err: AWSError, data: EC2.Types.RegisterTransitGatewayMulticastGroupMembersResult) => void): Request<EC2.Types.RegisterTransitGatewayMulticastGroupMembersResult, AWSError>;
2871 /**
2872 * Registers sources (network interfaces) with the specified transit gateway multicast group. A multicast source is a network interface attached to a supported instance that sends multicast traffic. For information about supported instances, see Multicast Considerations in Amazon VPC Transit Gateways. After you add the source, use SearchTransitGatewayMulticastGroups to verify that the source was added to the multicast group.
2873 */
2874 registerTransitGatewayMulticastGroupSources(params: EC2.Types.RegisterTransitGatewayMulticastGroupSourcesRequest, callback?: (err: AWSError, data: EC2.Types.RegisterTransitGatewayMulticastGroupSourcesResult) => void): Request<EC2.Types.RegisterTransitGatewayMulticastGroupSourcesResult, AWSError>;
2875 /**
2876 * Registers sources (network interfaces) with the specified transit gateway multicast group. A multicast source is a network interface attached to a supported instance that sends multicast traffic. For information about supported instances, see Multicast Considerations in Amazon VPC Transit Gateways. After you add the source, use SearchTransitGatewayMulticastGroups to verify that the source was added to the multicast group.
2877 */
2878 registerTransitGatewayMulticastGroupSources(callback?: (err: AWSError, data: EC2.Types.RegisterTransitGatewayMulticastGroupSourcesResult) => void): Request<EC2.Types.RegisterTransitGatewayMulticastGroupSourcesResult, AWSError>;
2879 /**
2880 * Rejects a transit gateway peering attachment request.
2881 */
2882 rejectTransitGatewayPeeringAttachment(params: EC2.Types.RejectTransitGatewayPeeringAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayPeeringAttachmentResult, AWSError>;
2883 /**
2884 * Rejects a transit gateway peering attachment request.
2885 */
2886 rejectTransitGatewayPeeringAttachment(callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayPeeringAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayPeeringAttachmentResult, AWSError>;
2887 /**
2888 * 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.
2889 */
2890 rejectTransitGatewayVpcAttachment(params: EC2.Types.RejectTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayVpcAttachmentResult, AWSError>;
2891 /**
2892 * 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.
2893 */
2894 rejectTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayVpcAttachmentResult, AWSError>;
2895 /**
2896 * Rejects one or more VPC endpoint connection requests to your VPC endpoint service.
2897 */
2898 rejectVpcEndpointConnections(params: EC2.Types.RejectVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.RejectVpcEndpointConnectionsResult) => void): Request<EC2.Types.RejectVpcEndpointConnectionsResult, AWSError>;
2899 /**
2900 * Rejects one or more VPC endpoint connection requests to your VPC endpoint service.
2901 */
2902 rejectVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.RejectVpcEndpointConnectionsResult) => void): Request<EC2.Types.RejectVpcEndpointConnectionsResult, AWSError>;
2903 /**
2904 * 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.
2905 */
2906 rejectVpcPeeringConnection(params: EC2.Types.RejectVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.RejectVpcPeeringConnectionResult) => void): Request<EC2.Types.RejectVpcPeeringConnectionResult, AWSError>;
2907 /**
2908 * 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.
2909 */
2910 rejectVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.RejectVpcPeeringConnectionResult) => void): Request<EC2.Types.RejectVpcPeeringConnectionResult, AWSError>;
2911 /**
2912 * 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.
2913 */
2914 releaseAddress(params: EC2.Types.ReleaseAddressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2915 /**
2916 * 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.
2917 */
2918 releaseAddress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2919 /**
2920 * 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.
2921 */
2922 releaseHosts(params: EC2.Types.ReleaseHostsRequest, callback?: (err: AWSError, data: EC2.Types.ReleaseHostsResult) => void): Request<EC2.Types.ReleaseHostsResult, AWSError>;
2923 /**
2924 * 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.
2925 */
2926 releaseHosts(callback?: (err: AWSError, data: EC2.Types.ReleaseHostsResult) => void): Request<EC2.Types.ReleaseHostsResult, AWSError>;
2927 /**
2928 * 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.
2929 */
2930 replaceIamInstanceProfileAssociation(params: EC2.Types.ReplaceIamInstanceProfileAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceIamInstanceProfileAssociationResult) => void): Request<EC2.Types.ReplaceIamInstanceProfileAssociationResult, AWSError>;
2931 /**
2932 * 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.
2933 */
2934 replaceIamInstanceProfileAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceIamInstanceProfileAssociationResult) => void): Request<EC2.Types.ReplaceIamInstanceProfileAssociationResult, AWSError>;
2935 /**
2936 * 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.
2937 */
2938 replaceNetworkAclAssociation(params: EC2.Types.ReplaceNetworkAclAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceNetworkAclAssociationResult) => void): Request<EC2.Types.ReplaceNetworkAclAssociationResult, AWSError>;
2939 /**
2940 * 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.
2941 */
2942 replaceNetworkAclAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceNetworkAclAssociationResult) => void): Request<EC2.Types.ReplaceNetworkAclAssociationResult, AWSError>;
2943 /**
2944 * Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
2945 */
2946 replaceNetworkAclEntry(params: EC2.Types.ReplaceNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2947 /**
2948 * Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
2949 */
2950 replaceNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2951 /**
2952 * Replaces an existing route within a route table in a VPC. You must provide only one of the following: internet gateway, virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, egress-only internet gateway, or transit gateway. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
2953 */
2954 replaceRoute(params: EC2.Types.ReplaceRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2955 /**
2956 * Replaces an existing route within a route table in a VPC. You must provide only one of the following: internet gateway, virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, egress-only internet gateway, or transit gateway. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
2957 */
2958 replaceRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2959 /**
2960 * Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation completes, the subnet or gateway uses the routes in the new route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide. You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.
2961 */
2962 replaceRouteTableAssociation(params: EC2.Types.ReplaceRouteTableAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceRouteTableAssociationResult) => void): Request<EC2.Types.ReplaceRouteTableAssociationResult, AWSError>;
2963 /**
2964 * Changes the route table associated with a given subnet, internet gateway, or virtual private gateway in a VPC. After the operation completes, the subnet or gateway uses the routes in the new route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide. You can also use this operation to change which table is the main route table in the VPC. Specify the main route table's association ID and the route table ID of the new main route table.
2965 */
2966 replaceRouteTableAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceRouteTableAssociationResult) => void): Request<EC2.Types.ReplaceRouteTableAssociationResult, AWSError>;
2967 /**
2968 * Replaces the specified route in the specified transit gateway route table.
2969 */
2970 replaceTransitGatewayRoute(params: EC2.Types.ReplaceTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceTransitGatewayRouteResult) => void): Request<EC2.Types.ReplaceTransitGatewayRouteResult, AWSError>;
2971 /**
2972 * Replaces the specified route in the specified transit gateway route table.
2973 */
2974 replaceTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.ReplaceTransitGatewayRouteResult) => void): Request<EC2.Types.ReplaceTransitGatewayRouteResult, AWSError>;
2975 /**
2976 * 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.
2977 */
2978 reportInstanceStatus(params: EC2.Types.ReportInstanceStatusRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2979 /**
2980 * 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.
2981 */
2982 reportInstanceStatus(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2983 /**
2984 * 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 Instance 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 Fleet request and instances launched by the fleet. You cannot tag other resource types in a Spot Fleet request because only the spot-fleet-request and instance resource types are supported. For more information, see Spot Fleet Requests in the Amazon EC2 User Guide for Linux Instances.
2985 */
2986 requestSpotFleet(params: EC2.Types.RequestSpotFleetRequest, callback?: (err: AWSError, data: EC2.Types.RequestSpotFleetResponse) => void): Request<EC2.Types.RequestSpotFleetResponse, AWSError>;
2987 /**
2988 * 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 Instance 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 Fleet request and instances launched by the fleet. You cannot tag other resource types in a Spot Fleet request because only the spot-fleet-request and instance resource types are supported. For more information, see Spot Fleet Requests in the Amazon EC2 User Guide for Linux Instances.
2989 */
2990 requestSpotFleet(callback?: (err: AWSError, data: EC2.Types.RequestSpotFleetResponse) => void): Request<EC2.Types.RequestSpotFleetResponse, AWSError>;
2991 /**
2992 * Creates a Spot Instance request. For more information, see Spot Instance Requests in the Amazon EC2 User Guide for Linux Instances.
2993 */
2994 requestSpotInstances(params: EC2.Types.RequestSpotInstancesRequest, callback?: (err: AWSError, data: EC2.Types.RequestSpotInstancesResult) => void): Request<EC2.Types.RequestSpotInstancesResult, AWSError>;
2995 /**
2996 * Creates a Spot Instance request. For more information, see Spot Instance Requests in the Amazon EC2 User Guide for Linux Instances.
2997 */
2998 requestSpotInstances(callback?: (err: AWSError, data: EC2.Types.RequestSpotInstancesResult) => void): Request<EC2.Types.RequestSpotInstancesResult, AWSError>;
2999 /**
3000 * Resets the default customer master key (CMK) for EBS encryption for your account in this Region to the AWS managed CMK for EBS. After resetting the default CMK to the AWS managed CMK, you can continue to encrypt by a customer managed CMK by specifying it when you create the volume. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
3001 */
3002 resetEbsDefaultKmsKeyId(params: EC2.Types.ResetEbsDefaultKmsKeyIdRequest, callback?: (err: AWSError, data: EC2.Types.ResetEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.ResetEbsDefaultKmsKeyIdResult, AWSError>;
3003 /**
3004 * Resets the default customer master key (CMK) for EBS encryption for your account in this Region to the AWS managed CMK for EBS. After resetting the default CMK to the AWS managed CMK, you can continue to encrypt by a customer managed CMK by specifying it when you create the volume. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
3005 */
3006 resetEbsDefaultKmsKeyId(callback?: (err: AWSError, data: EC2.Types.ResetEbsDefaultKmsKeyIdResult) => void): Request<EC2.Types.ResetEbsDefaultKmsKeyIdResult, AWSError>;
3007 /**
3008 * Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value. You can only reset the load permission attribute.
3009 */
3010 resetFpgaImageAttribute(params: EC2.Types.ResetFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ResetFpgaImageAttributeResult) => void): Request<EC2.Types.ResetFpgaImageAttributeResult, AWSError>;
3011 /**
3012 * Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value. You can only reset the load permission attribute.
3013 */
3014 resetFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.ResetFpgaImageAttributeResult) => void): Request<EC2.Types.ResetFpgaImageAttributeResult, AWSError>;
3015 /**
3016 * Resets an attribute of an AMI to its default value. The productCodes attribute can't be reset.
3017 */
3018 resetImageAttribute(params: EC2.Types.ResetImageAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3019 /**
3020 * Resets an attribute of an AMI to its default value. The productCodes attribute can't be reset.
3021 */
3022 resetImageAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3023 /**
3024 * 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.
3025 */
3026 resetInstanceAttribute(params: EC2.Types.ResetInstanceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3027 /**
3028 * 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.
3029 */
3030 resetInstanceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3031 /**
3032 * Resets a network interface attribute. You can specify only one attribute at a time.
3033 */
3034 resetNetworkInterfaceAttribute(params: EC2.Types.ResetNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3035 /**
3036 * Resets a network interface attribute. You can specify only one attribute at a time.
3037 */
3038 resetNetworkInterfaceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3039 /**
3040 * 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.
3041 */
3042 resetSnapshotAttribute(params: EC2.Types.ResetSnapshotAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3043 /**
3044 * 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.
3045 */
3046 resetSnapshotAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3047 /**
3048 * 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.
3049 */
3050 restoreAddressToClassic(params: EC2.Types.RestoreAddressToClassicRequest, callback?: (err: AWSError, data: EC2.Types.RestoreAddressToClassicResult) => void): Request<EC2.Types.RestoreAddressToClassicResult, AWSError>;
3051 /**
3052 * 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.
3053 */
3054 restoreAddressToClassic(callback?: (err: AWSError, data: EC2.Types.RestoreAddressToClassicResult) => void): Request<EC2.Types.RestoreAddressToClassicResult, AWSError>;
3055 /**
3056 * Removes an ingress authorization rule from a Client VPN endpoint.
3057 */
3058 revokeClientVpnIngress(params: EC2.Types.RevokeClientVpnIngressRequest, callback?: (err: AWSError, data: EC2.Types.RevokeClientVpnIngressResult) => void): Request<EC2.Types.RevokeClientVpnIngressResult, AWSError>;
3059 /**
3060 * Removes an ingress authorization rule from a Client VPN endpoint.
3061 */
3062 revokeClientVpnIngress(callback?: (err: AWSError, data: EC2.Types.RevokeClientVpnIngressResult) => void): Request<EC2.Types.RevokeClientVpnIngressResult, AWSError>;
3063 /**
3064 * [VPC only] Removes the specified 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.
3065 */
3066 revokeSecurityGroupEgress(params: EC2.Types.RevokeSecurityGroupEgressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3067 /**
3068 * [VPC only] Removes the specified 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.
3069 */
3070 revokeSecurityGroupEgress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3071 /**
3072 * Removes the specified 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 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.
3073 */
3074 revokeSecurityGroupIngress(params: EC2.Types.RevokeSecurityGroupIngressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3075 /**
3076 * Removes the specified 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 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.
3077 */
3078 revokeSecurityGroupIngress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3079 /**
3080 * 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.
3081 */
3082 runInstances(params: EC2.Types.RunInstancesRequest, callback?: (err: AWSError, data: EC2.Types.Reservation) => void): Request<EC2.Types.Reservation, AWSError>;
3083 /**
3084 * 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.
3085 */
3086 runInstances(callback?: (err: AWSError, data: EC2.Types.Reservation) => void): Request<EC2.Types.Reservation, AWSError>;
3087 /**
3088 * 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.
3089 */
3090 runScheduledInstances(params: EC2.Types.RunScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.RunScheduledInstancesResult) => void): Request<EC2.Types.RunScheduledInstancesResult, AWSError>;
3091 /**
3092 * 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.
3093 */
3094 runScheduledInstances(callback?: (err: AWSError, data: EC2.Types.RunScheduledInstancesResult) => void): Request<EC2.Types.RunScheduledInstancesResult, AWSError>;
3095 /**
3096 * Searches for routes in the specified local gateway route table.
3097 */
3098 searchLocalGatewayRoutes(params: EC2.Types.SearchLocalGatewayRoutesRequest, callback?: (err: AWSError, data: EC2.Types.SearchLocalGatewayRoutesResult) => void): Request<EC2.Types.SearchLocalGatewayRoutesResult, AWSError>;
3099 /**
3100 * Searches for routes in the specified local gateway route table.
3101 */
3102 searchLocalGatewayRoutes(callback?: (err: AWSError, data: EC2.Types.SearchLocalGatewayRoutesResult) => void): Request<EC2.Types.SearchLocalGatewayRoutesResult, AWSError>;
3103 /**
3104 * Searches one or more transit gateway multicast groups and returns the group membership information.
3105 */
3106 searchTransitGatewayMulticastGroups(params: EC2.Types.SearchTransitGatewayMulticastGroupsRequest, callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayMulticastGroupsResult) => void): Request<EC2.Types.SearchTransitGatewayMulticastGroupsResult, AWSError>;
3107 /**
3108 * Searches one or more transit gateway multicast groups and returns the group membership information.
3109 */
3110 searchTransitGatewayMulticastGroups(callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayMulticastGroupsResult) => void): Request<EC2.Types.SearchTransitGatewayMulticastGroupsResult, AWSError>;
3111 /**
3112 * Searches for routes in the specified transit gateway route table.
3113 */
3114 searchTransitGatewayRoutes(params: EC2.Types.SearchTransitGatewayRoutesRequest, callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayRoutesResult) => void): Request<EC2.Types.SearchTransitGatewayRoutesResult, AWSError>;
3115 /**
3116 * Searches for routes in the specified transit gateway route table.
3117 */
3118 searchTransitGatewayRoutes(callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayRoutesResult) => void): Request<EC2.Types.SearchTransitGatewayRoutesResult, AWSError>;
3119 /**
3120 * Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger a kernel panic (on Linux instances), or a blue screen/stop error (on Windows instances). For instances based on Intel and AMD processors, the interrupt is received as a non-maskable interrupt (NMI). In general, the operating system crashes and reboots when a kernel panic or stop error is triggered. The operating system can also be configured to perform diagnostic tasks, such as generating a memory dump file, loading a secondary kernel, or obtaining a call trace. Before sending a diagnostic interrupt to your instance, ensure that its operating system is configured to perform the required diagnostic tasks. For more information about configuring your operating system to generate a crash dump when a kernel panic or stop error occurs, see Send a Diagnostic Interrupt (Linux instances) or Send a Diagnostic Interrupt (Windows instances).
3121 */
3122 sendDiagnosticInterrupt(params: EC2.Types.SendDiagnosticInterruptRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3123 /**
3124 * Sends a diagnostic interrupt to the specified Amazon EC2 instance to trigger a kernel panic (on Linux instances), or a blue screen/stop error (on Windows instances). For instances based on Intel and AMD processors, the interrupt is received as a non-maskable interrupt (NMI). In general, the operating system crashes and reboots when a kernel panic or stop error is triggered. The operating system can also be configured to perform diagnostic tasks, such as generating a memory dump file, loading a secondary kernel, or obtaining a call trace. Before sending a diagnostic interrupt to your instance, ensure that its operating system is configured to perform the required diagnostic tasks. For more information about configuring your operating system to generate a crash dump when a kernel panic or stop error occurs, see Send a Diagnostic Interrupt (Linux instances) or Send a Diagnostic Interrupt (Windows instances).
3125 */
3126 sendDiagnosticInterrupt(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3127 /**
3128 * 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.
3129 */
3130 startInstances(params: EC2.Types.StartInstancesRequest, callback?: (err: AWSError, data: EC2.Types.StartInstancesResult) => void): Request<EC2.Types.StartInstancesResult, AWSError>;
3131 /**
3132 * 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.
3133 */
3134 startInstances(callback?: (err: AWSError, data: EC2.Types.StartInstancesResult) => void): Request<EC2.Types.StartInstancesResult, AWSError>;
3135 /**
3136 * Initiates the verification process to prove that the service provider owns the private DNS name domain for the endpoint service. The service provider must successfully perform the verification before the consumer can use the name to access the service. Before the service provider runs this command, they must add a record to the DNS server. For more information, see Adding a TXT Record to Your Domain's DNS Server in the Amazon VPC User Guide.
3137 */
3138 startVpcEndpointServicePrivateDnsVerification(params: EC2.Types.StartVpcEndpointServicePrivateDnsVerificationRequest, callback?: (err: AWSError, data: EC2.Types.StartVpcEndpointServicePrivateDnsVerificationResult) => void): Request<EC2.Types.StartVpcEndpointServicePrivateDnsVerificationResult, AWSError>;
3139 /**
3140 * Initiates the verification process to prove that the service provider owns the private DNS name domain for the endpoint service. The service provider must successfully perform the verification before the consumer can use the name to access the service. Before the service provider runs this command, they must add a record to the DNS server. For more information, see Adding a TXT Record to Your Domain's DNS Server in the Amazon VPC User Guide.
3141 */
3142 startVpcEndpointServicePrivateDnsVerification(callback?: (err: AWSError, data: EC2.Types.StartVpcEndpointServicePrivateDnsVerificationResult) => void): Request<EC2.Types.StartVpcEndpointServicePrivateDnsVerificationResult, AWSError>;
3143 /**
3144 * 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 stop or hibernate instance store-backed instances. You can't use the Stop action to hibernate Spot Instances, but you can specify that Amazon EC2 should hibernate Spot Instances when they are interrupted. For more information, 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.
3145 */
3146 stopInstances(params: EC2.Types.StopInstancesRequest, callback?: (err: AWSError, data: EC2.Types.StopInstancesResult) => void): Request<EC2.Types.StopInstancesResult, AWSError>;
3147 /**
3148 * 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 stop or hibernate instance store-backed instances. You can't use the Stop action to hibernate Spot Instances, but you can specify that Amazon EC2 should hibernate Spot Instances when they are interrupted. For more information, 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.
3149 */
3150 stopInstances(callback?: (err: AWSError, data: EC2.Types.StopInstancesResult) => void): Request<EC2.Types.StopInstancesResult, AWSError>;
3151 /**
3152 * 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.
3153 */
3154 terminateClientVpnConnections(params: EC2.Types.TerminateClientVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.TerminateClientVpnConnectionsResult) => void): Request<EC2.Types.TerminateClientVpnConnectionsResult, AWSError>;
3155 /**
3156 * 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.
3157 */
3158 terminateClientVpnConnections(callback?: (err: AWSError, data: EC2.Types.TerminateClientVpnConnectionsResult) => void): Request<EC2.Types.TerminateClientVpnConnectionsResult, AWSError>;
3159 /**
3160 * Shuts down the specified 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.
3161 */
3162 terminateInstances(params: EC2.Types.TerminateInstancesRequest, callback?: (err: AWSError, data: EC2.Types.TerminateInstancesResult) => void): Request<EC2.Types.TerminateInstancesResult, AWSError>;
3163 /**
3164 * Shuts down the specified 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.
3165 */
3166 terminateInstances(callback?: (err: AWSError, data: EC2.Types.TerminateInstancesResult) => void): Request<EC2.Types.TerminateInstancesResult, AWSError>;
3167 /**
3168 * Unassigns one or more IPv6 addresses from a network interface.
3169 */
3170 unassignIpv6Addresses(params: EC2.Types.UnassignIpv6AddressesRequest, callback?: (err: AWSError, data: EC2.Types.UnassignIpv6AddressesResult) => void): Request<EC2.Types.UnassignIpv6AddressesResult, AWSError>;
3171 /**
3172 * Unassigns one or more IPv6 addresses from a network interface.
3173 */
3174 unassignIpv6Addresses(callback?: (err: AWSError, data: EC2.Types.UnassignIpv6AddressesResult) => void): Request<EC2.Types.UnassignIpv6AddressesResult, AWSError>;
3175 /**
3176 * Unassigns one or more secondary private IP addresses from a network interface.
3177 */
3178 unassignPrivateIpAddresses(params: EC2.Types.UnassignPrivateIpAddressesRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3179 /**
3180 * Unassigns one or more secondary private IP addresses from a network interface.
3181 */
3182 unassignPrivateIpAddresses(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
3183 /**
3184 * Disables detailed monitoring for a running instance. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.
3185 */
3186 unmonitorInstances(params: EC2.Types.UnmonitorInstancesRequest, callback?: (err: AWSError, data: EC2.Types.UnmonitorInstancesResult) => void): Request<EC2.Types.UnmonitorInstancesResult, AWSError>;
3187 /**
3188 * Disables detailed monitoring for a running instance. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.
3189 */
3190 unmonitorInstances(callback?: (err: AWSError, data: EC2.Types.UnmonitorInstancesResult) => void): Request<EC2.Types.UnmonitorInstancesResult, AWSError>;
3191 /**
3192 * [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.
3193 */
3194 updateSecurityGroupRuleDescriptionsEgress(params: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressRequest, callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult, AWSError>;
3195 /**
3196 * [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.
3197 */
3198 updateSecurityGroupRuleDescriptionsEgress(callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult, AWSError>;
3199 /**
3200 * 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.
3201 */
3202 updateSecurityGroupRuleDescriptionsIngress(params: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressRequest, callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult, AWSError>;
3203 /**
3204 * 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.
3205 */
3206 updateSecurityGroupRuleDescriptionsIngress(callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult, AWSError>;
3207 /**
3208 * Stops advertising an 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.
3209 */
3210 withdrawByoipCidr(params: EC2.Types.WithdrawByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.WithdrawByoipCidrResult) => void): Request<EC2.Types.WithdrawByoipCidrResult, AWSError>;
3211 /**
3212 * Stops advertising an 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.
3213 */
3214 withdrawByoipCidr(callback?: (err: AWSError, data: EC2.Types.WithdrawByoipCidrResult) => void): Request<EC2.Types.WithdrawByoipCidrResult, AWSError>;
3215 /**
3216 * Waits for the instanceExists state by periodically calling the underlying EC2.describeInstancesoperation every 5 seconds (at most 40 times).
3217 */
3218 waitFor(state: "instanceExists", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3219 /**
3220 * Waits for the instanceExists state by periodically calling the underlying EC2.describeInstancesoperation every 5 seconds (at most 40 times).
3221 */
3222 waitFor(state: "instanceExists", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3223 /**
3224 * Waits for the bundleTaskComplete state by periodically calling the underlying EC2.describeBundleTasksoperation every 15 seconds (at most 40 times).
3225 */
3226 waitFor(state: "bundleTaskComplete", params: EC2.Types.DescribeBundleTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
3227 /**
3228 * Waits for the bundleTaskComplete state by periodically calling the underlying EC2.describeBundleTasksoperation every 15 seconds (at most 40 times).
3229 */
3230 waitFor(state: "bundleTaskComplete", callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
3231 /**
3232 * Waits for the conversionTaskCancelled state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3233 */
3234 waitFor(state: "conversionTaskCancelled", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3235 /**
3236 * Waits for the conversionTaskCancelled state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3237 */
3238 waitFor(state: "conversionTaskCancelled", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3239 /**
3240 * Waits for the conversionTaskCompleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3241 */
3242 waitFor(state: "conversionTaskCompleted", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3243 /**
3244 * Waits for the conversionTaskCompleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3245 */
3246 waitFor(state: "conversionTaskCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3247 /**
3248 * Waits for the conversionTaskDeleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3249 */
3250 waitFor(state: "conversionTaskDeleted", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3251 /**
3252 * Waits for the conversionTaskDeleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
3253 */
3254 waitFor(state: "conversionTaskDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
3255 /**
3256 * Waits for the customerGatewayAvailable state by periodically calling the underlying EC2.describeCustomerGatewaysoperation every 15 seconds (at most 40 times).
3257 */
3258 waitFor(state: "customerGatewayAvailable", params: EC2.Types.DescribeCustomerGatewaysRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
3259 /**
3260 * Waits for the customerGatewayAvailable state by periodically calling the underlying EC2.describeCustomerGatewaysoperation every 15 seconds (at most 40 times).
3261 */
3262 waitFor(state: "customerGatewayAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
3263 /**
3264 * Waits for the exportTaskCancelled state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
3265 */
3266 waitFor(state: "exportTaskCancelled", params: EC2.Types.DescribeExportTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
3267 /**
3268 * Waits for the exportTaskCancelled state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
3269 */
3270 waitFor(state: "exportTaskCancelled", callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
3271 /**
3272 * Waits for the exportTaskCompleted state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
3273 */
3274 waitFor(state: "exportTaskCompleted", params: EC2.Types.DescribeExportTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
3275 /**
3276 * Waits for the exportTaskCompleted state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
3277 */
3278 waitFor(state: "exportTaskCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
3279 /**
3280 * Waits for the imageExists state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
3281 */
3282 waitFor(state: "imageExists", params: EC2.Types.DescribeImagesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
3283 /**
3284 * Waits for the imageExists state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
3285 */
3286 waitFor(state: "imageExists", callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
3287 /**
3288 * Waits for the imageAvailable state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
3289 */
3290 waitFor(state: "imageAvailable", params: EC2.Types.DescribeImagesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
3291 /**
3292 * Waits for the imageAvailable state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
3293 */
3294 waitFor(state: "imageAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
3295 /**
3296 * Waits for the instanceRunning state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3297 */
3298 waitFor(state: "instanceRunning", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3299 /**
3300 * Waits for the instanceRunning state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3301 */
3302 waitFor(state: "instanceRunning", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3303 /**
3304 * Waits for the instanceStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
3305 */
3306 waitFor(state: "instanceStatusOk", params: EC2.Types.DescribeInstanceStatusRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
3307 /**
3308 * Waits for the instanceStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
3309 */
3310 waitFor(state: "instanceStatusOk", callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
3311 /**
3312 * Waits for the instanceStopped state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3313 */
3314 waitFor(state: "instanceStopped", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3315 /**
3316 * Waits for the instanceStopped state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3317 */
3318 waitFor(state: "instanceStopped", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3319 /**
3320 * Waits for the instanceTerminated state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3321 */
3322 waitFor(state: "instanceTerminated", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3323 /**
3324 * Waits for the instanceTerminated state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
3325 */
3326 waitFor(state: "instanceTerminated", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
3327 /**
3328 * Waits for the keyPairExists state by periodically calling the underlying EC2.describeKeyPairsoperation every 5 seconds (at most 6 times).
3329 */
3330 waitFor(state: "keyPairExists", params: EC2.Types.DescribeKeyPairsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
3331 /**
3332 * Waits for the keyPairExists state by periodically calling the underlying EC2.describeKeyPairsoperation every 5 seconds (at most 6 times).
3333 */
3334 waitFor(state: "keyPairExists", callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
3335 /**
3336 * Waits for the natGatewayAvailable state by periodically calling the underlying EC2.describeNatGatewaysoperation every 15 seconds (at most 40 times).
3337 */
3338 waitFor(state: "natGatewayAvailable", params: EC2.Types.DescribeNatGatewaysRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
3339 /**
3340 * Waits for the natGatewayAvailable state by periodically calling the underlying EC2.describeNatGatewaysoperation every 15 seconds (at most 40 times).
3341 */
3342 waitFor(state: "natGatewayAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
3343 /**
3344 * Waits for the networkInterfaceAvailable state by periodically calling the underlying EC2.describeNetworkInterfacesoperation every 20 seconds (at most 10 times).
3345 */
3346 waitFor(state: "networkInterfaceAvailable", params: EC2.Types.DescribeNetworkInterfacesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
3347 /**
3348 * Waits for the networkInterfaceAvailable state by periodically calling the underlying EC2.describeNetworkInterfacesoperation every 20 seconds (at most 10 times).
3349 */
3350 waitFor(state: "networkInterfaceAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
3351 /**
3352 * Waits for the passwordDataAvailable state by periodically calling the underlying EC2.getPasswordDataoperation every 15 seconds (at most 40 times).
3353 */
3354 waitFor(state: "passwordDataAvailable", params: EC2.Types.GetPasswordDataRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
3355 /**
3356 * Waits for the passwordDataAvailable state by periodically calling the underlying EC2.getPasswordDataoperation every 15 seconds (at most 40 times).
3357 */
3358 waitFor(state: "passwordDataAvailable", callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
3359 /**
3360 * Waits for the snapshotCompleted state by periodically calling the underlying EC2.describeSnapshotsoperation every 15 seconds (at most 40 times).
3361 */
3362 waitFor(state: "snapshotCompleted", params: EC2.Types.DescribeSnapshotsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
3363 /**
3364 * Waits for the snapshotCompleted state by periodically calling the underlying EC2.describeSnapshotsoperation every 15 seconds (at most 40 times).
3365 */
3366 waitFor(state: "snapshotCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
3367 /**
3368 * Waits for the securityGroupExists state by periodically calling the underlying EC2.describeSecurityGroupsoperation every 5 seconds (at most 6 times).
3369 */
3370 waitFor(state: "securityGroupExists", params: EC2.Types.DescribeSecurityGroupsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
3371 /**
3372 * Waits for the securityGroupExists state by periodically calling the underlying EC2.describeSecurityGroupsoperation every 5 seconds (at most 6 times).
3373 */
3374 waitFor(state: "securityGroupExists", callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
3375 /**
3376 * Waits for the spotInstanceRequestFulfilled state by periodically calling the underlying EC2.describeSpotInstanceRequestsoperation every 15 seconds (at most 40 times).
3377 */
3378 waitFor(state: "spotInstanceRequestFulfilled", params: EC2.Types.DescribeSpotInstanceRequestsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
3379 /**
3380 * Waits for the spotInstanceRequestFulfilled state by periodically calling the underlying EC2.describeSpotInstanceRequestsoperation every 15 seconds (at most 40 times).
3381 */
3382 waitFor(state: "spotInstanceRequestFulfilled", callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
3383 /**
3384 * Waits for the subnetAvailable state by periodically calling the underlying EC2.describeSubnetsoperation every 15 seconds (at most 40 times).
3385 */
3386 waitFor(state: "subnetAvailable", params: EC2.Types.DescribeSubnetsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
3387 /**
3388 * Waits for the subnetAvailable state by periodically calling the underlying EC2.describeSubnetsoperation every 15 seconds (at most 40 times).
3389 */
3390 waitFor(state: "subnetAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
3391 /**
3392 * Waits for the systemStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
3393 */
3394 waitFor(state: "systemStatusOk", params: EC2.Types.DescribeInstanceStatusRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
3395 /**
3396 * Waits for the systemStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
3397 */
3398 waitFor(state: "systemStatusOk", callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
3399 /**
3400 * Waits for the volumeAvailable state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3401 */
3402 waitFor(state: "volumeAvailable", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3403 /**
3404 * Waits for the volumeAvailable state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3405 */
3406 waitFor(state: "volumeAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3407 /**
3408 * Waits for the volumeDeleted state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3409 */
3410 waitFor(state: "volumeDeleted", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3411 /**
3412 * Waits for the volumeDeleted state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3413 */
3414 waitFor(state: "volumeDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3415 /**
3416 * Waits for the volumeInUse state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3417 */
3418 waitFor(state: "volumeInUse", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3419 /**
3420 * Waits for the volumeInUse state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
3421 */
3422 waitFor(state: "volumeInUse", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
3423 /**
3424 * Waits for the vpcAvailable state by periodically calling the underlying EC2.describeVpcsoperation every 15 seconds (at most 40 times).
3425 */
3426 waitFor(state: "vpcAvailable", params: EC2.Types.DescribeVpcsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
3427 /**
3428 * Waits for the vpcAvailable state by periodically calling the underlying EC2.describeVpcsoperation every 15 seconds (at most 40 times).
3429 */
3430 waitFor(state: "vpcAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
3431 /**
3432 * Waits for the vpcExists state by periodically calling the underlying EC2.describeVpcsoperation every 1 seconds (at most 5 times).
3433 */
3434 waitFor(state: "vpcExists", params: EC2.Types.DescribeVpcsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
3435 /**
3436 * Waits for the vpcExists state by periodically calling the underlying EC2.describeVpcsoperation every 1 seconds (at most 5 times).
3437 */
3438 waitFor(state: "vpcExists", callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
3439 /**
3440 * Waits for the vpnConnectionAvailable state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
3441 */
3442 waitFor(state: "vpnConnectionAvailable", params: EC2.Types.DescribeVpnConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
3443 /**
3444 * Waits for the vpnConnectionAvailable state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
3445 */
3446 waitFor(state: "vpnConnectionAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
3447 /**
3448 * Waits for the vpnConnectionDeleted state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
3449 */
3450 waitFor(state: "vpnConnectionDeleted", params: EC2.Types.DescribeVpnConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
3451 /**
3452 * Waits for the vpnConnectionDeleted state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
3453 */
3454 waitFor(state: "vpnConnectionDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
3455 /**
3456 * Waits for the vpcPeeringConnectionExists state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
3457 */
3458 waitFor(state: "vpcPeeringConnectionExists", params: EC2.Types.DescribeVpcPeeringConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
3459 /**
3460 * Waits for the vpcPeeringConnectionExists state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
3461 */
3462 waitFor(state: "vpcPeeringConnectionExists", callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
3463 /**
3464 * Waits for the vpcPeeringConnectionDeleted state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
3465 */
3466 waitFor(state: "vpcPeeringConnectionDeleted", params: EC2.Types.DescribeVpcPeeringConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
3467 /**
3468 * Waits for the vpcPeeringConnectionDeleted state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
3469 */
3470 waitFor(state: "vpcPeeringConnectionDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
3471}
3472declare namespace EC2 {
3473 export interface AcceptReservedInstancesExchangeQuoteRequest {
3474 /**
3475 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3476 */
3477 DryRun?: Boolean;
3478 /**
3479 * The IDs of the Convertible Reserved Instances to exchange for another Convertible Reserved Instance of the same or higher value.
3480 */
3481 ReservedInstanceIds: ReservedInstanceIdSet;
3482 /**
3483 * The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.
3484 */
3485 TargetConfigurations?: TargetConfigurationRequestSet;
3486 }
3487 export interface AcceptReservedInstancesExchangeQuoteResult {
3488 /**
3489 * The ID of the successful exchange.
3490 */
3491 ExchangeId?: String;
3492 }
3493 export interface AcceptTransitGatewayPeeringAttachmentRequest {
3494 /**
3495 * The ID of the transit gateway attachment.
3496 */
3497 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
3498 /**
3499 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3500 */
3501 DryRun?: Boolean;
3502 }
3503 export interface AcceptTransitGatewayPeeringAttachmentResult {
3504 /**
3505 * The transit gateway peering attachment.
3506 */
3507 TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment;
3508 }
3509 export interface AcceptTransitGatewayVpcAttachmentRequest {
3510 /**
3511 * The ID of the attachment.
3512 */
3513 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
3514 /**
3515 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3516 */
3517 DryRun?: Boolean;
3518 }
3519 export interface AcceptTransitGatewayVpcAttachmentResult {
3520 /**
3521 * The VPC attachment.
3522 */
3523 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
3524 }
3525 export interface AcceptVpcEndpointConnectionsRequest {
3526 /**
3527 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3528 */
3529 DryRun?: Boolean;
3530 /**
3531 * The ID of the VPC endpoint service.
3532 */
3533 ServiceId: VpcEndpointServiceId;
3534 /**
3535 * The IDs of one or more interface VPC endpoints.
3536 */
3537 VpcEndpointIds: VpcEndpointIdList;
3538 }
3539 export interface AcceptVpcEndpointConnectionsResult {
3540 /**
3541 * Information about the interface endpoints that were not accepted, if applicable.
3542 */
3543 Unsuccessful?: UnsuccessfulItemSet;
3544 }
3545 export interface AcceptVpcPeeringConnectionRequest {
3546 /**
3547 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3548 */
3549 DryRun?: Boolean;
3550 /**
3551 * The ID of the VPC peering connection. You must specify this parameter in the request.
3552 */
3553 VpcPeeringConnectionId?: VpcPeeringConnectionId;
3554 }
3555 export interface AcceptVpcPeeringConnectionResult {
3556 /**
3557 * Information about the VPC peering connection.
3558 */
3559 VpcPeeringConnection?: VpcPeeringConnection;
3560 }
3561 export interface AccountAttribute {
3562 /**
3563 * The name of the account attribute.
3564 */
3565 AttributeName?: String;
3566 /**
3567 * The values for the account attribute.
3568 */
3569 AttributeValues?: AccountAttributeValueList;
3570 }
3571 export type AccountAttributeList = AccountAttribute[];
3572 export type AccountAttributeName = "supported-platforms"|"default-vpc"|string;
3573 export type AccountAttributeNameStringList = AccountAttributeName[];
3574 export interface AccountAttributeValue {
3575 /**
3576 * The value of the attribute.
3577 */
3578 AttributeValue?: String;
3579 }
3580 export type AccountAttributeValueList = AccountAttributeValue[];
3581 export interface ActiveInstance {
3582 /**
3583 * The ID of the instance.
3584 */
3585 InstanceId?: String;
3586 /**
3587 * The instance type.
3588 */
3589 InstanceType?: String;
3590 /**
3591 * The ID of the Spot Instance request.
3592 */
3593 SpotInstanceRequestId?: String;
3594 /**
3595 * 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.
3596 */
3597 InstanceHealth?: InstanceHealthStatus;
3598 }
3599 export type ActiveInstanceSet = ActiveInstance[];
3600 export type ActivityStatus = "error"|"pending_fulfillment"|"pending_termination"|"fulfilled"|string;
3601 export interface Address {
3602 /**
3603 * The ID of the instance that the address is associated with (if any).
3604 */
3605 InstanceId?: String;
3606 /**
3607 * The Elastic IP address.
3608 */
3609 PublicIp?: String;
3610 /**
3611 * The ID representing the allocation of the address for use with EC2-VPC.
3612 */
3613 AllocationId?: String;
3614 /**
3615 * The ID representing the association of the address with an instance in a VPC.
3616 */
3617 AssociationId?: String;
3618 /**
3619 * Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).
3620 */
3621 Domain?: DomainType;
3622 /**
3623 * The ID of the network interface.
3624 */
3625 NetworkInterfaceId?: String;
3626 /**
3627 * The ID of the AWS account that owns the network interface.
3628 */
3629 NetworkInterfaceOwnerId?: String;
3630 /**
3631 * The private IP address associated with the Elastic IP address.
3632 */
3633 PrivateIpAddress?: String;
3634 /**
3635 * Any tags assigned to the Elastic IP address.
3636 */
3637 Tags?: TagList;
3638 /**
3639 * The ID of an address pool.
3640 */
3641 PublicIpv4Pool?: String;
3642 /**
3643 * The name of the location from which the IP address is advertised.
3644 */
3645 NetworkBorderGroup?: String;
3646 /**
3647 * The customer-owned IP address.
3648 */
3649 CustomerOwnedIp?: String;
3650 /**
3651 * The ID of the customer-owned address pool.
3652 */
3653 CustomerOwnedIpv4Pool?: String;
3654 }
3655 export type AddressList = Address[];
3656 export interface AdvertiseByoipCidrRequest {
3657 /**
3658 * The 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.
3659 */
3660 Cidr: String;
3661 /**
3662 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3663 */
3664 DryRun?: Boolean;
3665 }
3666 export interface AdvertiseByoipCidrResult {
3667 /**
3668 * Information about the address range.
3669 */
3670 ByoipCidr?: ByoipCidr;
3671 }
3672 export type Affinity = "default"|"host"|string;
3673 export interface AllocateAddressRequest {
3674 /**
3675 * 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.
3676 */
3677 Domain?: DomainType;
3678 /**
3679 * [EC2-VPC] The Elastic IP address to recover or an IPv4 address from an address pool.
3680 */
3681 Address?: String;
3682 /**
3683 * 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.
3684 */
3685 PublicIpv4Pool?: String;
3686 /**
3687 * The location from which the IP address is advertised. Use this parameter to limit the address to this location. A network border group is a unique set of Availability Zones or Local Zones from where AWS advertises IP addresses and limits the addresses to the group. IP addresses cannot move between network border groups. Use DescribeAvailabilityZones to view the network border groups. You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 classic, you will receive an InvalidParameterCombination error. For more information, see Error Codes.
3688 */
3689 NetworkBorderGroup?: String;
3690 /**
3691 * The ID of a customer-owned address pool. Use this parameter to let Amazon EC2 select an address from the address pool. Alternatively, specify a specific address from the address pool.
3692 */
3693 CustomerOwnedIpv4Pool?: String;
3694 /**
3695 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3696 */
3697 DryRun?: Boolean;
3698 }
3699 export interface AllocateAddressResult {
3700 /**
3701 * The Elastic IP address.
3702 */
3703 PublicIp?: String;
3704 /**
3705 * [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
3706 */
3707 AllocationId?: String;
3708 /**
3709 * The ID of an address pool.
3710 */
3711 PublicIpv4Pool?: String;
3712 /**
3713 * The location from which the IP address is advertised.
3714 */
3715 NetworkBorderGroup?: String;
3716 /**
3717 * Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).
3718 */
3719 Domain?: DomainType;
3720 /**
3721 * The customer-owned IP address.
3722 */
3723 CustomerOwnedIp?: String;
3724 /**
3725 * The ID of the customer-owned address pool.
3726 */
3727 CustomerOwnedIpv4Pool?: String;
3728 }
3729 export interface AllocateHostsRequest {
3730 /**
3731 * Indicates whether the host accepts any untargeted instance launches that match its instance type configuration, or if it only accepts Host tenancy instance launches that specify its unique host ID. For more information, see Understanding Instance Placement and Host Affinity in the Amazon EC2 User Guide for Linux Instances. Default: on
3732 */
3733 AutoPlacement?: AutoPlacement;
3734 /**
3735 * The Availability Zone in which to allocate the Dedicated Host.
3736 */
3737 AvailabilityZone: String;
3738 /**
3739 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
3740 */
3741 ClientToken?: String;
3742 /**
3743 * Specifies the instance type to be supported by the Dedicated Hosts. If you specify an instance type, the Dedicated Hosts support instances of the specified instance type only. If you want the Dedicated Hosts to support multiple instance types in a specific instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the same request.
3744 */
3745 InstanceType?: String;
3746 /**
3747 * Specifies the instance family to be supported by the Dedicated Hosts. If you specify an instance family, the Dedicated Hosts support multiple instance types within that instance family. If you want the Dedicated Hosts to support a specific instance type only, omit this parameter and specify InstanceType instead. You cannot specify InstanceFamily and InstanceType in the same request.
3748 */
3749 InstanceFamily?: String;
3750 /**
3751 * The number of Dedicated Hosts to allocate to your account with these parameters.
3752 */
3753 Quantity: Integer;
3754 /**
3755 * The tags to apply to the Dedicated Host during creation.
3756 */
3757 TagSpecifications?: TagSpecificationList;
3758 /**
3759 * Indicates whether to enable or disable host recovery for the Dedicated Host. Host recovery is disabled by default. For more information, see Host Recovery in the Amazon Elastic Compute Cloud User Guide. Default: off
3760 */
3761 HostRecovery?: HostRecovery;
3762 }
3763 export interface AllocateHostsResult {
3764 /**
3765 * The ID of the allocated Dedicated Host. This is used to launch an instance onto a specific host.
3766 */
3767 HostIds?: ResponseHostIdList;
3768 }
3769 export type AllocationId = string;
3770 export type AllocationIdList = AllocationId[];
3771 export type AllocationState = "available"|"under-assessment"|"permanent-failure"|"released"|"released-permanent-failure"|"pending"|string;
3772 export type AllocationStrategy = "lowestPrice"|"diversified"|"capacityOptimized"|string;
3773 export interface AllowedPrincipal {
3774 /**
3775 * The type of principal.
3776 */
3777 PrincipalType?: PrincipalType;
3778 /**
3779 * The Amazon Resource Name (ARN) of the principal.
3780 */
3781 Principal?: String;
3782 }
3783 export type AllowedPrincipalSet = AllowedPrincipal[];
3784 export type AllowsMultipleInstanceTypes = "on"|"off"|string;
3785 export interface ApplySecurityGroupsToClientVpnTargetNetworkRequest {
3786 /**
3787 * The ID of the Client VPN endpoint.
3788 */
3789 ClientVpnEndpointId: ClientVpnEndpointId;
3790 /**
3791 * The ID of the VPC in which the associated target network is located.
3792 */
3793 VpcId: VpcId;
3794 /**
3795 * 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.
3796 */
3797 SecurityGroupIds: ClientVpnSecurityGroupIdSet;
3798 /**
3799 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3800 */
3801 DryRun?: Boolean;
3802 }
3803 export interface ApplySecurityGroupsToClientVpnTargetNetworkResult {
3804 /**
3805 * The IDs of the applied security groups.
3806 */
3807 SecurityGroupIds?: ClientVpnSecurityGroupIdSet;
3808 }
3809 export type ArchitectureType = "i386"|"x86_64"|"arm64"|string;
3810 export type ArchitectureTypeList = ArchitectureType[];
3811 export type ArchitectureValues = "i386"|"x86_64"|"arm64"|string;
3812 export interface AssignIpv6AddressesRequest {
3813 /**
3814 * 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.
3815 */
3816 Ipv6AddressCount?: Integer;
3817 /**
3818 * 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.
3819 */
3820 Ipv6Addresses?: Ipv6AddressList;
3821 /**
3822 * The ID of the network interface.
3823 */
3824 NetworkInterfaceId: NetworkInterfaceId;
3825 }
3826 export interface AssignIpv6AddressesResult {
3827 /**
3828 * The IPv6 addresses assigned to the network interface.
3829 */
3830 AssignedIpv6Addresses?: Ipv6AddressList;
3831 /**
3832 * The ID of the network interface.
3833 */
3834 NetworkInterfaceId?: String;
3835 }
3836 export interface AssignPrivateIpAddressesRequest {
3837 /**
3838 * 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.
3839 */
3840 AllowReassignment?: Boolean;
3841 /**
3842 * The ID of the network interface.
3843 */
3844 NetworkInterfaceId: NetworkInterfaceId;
3845 /**
3846 * 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.
3847 */
3848 PrivateIpAddresses?: PrivateIpAddressStringList;
3849 /**
3850 * The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.
3851 */
3852 SecondaryPrivateIpAddressCount?: Integer;
3853 }
3854 export interface AssignPrivateIpAddressesResult {
3855 /**
3856 * The ID of the network interface.
3857 */
3858 NetworkInterfaceId?: String;
3859 /**
3860 * The private IP addresses assigned to the network interface.
3861 */
3862 AssignedPrivateIpAddresses?: AssignedPrivateIpAddressList;
3863 }
3864 export interface AssignedPrivateIpAddress {
3865 /**
3866 * The private IP address assigned to the network interface.
3867 */
3868 PrivateIpAddress?: String;
3869 }
3870 export type AssignedPrivateIpAddressList = AssignedPrivateIpAddress[];
3871 export interface AssociateAddressRequest {
3872 /**
3873 * [EC2-VPC] The allocation ID. This is required for EC2-VPC.
3874 */
3875 AllocationId?: AllocationId;
3876 /**
3877 * 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.
3878 */
3879 InstanceId?: InstanceId;
3880 /**
3881 * The Elastic IP address to associate with the instance. This is required for EC2-Classic.
3882 */
3883 PublicIp?: String;
3884 /**
3885 * [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.
3886 */
3887 AllowReassociation?: Boolean;
3888 /**
3889 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3890 */
3891 DryRun?: Boolean;
3892 /**
3893 * [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both.
3894 */
3895 NetworkInterfaceId?: NetworkInterfaceId;
3896 /**
3897 * [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.
3898 */
3899 PrivateIpAddress?: String;
3900 }
3901 export interface AssociateAddressResult {
3902 /**
3903 * [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.
3904 */
3905 AssociationId?: String;
3906 }
3907 export interface AssociateClientVpnTargetNetworkRequest {
3908 /**
3909 * The ID of the Client VPN endpoint.
3910 */
3911 ClientVpnEndpointId: ClientVpnEndpointId;
3912 /**
3913 * The ID of the subnet to associate with the Client VPN endpoint.
3914 */
3915 SubnetId: SubnetId;
3916 /**
3917 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
3918 */
3919 ClientToken?: String;
3920 /**
3921 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3922 */
3923 DryRun?: Boolean;
3924 }
3925 export interface AssociateClientVpnTargetNetworkResult {
3926 /**
3927 * The unique ID of the target network association.
3928 */
3929 AssociationId?: String;
3930 /**
3931 * The current state of the target network association.
3932 */
3933 Status?: AssociationStatus;
3934 }
3935 export interface AssociateDhcpOptionsRequest {
3936 /**
3937 * The ID of the DHCP options set, or default to associate no DHCP options with the VPC.
3938 */
3939 DhcpOptionsId: DefaultingDhcpOptionsId;
3940 /**
3941 * The ID of the VPC.
3942 */
3943 VpcId: VpcId;
3944 /**
3945 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3946 */
3947 DryRun?: Boolean;
3948 }
3949 export interface AssociateIamInstanceProfileRequest {
3950 /**
3951 * The IAM instance profile.
3952 */
3953 IamInstanceProfile: IamInstanceProfileSpecification;
3954 /**
3955 * The ID of the instance.
3956 */
3957 InstanceId: InstanceId;
3958 }
3959 export interface AssociateIamInstanceProfileResult {
3960 /**
3961 * Information about the IAM instance profile association.
3962 */
3963 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
3964 }
3965 export interface AssociateRouteTableRequest {
3966 /**
3967 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
3968 */
3969 DryRun?: Boolean;
3970 /**
3971 * The ID of the route table.
3972 */
3973 RouteTableId: RouteTableId;
3974 /**
3975 * The ID of the subnet.
3976 */
3977 SubnetId?: SubnetId;
3978 /**
3979 * The ID of the internet gateway or virtual private gateway.
3980 */
3981 GatewayId?: RouteGatewayId;
3982 }
3983 export interface AssociateRouteTableResult {
3984 /**
3985 * The route table association ID. This ID is required for disassociating the route table.
3986 */
3987 AssociationId?: String;
3988 /**
3989 * The state of the association.
3990 */
3991 AssociationState?: RouteTableAssociationState;
3992 }
3993 export interface AssociateSubnetCidrBlockRequest {
3994 /**
3995 * The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix length.
3996 */
3997 Ipv6CidrBlock: String;
3998 /**
3999 * The ID of your subnet.
4000 */
4001 SubnetId: SubnetId;
4002 }
4003 export interface AssociateSubnetCidrBlockResult {
4004 /**
4005 * Information about the IPv6 CIDR block association.
4006 */
4007 Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation;
4008 /**
4009 * The ID of the subnet.
4010 */
4011 SubnetId?: String;
4012 }
4013 export interface AssociateTransitGatewayMulticastDomainRequest {
4014 /**
4015 * The ID of the transit gateway multicast domain.
4016 */
4017 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
4018 /**
4019 * The ID of the transit gateway attachment to associate with the transit gateway multicast domain.
4020 */
4021 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
4022 /**
4023 * The IDs of the subnets to associate with the transit gateway multicast domain.
4024 */
4025 SubnetIds?: ValueStringList;
4026 /**
4027 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4028 */
4029 DryRun?: Boolean;
4030 }
4031 export interface AssociateTransitGatewayMulticastDomainResult {
4032 /**
4033 * Information about the transit gateway multicast domain associations.
4034 */
4035 Associations?: TransitGatewayMulticastDomainAssociations;
4036 }
4037 export interface AssociateTransitGatewayRouteTableRequest {
4038 /**
4039 * The ID of the transit gateway route table.
4040 */
4041 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
4042 /**
4043 * The ID of the attachment.
4044 */
4045 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
4046 /**
4047 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4048 */
4049 DryRun?: Boolean;
4050 }
4051 export interface AssociateTransitGatewayRouteTableResult {
4052 /**
4053 * The ID of the association.
4054 */
4055 Association?: TransitGatewayAssociation;
4056 }
4057 export interface AssociateVpcCidrBlockRequest {
4058 /**
4059 * 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.
4060 */
4061 AmazonProvidedIpv6CidrBlock?: Boolean;
4062 /**
4063 * An IPv4 CIDR block to associate with the VPC.
4064 */
4065 CidrBlock?: String;
4066 /**
4067 * The ID of the VPC.
4068 */
4069 VpcId: VpcId;
4070 /**
4071 * The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the CiDR block to this location. You must set AmazonProvidedIpv6CidrBlock to true to use this parameter. You can have one IPv6 CIDR block association per network border group.
4072 */
4073 Ipv6CidrBlockNetworkBorderGroup?: String;
4074 /**
4075 * The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
4076 */
4077 Ipv6Pool?: Ipv6PoolEc2Id;
4078 /**
4079 * An IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request. To let Amazon choose the IPv6 CIDR block for you, omit this parameter.
4080 */
4081 Ipv6CidrBlock?: String;
4082 }
4083 export interface AssociateVpcCidrBlockResult {
4084 /**
4085 * Information about the IPv6 CIDR block association.
4086 */
4087 Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation;
4088 /**
4089 * Information about the IPv4 CIDR block association.
4090 */
4091 CidrBlockAssociation?: VpcCidrBlockAssociation;
4092 /**
4093 * The ID of the VPC.
4094 */
4095 VpcId?: String;
4096 }
4097 export type AssociatedNetworkType = "vpc"|string;
4098 export interface AssociatedTargetNetwork {
4099 /**
4100 * The ID of the subnet.
4101 */
4102 NetworkId?: String;
4103 /**
4104 * The target network type.
4105 */
4106 NetworkType?: AssociatedNetworkType;
4107 }
4108 export type AssociatedTargetNetworkSet = AssociatedTargetNetwork[];
4109 export type AssociationIdList = IamInstanceProfileAssociationId[];
4110 export interface AssociationStatus {
4111 /**
4112 * The state of the target network association.
4113 */
4114 Code?: AssociationStatusCode;
4115 /**
4116 * A message about the status of the target network association, if applicable.
4117 */
4118 Message?: String;
4119 }
4120 export type AssociationStatusCode = "associating"|"associated"|"association-failed"|"disassociating"|"disassociated"|string;
4121 export interface AttachClassicLinkVpcRequest {
4122 /**
4123 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4124 */
4125 DryRun?: Boolean;
4126 /**
4127 * The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.
4128 */
4129 Groups: GroupIdStringList;
4130 /**
4131 * The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.
4132 */
4133 InstanceId: InstanceId;
4134 /**
4135 * The ID of a ClassicLink-enabled VPC.
4136 */
4137 VpcId: VpcId;
4138 }
4139 export interface AttachClassicLinkVpcResult {
4140 /**
4141 * Returns true if the request succeeds; otherwise, it returns an error.
4142 */
4143 Return?: Boolean;
4144 }
4145 export interface AttachInternetGatewayRequest {
4146 /**
4147 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4148 */
4149 DryRun?: Boolean;
4150 /**
4151 * The ID of the internet gateway.
4152 */
4153 InternetGatewayId: InternetGatewayId;
4154 /**
4155 * The ID of the VPC.
4156 */
4157 VpcId: VpcId;
4158 }
4159 export interface AttachNetworkInterfaceRequest {
4160 /**
4161 * The index of the device for the network interface attachment.
4162 */
4163 DeviceIndex: Integer;
4164 /**
4165 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4166 */
4167 DryRun?: Boolean;
4168 /**
4169 * The ID of the instance.
4170 */
4171 InstanceId: InstanceId;
4172 /**
4173 * The ID of the network interface.
4174 */
4175 NetworkInterfaceId: NetworkInterfaceId;
4176 }
4177 export interface AttachNetworkInterfaceResult {
4178 /**
4179 * The ID of the network interface attachment.
4180 */
4181 AttachmentId?: String;
4182 }
4183 export interface AttachVolumeRequest {
4184 /**
4185 * The device name (for example, /dev/sdh or xvdh).
4186 */
4187 Device: String;
4188 /**
4189 * The ID of the instance.
4190 */
4191 InstanceId: InstanceId;
4192 /**
4193 * The ID of the EBS volume. The volume and instance must be within the same Availability Zone.
4194 */
4195 VolumeId: VolumeId;
4196 /**
4197 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4198 */
4199 DryRun?: Boolean;
4200 }
4201 export interface AttachVpnGatewayRequest {
4202 /**
4203 * The ID of the VPC.
4204 */
4205 VpcId: VpcId;
4206 /**
4207 * The ID of the virtual private gateway.
4208 */
4209 VpnGatewayId: VpnGatewayId;
4210 /**
4211 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4212 */
4213 DryRun?: Boolean;
4214 }
4215 export interface AttachVpnGatewayResult {
4216 /**
4217 * Information about the attachment.
4218 */
4219 VpcAttachment?: VpcAttachment;
4220 }
4221 export type AttachmentStatus = "attaching"|"attached"|"detaching"|"detached"|string;
4222 export interface AttributeBooleanValue {
4223 /**
4224 * The attribute value. The valid values are true or false.
4225 */
4226 Value?: Boolean;
4227 }
4228 export interface AttributeValue {
4229 /**
4230 * The attribute value. The value is case-sensitive.
4231 */
4232 Value?: String;
4233 }
4234 export interface AuthorizationRule {
4235 /**
4236 * The ID of the Client VPN endpoint with which the authorization rule is associated.
4237 */
4238 ClientVpnEndpointId?: String;
4239 /**
4240 * A brief description of the authorization rule.
4241 */
4242 Description?: String;
4243 /**
4244 * The ID of the Active Directory group to which the authorization rule grants access.
4245 */
4246 GroupId?: String;
4247 /**
4248 * Indicates whether the authorization rule grants access to all clients.
4249 */
4250 AccessAll?: Boolean;
4251 /**
4252 * The IPv4 address range, in CIDR notation, of the network to which the authorization rule applies.
4253 */
4254 DestinationCidr?: String;
4255 /**
4256 * The current state of the authorization rule.
4257 */
4258 Status?: ClientVpnAuthorizationRuleStatus;
4259 }
4260 export type AuthorizationRuleSet = AuthorizationRule[];
4261 export interface AuthorizeClientVpnIngressRequest {
4262 /**
4263 * The ID of the Client VPN endpoint.
4264 */
4265 ClientVpnEndpointId: ClientVpnEndpointId;
4266 /**
4267 * The IPv4 address range, in CIDR notation, of the network for which access is being authorized.
4268 */
4269 TargetNetworkCidr: String;
4270 /**
4271 * The ID of the Active Directory group to grant access.
4272 */
4273 AccessGroupId?: String;
4274 /**
4275 * Indicates whether to grant access to all clients. Use true to grant all clients who successfully establish a VPN connection access to the network.
4276 */
4277 AuthorizeAllGroups?: Boolean;
4278 /**
4279 * A brief description of the authorization rule.
4280 */
4281 Description?: String;
4282 /**
4283 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
4284 */
4285 ClientToken?: String;
4286 /**
4287 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4288 */
4289 DryRun?: Boolean;
4290 }
4291 export interface AuthorizeClientVpnIngressResult {
4292 /**
4293 * The current state of the authorization rule.
4294 */
4295 Status?: ClientVpnAuthorizationRuleStatus;
4296 }
4297 export interface AuthorizeSecurityGroupEgressRequest {
4298 /**
4299 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4300 */
4301 DryRun?: Boolean;
4302 /**
4303 * The ID of the security group.
4304 */
4305 GroupId: SecurityGroupId;
4306 /**
4307 * The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.
4308 */
4309 IpPermissions?: IpPermissionList;
4310 /**
4311 * Not supported. Use a set of IP permissions to specify the CIDR.
4312 */
4313 CidrIp?: String;
4314 /**
4315 * Not supported. Use a set of IP permissions to specify the port.
4316 */
4317 FromPort?: Integer;
4318 /**
4319 * Not supported. Use a set of IP permissions to specify the protocol name or number.
4320 */
4321 IpProtocol?: String;
4322 /**
4323 * Not supported. Use a set of IP permissions to specify the port.
4324 */
4325 ToPort?: Integer;
4326 /**
4327 * Not supported. Use a set of IP permissions to specify a destination security group.
4328 */
4329 SourceSecurityGroupName?: String;
4330 /**
4331 * Not supported. Use a set of IP permissions to specify a destination security group.
4332 */
4333 SourceSecurityGroupOwnerId?: String;
4334 }
4335 export interface AuthorizeSecurityGroupIngressRequest {
4336 /**
4337 * The IPv4 address range, in CIDR format. You can't specify this parameter when specifying a source security group. To specify an IPv6 address range, use a set of IP permissions. Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
4338 */
4339 CidrIp?: String;
4340 /**
4341 * 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 types. If you specify all ICMP types, you must specify all codes. Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
4342 */
4343 FromPort?: Integer;
4344 /**
4345 * 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.
4346 */
4347 GroupId?: SecurityGroupId;
4348 /**
4349 * [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.
4350 */
4351 GroupName?: SecurityGroupName;
4352 /**
4353 * The sets of IP permissions.
4354 */
4355 IpPermissions?: IpPermissionList;
4356 /**
4357 * The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). To specify icmpv6, use a set of IP permissions. [VPC only] Use -1 to specify all protocols. If you specify -1 or a protocol other than tcp, udp, or icmp, traffic on all ports is allowed, regardless of any ports you specify. Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
4358 */
4359 IpProtocol?: String;
4360 /**
4361 * [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.
4362 */
4363 SourceSecurityGroupName?: String;
4364 /**
4365 * [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.
4366 */
4367 SourceSecurityGroupOwnerId?: String;
4368 /**
4369 * 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 codes. If you specify all ICMP types, you must specify all codes. Alternatively, use a set of IP permissions to specify multiple rules and a description for the rule.
4370 */
4371 ToPort?: Integer;
4372 /**
4373 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4374 */
4375 DryRun?: Boolean;
4376 }
4377 export type AutoAcceptSharedAttachmentsValue = "enable"|"disable"|string;
4378 export type AutoPlacement = "on"|"off"|string;
4379 export type AutoRecoveryFlag = boolean;
4380 export interface AvailabilityZone {
4381 /**
4382 * The state of the Availability Zone or Local Zone.
4383 */
4384 State?: AvailabilityZoneState;
4385 /**
4386 * For Availability Zones, this parameter always has the value of opt-in-not-required. For Local Zones, this parameter is the opt in status. The possible values are opted-in, and not-opted-in.
4387 */
4388 OptInStatus?: AvailabilityZoneOptInStatus;
4389 /**
4390 * Any messages about the Availability Zone or Local Zone.
4391 */
4392 Messages?: AvailabilityZoneMessageList;
4393 /**
4394 * The name of the Region.
4395 */
4396 RegionName?: String;
4397 /**
4398 * The name of the Availability Zone or Local Zone.
4399 */
4400 ZoneName?: String;
4401 /**
4402 * The ID of the Availability Zone or Local Zone.
4403 */
4404 ZoneId?: String;
4405 /**
4406 * For Availability Zones, this parameter has the same value as the Region name. For Local Zones, the name of the associated group, for example us-west-2-lax-1.
4407 */
4408 GroupName?: String;
4409 /**
4410 * The name of the location from which the address is advertised.
4411 */
4412 NetworkBorderGroup?: String;
4413 }
4414 export type AvailabilityZoneList = AvailabilityZone[];
4415 export interface AvailabilityZoneMessage {
4416 /**
4417 * The message about the Availability Zone or Local Zone.
4418 */
4419 Message?: String;
4420 }
4421 export type AvailabilityZoneMessageList = AvailabilityZoneMessage[];
4422 export type AvailabilityZoneOptInStatus = "opt-in-not-required"|"opted-in"|"not-opted-in"|string;
4423 export type AvailabilityZoneState = "available"|"information"|"impaired"|"unavailable"|string;
4424 export type AvailabilityZoneStringList = String[];
4425 export interface AvailableCapacity {
4426 /**
4427 * The number of instances that can be launched onto the Dedicated Host depending on the host's available capacity. For Dedicated Hosts that support multiple instance types, this parameter represents the number of instances for each instance size that is supported on the host.
4428 */
4429 AvailableInstanceCapacity?: AvailableInstanceCapacityList;
4430 /**
4431 * The number of vCPUs available for launching instances onto the Dedicated Host.
4432 */
4433 AvailableVCpus?: Integer;
4434 }
4435 export type AvailableInstanceCapacityList = InstanceCapacity[];
4436 export type BareMetalFlag = boolean;
4437 export type BatchState = "submitted"|"active"|"cancelled"|"failed"|"cancelled_running"|"cancelled_terminating"|"modifying"|string;
4438 export type BillingProductList = String[];
4439 export type _Blob = Buffer|Uint8Array|Blob|string;
4440 export interface BlobAttributeValue {
4441 Value?: _Blob;
4442 }
4443 export interface BlockDeviceMapping {
4444 /**
4445 * The device name (for example, /dev/sdh or xvdh).
4446 */
4447 DeviceName?: String;
4448 /**
4449 * 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.
4450 */
4451 VirtualName?: String;
4452 /**
4453 * Parameters used to automatically set up EBS volumes when the instance is launched.
4454 */
4455 Ebs?: EbsBlockDevice;
4456 /**
4457 * Suppresses the specified device included in the block device mapping of the AMI.
4458 */
4459 NoDevice?: String;
4460 }
4461 export type BlockDeviceMappingList = BlockDeviceMapping[];
4462 export type BlockDeviceMappingRequestList = BlockDeviceMapping[];
4463 export type Boolean = boolean;
4464 export type BundleId = string;
4465 export type BundleIdStringList = BundleId[];
4466 export interface BundleInstanceRequest {
4467 /**
4468 * The ID of the instance to bundle. Type: String Default: None Required: Yes
4469 */
4470 InstanceId: InstanceId;
4471 /**
4472 * 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.
4473 */
4474 Storage: Storage;
4475 /**
4476 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4477 */
4478 DryRun?: Boolean;
4479 }
4480 export interface BundleInstanceResult {
4481 /**
4482 * Information about the bundle task.
4483 */
4484 BundleTask?: BundleTask;
4485 }
4486 export interface BundleTask {
4487 /**
4488 * The ID of the bundle task.
4489 */
4490 BundleId?: String;
4491 /**
4492 * If the task fails, a description of the error.
4493 */
4494 BundleTaskError?: BundleTaskError;
4495 /**
4496 * The ID of the instance associated with this bundle task.
4497 */
4498 InstanceId?: String;
4499 /**
4500 * The level of task completion, as a percent (for example, 20%).
4501 */
4502 Progress?: String;
4503 /**
4504 * The time this task started.
4505 */
4506 StartTime?: DateTime;
4507 /**
4508 * The state of the task.
4509 */
4510 State?: BundleTaskState;
4511 /**
4512 * The Amazon S3 storage locations.
4513 */
4514 Storage?: Storage;
4515 /**
4516 * The time of the most recent update for the task.
4517 */
4518 UpdateTime?: DateTime;
4519 }
4520 export interface BundleTaskError {
4521 /**
4522 * The error code.
4523 */
4524 Code?: String;
4525 /**
4526 * The error message.
4527 */
4528 Message?: String;
4529 }
4530 export type BundleTaskList = BundleTask[];
4531 export type BundleTaskState = "pending"|"waiting-for-shutdown"|"bundling"|"storing"|"cancelling"|"complete"|"failed"|string;
4532 export type BurstablePerformanceFlag = boolean;
4533 export interface ByoipCidr {
4534 /**
4535 * The address range, in CIDR notation.
4536 */
4537 Cidr?: String;
4538 /**
4539 * The description of the address range.
4540 */
4541 Description?: String;
4542 /**
4543 * Upon success, contains the ID of the address pool. Otherwise, contains an error message.
4544 */
4545 StatusMessage?: String;
4546 /**
4547 * The state of the address pool.
4548 */
4549 State?: ByoipCidrState;
4550 }
4551 export type ByoipCidrSet = ByoipCidr[];
4552 export type ByoipCidrState = "advertised"|"deprovisioned"|"failed-deprovision"|"failed-provision"|"pending-deprovision"|"pending-provision"|"provisioned"|"provisioned-not-publicly-advertisable"|string;
4553 export type CancelBatchErrorCode = "fleetRequestIdDoesNotExist"|"fleetRequestIdMalformed"|"fleetRequestNotInCancellableState"|"unexpectedError"|string;
4554 export interface CancelBundleTaskRequest {
4555 /**
4556 * The ID of the bundle task.
4557 */
4558 BundleId: BundleId;
4559 /**
4560 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4561 */
4562 DryRun?: Boolean;
4563 }
4564 export interface CancelBundleTaskResult {
4565 /**
4566 * Information about the bundle task.
4567 */
4568 BundleTask?: BundleTask;
4569 }
4570 export interface CancelCapacityReservationRequest {
4571 /**
4572 * The ID of the Capacity Reservation to be cancelled.
4573 */
4574 CapacityReservationId: CapacityReservationId;
4575 /**
4576 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4577 */
4578 DryRun?: Boolean;
4579 }
4580 export interface CancelCapacityReservationResult {
4581 /**
4582 * Returns true if the request succeeds; otherwise, it returns an error.
4583 */
4584 Return?: Boolean;
4585 }
4586 export interface CancelConversionRequest {
4587 /**
4588 * The ID of the conversion task.
4589 */
4590 ConversionTaskId: ConversionTaskId;
4591 /**
4592 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4593 */
4594 DryRun?: Boolean;
4595 /**
4596 * The reason for canceling the conversion task.
4597 */
4598 ReasonMessage?: String;
4599 }
4600 export interface CancelExportTaskRequest {
4601 /**
4602 * The ID of the export task. This is the ID returned by CreateInstanceExportTask.
4603 */
4604 ExportTaskId: ExportVmTaskId;
4605 }
4606 export interface CancelImportTaskRequest {
4607 /**
4608 * The reason for canceling the task.
4609 */
4610 CancelReason?: String;
4611 /**
4612 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4613 */
4614 DryRun?: Boolean;
4615 /**
4616 * The ID of the import image or import snapshot task to be canceled.
4617 */
4618 ImportTaskId?: ImportTaskId;
4619 }
4620 export interface CancelImportTaskResult {
4621 /**
4622 * The ID of the task being canceled.
4623 */
4624 ImportTaskId?: String;
4625 /**
4626 * The current state of the task being canceled.
4627 */
4628 PreviousState?: String;
4629 /**
4630 * The current state of the task being canceled.
4631 */
4632 State?: String;
4633 }
4634 export interface CancelReservedInstancesListingRequest {
4635 /**
4636 * The ID of the Reserved Instance listing.
4637 */
4638 ReservedInstancesListingId: ReservedInstancesListingId;
4639 }
4640 export interface CancelReservedInstancesListingResult {
4641 /**
4642 * The Reserved Instance listing.
4643 */
4644 ReservedInstancesListings?: ReservedInstancesListingList;
4645 }
4646 export interface CancelSpotFleetRequestsError {
4647 /**
4648 * The error code.
4649 */
4650 Code?: CancelBatchErrorCode;
4651 /**
4652 * The description for the error code.
4653 */
4654 Message?: String;
4655 }
4656 export interface CancelSpotFleetRequestsErrorItem {
4657 /**
4658 * The error.
4659 */
4660 Error?: CancelSpotFleetRequestsError;
4661 /**
4662 * The ID of the Spot Fleet request.
4663 */
4664 SpotFleetRequestId?: String;
4665 }
4666 export type CancelSpotFleetRequestsErrorSet = CancelSpotFleetRequestsErrorItem[];
4667 export interface CancelSpotFleetRequestsRequest {
4668 /**
4669 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4670 */
4671 DryRun?: Boolean;
4672 /**
4673 * The IDs of the Spot Fleet requests.
4674 */
4675 SpotFleetRequestIds: SpotFleetRequestIdList;
4676 /**
4677 * Indicates whether to terminate instances for a Spot Fleet request if it is canceled successfully.
4678 */
4679 TerminateInstances: Boolean;
4680 }
4681 export interface CancelSpotFleetRequestsResponse {
4682 /**
4683 * Information about the Spot Fleet requests that are successfully canceled.
4684 */
4685 SuccessfulFleetRequests?: CancelSpotFleetRequestsSuccessSet;
4686 /**
4687 * Information about the Spot Fleet requests that are not successfully canceled.
4688 */
4689 UnsuccessfulFleetRequests?: CancelSpotFleetRequestsErrorSet;
4690 }
4691 export interface CancelSpotFleetRequestsSuccessItem {
4692 /**
4693 * The current state of the Spot Fleet request.
4694 */
4695 CurrentSpotFleetRequestState?: BatchState;
4696 /**
4697 * The previous state of the Spot Fleet request.
4698 */
4699 PreviousSpotFleetRequestState?: BatchState;
4700 /**
4701 * The ID of the Spot Fleet request.
4702 */
4703 SpotFleetRequestId?: String;
4704 }
4705 export type CancelSpotFleetRequestsSuccessSet = CancelSpotFleetRequestsSuccessItem[];
4706 export type CancelSpotInstanceRequestState = "active"|"open"|"closed"|"cancelled"|"completed"|string;
4707 export interface CancelSpotInstanceRequestsRequest {
4708 /**
4709 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
4710 */
4711 DryRun?: Boolean;
4712 /**
4713 * One or more Spot Instance request IDs.
4714 */
4715 SpotInstanceRequestIds: SpotInstanceRequestIdList;
4716 }
4717 export interface CancelSpotInstanceRequestsResult {
4718 /**
4719 * One or more Spot Instance requests.
4720 */
4721 CancelledSpotInstanceRequests?: CancelledSpotInstanceRequestList;
4722 }
4723 export interface CancelledSpotInstanceRequest {
4724 /**
4725 * The ID of the Spot Instance request.
4726 */
4727 SpotInstanceRequestId?: String;
4728 /**
4729 * The state of the Spot Instance request.
4730 */
4731 State?: CancelSpotInstanceRequestState;
4732 }
4733 export type CancelledSpotInstanceRequestList = CancelledSpotInstanceRequest[];
4734 export interface CapacityReservation {
4735 /**
4736 * The ID of the Capacity Reservation.
4737 */
4738 CapacityReservationId?: String;
4739 /**
4740 * The ID of the AWS account that owns the Capacity Reservation.
4741 */
4742 OwnerId?: String;
4743 /**
4744 * The Amazon Resource Name (ARN) of the Capacity Reservation.
4745 */
4746 CapacityReservationArn?: String;
4747 /**
4748 * The Availability Zone ID of the Capacity Reservation.
4749 */
4750 AvailabilityZoneId?: String;
4751 /**
4752 * The type of instance for which the Capacity Reservation reserves capacity.
4753 */
4754 InstanceType?: String;
4755 /**
4756 * The type of operating system for which the Capacity Reservation reserves capacity.
4757 */
4758 InstancePlatform?: CapacityReservationInstancePlatform;
4759 /**
4760 * The Availability Zone in which the capacity is reserved.
4761 */
4762 AvailabilityZone?: String;
4763 /**
4764 * 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.
4765 */
4766 Tenancy?: CapacityReservationTenancy;
4767 /**
4768 * The total number of instances for which the Capacity Reservation reserves capacity.
4769 */
4770 TotalInstanceCount?: Integer;
4771 /**
4772 * The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
4773 */
4774 AvailableInstanceCount?: Integer;
4775 /**
4776 * 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.
4777 */
4778 EbsOptimized?: Boolean;
4779 /**
4780 * Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
4781 */
4782 EphemeralStorage?: Boolean;
4783 /**
4784 * 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. expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use. cancelled - 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.
4785 */
4786 State?: CapacityReservationState;
4787 /**
4788 * 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.
4789 */
4790 EndDate?: DateTime;
4791 /**
4792 * 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.
4793 */
4794 EndDateType?: EndDateType;
4795 /**
4796 * 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.
4797 */
4798 InstanceMatchCriteria?: InstanceMatchCriteria;
4799 /**
4800 * The date and time at which the Capacity Reservation was created.
4801 */
4802 CreateDate?: DateTime;
4803 /**
4804 * Any tags assigned to the Capacity Reservation.
4805 */
4806 Tags?: TagList;
4807 }
4808 export type CapacityReservationId = string;
4809 export type CapacityReservationIdSet = CapacityReservationId[];
4810 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;
4811 export interface CapacityReservationOptions {
4812 /**
4813 * Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity. If you specify use-capacity-reservations-first, the fleet uses unused Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If multiple instance pools have unused Capacity Reservations, the On-Demand allocation strategy (lowest-price or prioritized) is applied. If the number of unused Capacity Reservations is less than the On-Demand target capacity, the remaining On-Demand target capacity is launched according to the On-Demand allocation strategy (lowest-price or prioritized). If you do not specify a value, the fleet fulfils the On-Demand capacity according to the chosen On-Demand allocation strategy.
4814 */
4815 UsageStrategy?: FleetCapacityReservationUsageStrategy;
4816 }
4817 export interface CapacityReservationOptionsRequest {
4818 /**
4819 * Indicates whether to use unused Capacity Reservations for fulfilling On-Demand capacity. If you specify use-capacity-reservations-first, the fleet uses unused Capacity Reservations to fulfill On-Demand capacity up to the target On-Demand capacity. If multiple instance pools have unused Capacity Reservations, the On-Demand allocation strategy (lowest-price or prioritized) is applied. If the number of unused Capacity Reservations is less than the On-Demand target capacity, the remaining On-Demand target capacity is launched according to the On-Demand allocation strategy (lowest-price or prioritized). If you do not specify a value, the fleet fulfils the On-Demand capacity according to the chosen On-Demand allocation strategy.
4820 */
4821 UsageStrategy?: FleetCapacityReservationUsageStrategy;
4822 }
4823 export type CapacityReservationPreference = "open"|"none"|string;
4824 export type CapacityReservationSet = CapacityReservation[];
4825 export interface CapacityReservationSpecification {
4826 /**
4827 * 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.
4828 */
4829 CapacityReservationPreference?: CapacityReservationPreference;
4830 /**
4831 * Information about the target Capacity Reservation.
4832 */
4833 CapacityReservationTarget?: CapacityReservationTarget;
4834 }
4835 export interface CapacityReservationSpecificationResponse {
4836 /**
4837 * 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.
4838 */
4839 CapacityReservationPreference?: CapacityReservationPreference;
4840 /**
4841 * Information about the targeted Capacity Reservation.
4842 */
4843 CapacityReservationTarget?: CapacityReservationTargetResponse;
4844 }
4845 export type CapacityReservationState = "active"|"expired"|"cancelled"|"pending"|"failed"|string;
4846 export interface CapacityReservationTarget {
4847 /**
4848 * The ID of the Capacity Reservation.
4849 */
4850 CapacityReservationId?: CapacityReservationId;
4851 }
4852 export interface CapacityReservationTargetResponse {
4853 /**
4854 * The ID of the Capacity Reservation.
4855 */
4856 CapacityReservationId?: String;
4857 }
4858 export type CapacityReservationTenancy = "default"|"dedicated"|string;
4859 export interface CertificateAuthentication {
4860 /**
4861 * The ARN of the client certificate.
4862 */
4863 ClientRootCertificateChain?: String;
4864 }
4865 export interface CertificateAuthenticationRequest {
4866 /**
4867 * 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).
4868 */
4869 ClientRootCertificateChainArn?: String;
4870 }
4871 export interface CidrAuthorizationContext {
4872 /**
4873 * The plain-text authorization message for the prefix and account.
4874 */
4875 Message: String;
4876 /**
4877 * The signed authorization message for the prefix and account.
4878 */
4879 Signature: String;
4880 }
4881 export interface CidrBlock {
4882 /**
4883 * The IPv4 CIDR block.
4884 */
4885 CidrBlock?: String;
4886 }
4887 export type CidrBlockSet = CidrBlock[];
4888 export interface ClassicLinkDnsSupport {
4889 /**
4890 * Indicates whether ClassicLink DNS support is enabled for the VPC.
4891 */
4892 ClassicLinkDnsSupported?: Boolean;
4893 /**
4894 * The ID of the VPC.
4895 */
4896 VpcId?: String;
4897 }
4898 export type ClassicLinkDnsSupportList = ClassicLinkDnsSupport[];
4899 export interface ClassicLinkInstance {
4900 /**
4901 * A list of security groups.
4902 */
4903 Groups?: GroupIdentifierList;
4904 /**
4905 * The ID of the instance.
4906 */
4907 InstanceId?: String;
4908 /**
4909 * Any tags assigned to the instance.
4910 */
4911 Tags?: TagList;
4912 /**
4913 * The ID of the VPC.
4914 */
4915 VpcId?: String;
4916 }
4917 export type ClassicLinkInstanceList = ClassicLinkInstance[];
4918 export interface ClassicLoadBalancer {
4919 /**
4920 * The name of the load balancer.
4921 */
4922 Name?: String;
4923 }
4924 export type ClassicLoadBalancers = ClassicLoadBalancer[];
4925 export interface ClassicLoadBalancersConfig {
4926 /**
4927 * One or more Classic Load Balancers.
4928 */
4929 ClassicLoadBalancers?: ClassicLoadBalancers;
4930 }
4931 export interface ClientCertificateRevocationListStatus {
4932 /**
4933 * The state of the client certificate revocation list.
4934 */
4935 Code?: ClientCertificateRevocationListStatusCode;
4936 /**
4937 * A message about the status of the client certificate revocation list, if applicable.
4938 */
4939 Message?: String;
4940 }
4941 export type ClientCertificateRevocationListStatusCode = "pending"|"active"|string;
4942 export interface ClientData {
4943 /**
4944 * A user-defined comment about the disk upload.
4945 */
4946 Comment?: String;
4947 /**
4948 * The time that the disk upload ends.
4949 */
4950 UploadEnd?: DateTime;
4951 /**
4952 * The size of the uploaded disk image, in GiB.
4953 */
4954 UploadSize?: Double;
4955 /**
4956 * The time that the disk upload starts.
4957 */
4958 UploadStart?: DateTime;
4959 }
4960 export type ClientVpnAssociationId = string;
4961 export interface ClientVpnAuthentication {
4962 /**
4963 * The authentication type used.
4964 */
4965 Type?: ClientVpnAuthenticationType;
4966 /**
4967 * Information about the Active Directory, if applicable.
4968 */
4969 ActiveDirectory?: DirectoryServiceAuthentication;
4970 /**
4971 * Information about the authentication certificates, if applicable.
4972 */
4973 MutualAuthentication?: CertificateAuthentication;
4974 }
4975 export type ClientVpnAuthenticationList = ClientVpnAuthentication[];
4976 export interface ClientVpnAuthenticationRequest {
4977 /**
4978 * 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.
4979 */
4980 Type?: ClientVpnAuthenticationType;
4981 /**
4982 * Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication.
4983 */
4984 ActiveDirectory?: DirectoryServiceAuthenticationRequest;
4985 /**
4986 * Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication.
4987 */
4988 MutualAuthentication?: CertificateAuthenticationRequest;
4989 }
4990 export type ClientVpnAuthenticationRequestList = ClientVpnAuthenticationRequest[];
4991 export type ClientVpnAuthenticationType = "certificate-authentication"|"directory-service-authentication"|string;
4992 export interface ClientVpnAuthorizationRuleStatus {
4993 /**
4994 * The state of the authorization rule.
4995 */
4996 Code?: ClientVpnAuthorizationRuleStatusCode;
4997 /**
4998 * A message about the status of the authorization rule, if applicable.
4999 */
5000 Message?: String;
5001 }
5002 export type ClientVpnAuthorizationRuleStatusCode = "authorizing"|"active"|"failed"|"revoking"|string;
5003 export interface ClientVpnConnection {
5004 /**
5005 * The ID of the Client VPN endpoint to which the client is connected.
5006 */
5007 ClientVpnEndpointId?: String;
5008 /**
5009 * The current date and time.
5010 */
5011 Timestamp?: String;
5012 /**
5013 * The ID of the client connection.
5014 */
5015 ConnectionId?: String;
5016 /**
5017 * The username of the client who established the client connection. This information is only provided if Active Directory client authentication is used.
5018 */
5019 Username?: String;
5020 /**
5021 * The date and time the client connection was established.
5022 */
5023 ConnectionEstablishedTime?: String;
5024 /**
5025 * The number of bytes sent by the client.
5026 */
5027 IngressBytes?: String;
5028 /**
5029 * The number of bytes received by the client.
5030 */
5031 EgressBytes?: String;
5032 /**
5033 * The number of packets sent by the client.
5034 */
5035 IngressPackets?: String;
5036 /**
5037 * The number of packets received by the client.
5038 */
5039 EgressPackets?: String;
5040 /**
5041 * The IP address of the client.
5042 */
5043 ClientIp?: String;
5044 /**
5045 * The common name associated with the client. This is either the name of the client certificate, or the Active Directory user name.
5046 */
5047 CommonName?: String;
5048 /**
5049 * The current state of the client connection.
5050 */
5051 Status?: ClientVpnConnectionStatus;
5052 /**
5053 * The date and time the client connection was terminated.
5054 */
5055 ConnectionEndTime?: String;
5056 }
5057 export type ClientVpnConnectionSet = ClientVpnConnection[];
5058 export interface ClientVpnConnectionStatus {
5059 /**
5060 * The state of the client connection.
5061 */
5062 Code?: ClientVpnConnectionStatusCode;
5063 /**
5064 * A message about the status of the client connection, if applicable.
5065 */
5066 Message?: String;
5067 }
5068 export type ClientVpnConnectionStatusCode = "active"|"failed-to-terminate"|"terminating"|"terminated"|string;
5069 export interface ClientVpnEndpoint {
5070 /**
5071 * The ID of the Client VPN endpoint.
5072 */
5073 ClientVpnEndpointId?: String;
5074 /**
5075 * A brief description of the endpoint.
5076 */
5077 Description?: String;
5078 /**
5079 * The current state of the Client VPN endpoint.
5080 */
5081 Status?: ClientVpnEndpointStatus;
5082 /**
5083 * The date and time the Client VPN endpoint was created.
5084 */
5085 CreationTime?: String;
5086 /**
5087 * The date and time the Client VPN endpoint was deleted, if applicable.
5088 */
5089 DeletionTime?: String;
5090 /**
5091 * The DNS name to be used by clients when connecting to the Client VPN endpoint.
5092 */
5093 DnsName?: String;
5094 /**
5095 * The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.
5096 */
5097 ClientCidrBlock?: String;
5098 /**
5099 * Information about the DNS servers to be used for DNS resolution.
5100 */
5101 DnsServers?: ValueStringList;
5102 /**
5103 * Indicates whether split-tunnel is enabled in the AWS Client VPN endpoint. For information about split-tunnel VPN endpoints, see Split-Tunnel AWS Client VPN Endpoint in the AWS Client VPN Administrator Guide.
5104 */
5105 SplitTunnel?: Boolean;
5106 /**
5107 * The protocol used by the VPN session.
5108 */
5109 VpnProtocol?: VpnProtocol;
5110 /**
5111 * The transport protocol used by the Client VPN endpoint.
5112 */
5113 TransportProtocol?: TransportProtocol;
5114 /**
5115 * The port number for the Client VPN endpoint.
5116 */
5117 VpnPort?: Integer;
5118 /**
5119 * Information about the associated target networks. A target network is a subnet in a VPC.
5120 */
5121 AssociatedTargetNetworks?: AssociatedTargetNetworkSet;
5122 /**
5123 * The ARN of the server certificate.
5124 */
5125 ServerCertificateArn?: String;
5126 /**
5127 * Information about the authentication method used by the Client VPN endpoint.
5128 */
5129 AuthenticationOptions?: ClientVpnAuthenticationList;
5130 /**
5131 * Information about the client connection logging options for the Client VPN endpoint.
5132 */
5133 ConnectionLogOptions?: ConnectionLogResponseOptions;
5134 /**
5135 * Any tags assigned to the Client VPN endpoint.
5136 */
5137 Tags?: TagList;
5138 /**
5139 * The IDs of the security groups for the target network.
5140 */
5141 SecurityGroupIds?: ClientVpnSecurityGroupIdSet;
5142 /**
5143 * The ID of the VPC.
5144 */
5145 VpcId?: VpcId;
5146 }
5147 export type ClientVpnEndpointId = string;
5148 export type ClientVpnEndpointIdList = ClientVpnEndpointId[];
5149 export interface ClientVpnEndpointStatus {
5150 /**
5151 * 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.
5152 */
5153 Code?: ClientVpnEndpointStatusCode;
5154 /**
5155 * A message about the status of the Client VPN endpoint.
5156 */
5157 Message?: String;
5158 }
5159 export type ClientVpnEndpointStatusCode = "pending-associate"|"available"|"deleting"|"deleted"|string;
5160 export interface ClientVpnRoute {
5161 /**
5162 * The ID of the Client VPN endpoint with which the route is associated.
5163 */
5164 ClientVpnEndpointId?: String;
5165 /**
5166 * The IPv4 address range, in CIDR notation, of the route destination.
5167 */
5168 DestinationCidr?: String;
5169 /**
5170 * The ID of the subnet through which traffic is routed.
5171 */
5172 TargetSubnet?: String;
5173 /**
5174 * The route type.
5175 */
5176 Type?: String;
5177 /**
5178 * 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.
5179 */
5180 Origin?: String;
5181 /**
5182 * The current state of the route.
5183 */
5184 Status?: ClientVpnRouteStatus;
5185 /**
5186 * A brief description of the route.
5187 */
5188 Description?: String;
5189 }
5190 export type ClientVpnRouteSet = ClientVpnRoute[];
5191 export interface ClientVpnRouteStatus {
5192 /**
5193 * The state of the Client VPN endpoint route.
5194 */
5195 Code?: ClientVpnRouteStatusCode;
5196 /**
5197 * A message about the status of the Client VPN endpoint route, if applicable.
5198 */
5199 Message?: String;
5200 }
5201 export type ClientVpnRouteStatusCode = "creating"|"active"|"failed"|"deleting"|string;
5202 export type ClientVpnSecurityGroupIdSet = SecurityGroupId[];
5203 export interface CoipAddressUsage {
5204 /**
5205 * The allocation ID of the address.
5206 */
5207 AllocationId?: String;
5208 /**
5209 * The AWS account ID.
5210 */
5211 AwsAccountId?: String;
5212 /**
5213 * The AWS service.
5214 */
5215 AwsService?: String;
5216 /**
5217 * The customer-owned IP address.
5218 */
5219 CoIp?: String;
5220 }
5221 export type CoipAddressUsageSet = CoipAddressUsage[];
5222 export interface CoipPool {
5223 /**
5224 * The ID of the address pool.
5225 */
5226 PoolId?: CoipPoolId;
5227 /**
5228 * The address ranges of the address pool.
5229 */
5230 PoolCidrs?: ValueStringList;
5231 /**
5232 * The ID of the local gateway route table.
5233 */
5234 LocalGatewayRouteTableId?: LocalGatewayRoutetableId;
5235 /**
5236 * The tags.
5237 */
5238 Tags?: TagList;
5239 }
5240 export type CoipPoolId = string;
5241 export type CoipPoolIdSet = CoipPoolId[];
5242 export type CoipPoolMaxResults = number;
5243 export type CoipPoolSet = CoipPool[];
5244 export interface ConfirmProductInstanceRequest {
5245 /**
5246 * The ID of the instance.
5247 */
5248 InstanceId: InstanceId;
5249 /**
5250 * The product code. This must be a product code that you own.
5251 */
5252 ProductCode: String;
5253 /**
5254 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5255 */
5256 DryRun?: Boolean;
5257 }
5258 export interface ConfirmProductInstanceResult {
5259 /**
5260 * The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.
5261 */
5262 OwnerId?: String;
5263 /**
5264 * The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.
5265 */
5266 Return?: Boolean;
5267 }
5268 export interface ConnectionLogOptions {
5269 /**
5270 * Indicates whether connection logging is enabled.
5271 */
5272 Enabled?: Boolean;
5273 /**
5274 * The name of the CloudWatch Logs log group.
5275 */
5276 CloudwatchLogGroup?: String;
5277 /**
5278 * The name of the CloudWatch Logs log stream to which the connection data is published.
5279 */
5280 CloudwatchLogStream?: String;
5281 }
5282 export interface ConnectionLogResponseOptions {
5283 /**
5284 * Indicates whether client connection logging is enabled for the Client VPN endpoint.
5285 */
5286 Enabled?: Boolean;
5287 /**
5288 * The name of the Amazon CloudWatch Logs log group to which connection logging data is published.
5289 */
5290 CloudwatchLogGroup?: String;
5291 /**
5292 * The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.
5293 */
5294 CloudwatchLogStream?: String;
5295 }
5296 export interface ConnectionNotification {
5297 /**
5298 * The ID of the notification.
5299 */
5300 ConnectionNotificationId?: String;
5301 /**
5302 * The ID of the endpoint service.
5303 */
5304 ServiceId?: String;
5305 /**
5306 * The ID of the VPC endpoint.
5307 */
5308 VpcEndpointId?: String;
5309 /**
5310 * The type of notification.
5311 */
5312 ConnectionNotificationType?: ConnectionNotificationType;
5313 /**
5314 * The ARN of the SNS topic for the notification.
5315 */
5316 ConnectionNotificationArn?: String;
5317 /**
5318 * The events for the notification. Valid values are Accept, Connect, Delete, and Reject.
5319 */
5320 ConnectionEvents?: ValueStringList;
5321 /**
5322 * The state of the notification.
5323 */
5324 ConnectionNotificationState?: ConnectionNotificationState;
5325 }
5326 export type ConnectionNotificationId = string;
5327 export type ConnectionNotificationSet = ConnectionNotification[];
5328 export type ConnectionNotificationState = "Enabled"|"Disabled"|string;
5329 export type ConnectionNotificationType = "Topic"|string;
5330 export type ContainerFormat = "ova"|string;
5331 export type ConversionIdStringList = ConversionTaskId[];
5332 export interface ConversionTask {
5333 /**
5334 * The ID of the conversion task.
5335 */
5336 ConversionTaskId?: String;
5337 /**
5338 * The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.
5339 */
5340 ExpirationTime?: String;
5341 /**
5342 * If the task is for importing an instance, this contains information about the import instance task.
5343 */
5344 ImportInstance?: ImportInstanceTaskDetails;
5345 /**
5346 * If the task is for importing a volume, this contains information about the import volume task.
5347 */
5348 ImportVolume?: ImportVolumeTaskDetails;
5349 /**
5350 * The state of the conversion task.
5351 */
5352 State?: ConversionTaskState;
5353 /**
5354 * The status message related to the conversion task.
5355 */
5356 StatusMessage?: String;
5357 /**
5358 * Any tags assigned to the task.
5359 */
5360 Tags?: TagList;
5361 }
5362 export type ConversionTaskId = string;
5363 export type ConversionTaskState = "active"|"cancelling"|"cancelled"|"completed"|string;
5364 export interface CopyFpgaImageRequest {
5365 /**
5366 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5367 */
5368 DryRun?: Boolean;
5369 /**
5370 * The ID of the source AFI.
5371 */
5372 SourceFpgaImageId: FpgaImageId;
5373 /**
5374 * The description for the new AFI.
5375 */
5376 Description?: String;
5377 /**
5378 * The name for the new AFI. The default is the name of the source AFI.
5379 */
5380 Name?: String;
5381 /**
5382 * The Region that contains the source AFI.
5383 */
5384 SourceRegion: String;
5385 /**
5386 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
5387 */
5388 ClientToken?: String;
5389 }
5390 export interface CopyFpgaImageResult {
5391 /**
5392 * The ID of the new AFI.
5393 */
5394 FpgaImageId?: String;
5395 }
5396 export interface CopyImageRequest {
5397 /**
5398 * 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.
5399 */
5400 ClientToken?: String;
5401 /**
5402 * A description for the new AMI in the destination Region.
5403 */
5404 Description?: String;
5405 /**
5406 * 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.
5407 */
5408 Encrypted?: Boolean;
5409 /**
5410 * An identifier for the symmetric 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. To specify a CMK, use its key ID, Amazon Resource Name (ARN), alias name, or alias ARN. When using an alias name, prefix it with "alias/". For example: Key ID: 1234abcd-12ab-34cd-56ef-1234567890ab Key ARN: arn:aws:kms:us-east-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab Alias name: alias/ExampleAlias Alias ARN: arn:aws:kms:us-east-2:111122223333: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. Amazon EBS does not support asymmetric CMKs.
5411 */
5412 KmsKeyId?: KmsKeyId;
5413 /**
5414 * The name of the new AMI in the destination Region.
5415 */
5416 Name: String;
5417 /**
5418 * The ID of the AMI to copy.
5419 */
5420 SourceImageId: String;
5421 /**
5422 * The name of the Region that contains the AMI to copy.
5423 */
5424 SourceRegion: String;
5425 /**
5426 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5427 */
5428 DryRun?: Boolean;
5429 }
5430 export interface CopyImageResult {
5431 /**
5432 * The ID of the new AMI.
5433 */
5434 ImageId?: String;
5435 }
5436 export interface CopySnapshotRequest {
5437 /**
5438 * A description for the EBS snapshot.
5439 */
5440 Description?: String;
5441 /**
5442 * 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.
5443 */
5444 DestinationRegion?: String;
5445 /**
5446 * To encrypt a copy of an unencrypted snapshot if encryption by default is not enabled, enable encryption using this parameter. Otherwise, omit this parameter. Encrypted snapshots are encrypted, even if you omit this parameter and encryption by default is not enabled. You cannot set this parameter to false. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
5447 */
5448 Encrypted?: Boolean;
5449 /**
5450 * The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption. If this parameter is not specified, your AWS managed CMK for EBS is used. If KmsKeyId is specified, the encrypted state must be true. You can specify the CMK using any of the following: Key ID. For example, key/1234abcd-12ab-34cd-56ef-1234567890ab. Key alias. For example, alias/ExampleAlias. Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS authenticates the CMK asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.
5451 */
5452 KmsKeyId?: KmsKeyId;
5453 /**
5454 * 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.
5455 */
5456 PresignedUrl?: String;
5457 /**
5458 * The ID of the Region that contains the snapshot to be copied.
5459 */
5460 SourceRegion: String;
5461 /**
5462 * The ID of the EBS snapshot to copy.
5463 */
5464 SourceSnapshotId: String;
5465 /**
5466 * The tags to apply to the new snapshot.
5467 */
5468 TagSpecifications?: TagSpecificationList;
5469 /**
5470 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5471 */
5472 DryRun?: Boolean;
5473 }
5474 export interface CopySnapshotResult {
5475 /**
5476 * The ID of the new snapshot.
5477 */
5478 SnapshotId?: String;
5479 /**
5480 * Any tags applied to the new snapshot.
5481 */
5482 Tags?: TagList;
5483 }
5484 export type CopyTagsFromSource = "volume"|string;
5485 export type CoreCount = number;
5486 export type CoreCountList = CoreCount[];
5487 export interface CpuOptions {
5488 /**
5489 * The number of CPU cores for the instance.
5490 */
5491 CoreCount?: Integer;
5492 /**
5493 * The number of threads per CPU core.
5494 */
5495 ThreadsPerCore?: Integer;
5496 }
5497 export interface CpuOptionsRequest {
5498 /**
5499 * The number of CPU cores for the instance.
5500 */
5501 CoreCount?: Integer;
5502 /**
5503 * The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
5504 */
5505 ThreadsPerCore?: Integer;
5506 }
5507 export interface CreateCapacityReservationRequest {
5508 /**
5509 * 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.
5510 */
5511 ClientToken?: String;
5512 /**
5513 * The instance type for which to reserve capacity. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
5514 */
5515 InstanceType: String;
5516 /**
5517 * The type of operating system for which to reserve capacity.
5518 */
5519 InstancePlatform: CapacityReservationInstancePlatform;
5520 /**
5521 * The Availability Zone in which to create the Capacity Reservation.
5522 */
5523 AvailabilityZone?: String;
5524 /**
5525 * The ID of the Availability Zone in which to create the Capacity Reservation.
5526 */
5527 AvailabilityZoneId?: String;
5528 /**
5529 * 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.
5530 */
5531 Tenancy?: CapacityReservationTenancy;
5532 /**
5533 * The number of instances for which to reserve capacity.
5534 */
5535 InstanceCount: Integer;
5536 /**
5537 * 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.
5538 */
5539 EbsOptimized?: Boolean;
5540 /**
5541 * Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
5542 */
5543 EphemeralStorage?: Boolean;
5544 /**
5545 * 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.
5546 */
5547 EndDate?: DateTime;
5548 /**
5549 * 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.
5550 */
5551 EndDateType?: EndDateType;
5552 /**
5553 * 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
5554 */
5555 InstanceMatchCriteria?: InstanceMatchCriteria;
5556 /**
5557 * The tags to apply to the Capacity Reservation during launch.
5558 */
5559 TagSpecifications?: TagSpecificationList;
5560 /**
5561 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5562 */
5563 DryRun?: Boolean;
5564 }
5565 export interface CreateCapacityReservationResult {
5566 /**
5567 * Information about the Capacity Reservation.
5568 */
5569 CapacityReservation?: CapacityReservation;
5570 }
5571 export interface CreateClientVpnEndpointRequest {
5572 /**
5573 * 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.
5574 */
5575 ClientCidrBlock: String;
5576 /**
5577 * The ARN of the server certificate. For more information, see the AWS Certificate Manager User Guide.
5578 */
5579 ServerCertificateArn: String;
5580 /**
5581 * Information about the authentication method to be used to authenticate clients.
5582 */
5583 AuthenticationOptions: ClientVpnAuthenticationRequestList;
5584 /**
5585 * 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
5586 */
5587 ConnectionLogOptions: ConnectionLogOptions;
5588 /**
5589 * 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 configured on the device is used for the DNS server.
5590 */
5591 DnsServers?: ValueStringList;
5592 /**
5593 * The transport protocol to be used by the VPN session. Default value: udp
5594 */
5595 TransportProtocol?: TransportProtocol;
5596 /**
5597 * The port number to assign to the Client VPN endpoint for TCP and UDP traffic. Valid Values: 443 | 1194 Default Value: 443
5598 */
5599 VpnPort?: Integer;
5600 /**
5601 * A brief description of the Client VPN endpoint.
5602 */
5603 Description?: String;
5604 /**
5605 * Indicates whether split-tunnel is enabled on the AWS Client VPN endpoint. By default, split-tunnel on a VPN endpoint is disabled. For information about split-tunnel VPN endpoints, see Split-Tunnel AWS Client VPN Endpoint in the AWS Client VPN Administrator Guide.
5606 */
5607 SplitTunnel?: Boolean;
5608 /**
5609 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5610 */
5611 DryRun?: Boolean;
5612 /**
5613 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5614 */
5615 ClientToken?: String;
5616 /**
5617 * The tags to apply to the Client VPN endpoint during creation.
5618 */
5619 TagSpecifications?: TagSpecificationList;
5620 /**
5621 * The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
5622 */
5623 SecurityGroupIds?: ClientVpnSecurityGroupIdSet;
5624 /**
5625 * The ID of the VPC to associate with the Client VPN endpoint. If no security group IDs are specified in the request, the default security group for the VPC is applied.
5626 */
5627 VpcId?: VpcId;
5628 }
5629 export interface CreateClientVpnEndpointResult {
5630 /**
5631 * The ID of the Client VPN endpoint.
5632 */
5633 ClientVpnEndpointId?: String;
5634 /**
5635 * The current state of the Client VPN endpoint.
5636 */
5637 Status?: ClientVpnEndpointStatus;
5638 /**
5639 * The DNS name to be used by clients when establishing their VPN session.
5640 */
5641 DnsName?: String;
5642 }
5643 export interface CreateClientVpnRouteRequest {
5644 /**
5645 * The ID of the Client VPN endpoint to which to add the route.
5646 */
5647 ClientVpnEndpointId: ClientVpnEndpointId;
5648 /**
5649 * 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.
5650 */
5651 DestinationCidrBlock: String;
5652 /**
5653 * 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.
5654 */
5655 TargetVpcSubnetId: SubnetId;
5656 /**
5657 * A brief description of the route.
5658 */
5659 Description?: String;
5660 /**
5661 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5662 */
5663 ClientToken?: String;
5664 /**
5665 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5666 */
5667 DryRun?: Boolean;
5668 }
5669 export interface CreateClientVpnRouteResult {
5670 /**
5671 * The current state of the route.
5672 */
5673 Status?: ClientVpnRouteStatus;
5674 }
5675 export interface CreateCustomerGatewayRequest {
5676 /**
5677 * For devices that support BGP, the customer gateway's BGP ASN. Default: 65000
5678 */
5679 BgpAsn: Integer;
5680 /**
5681 * The Internet-routable IP address for the customer gateway's outside interface. The address must be static.
5682 */
5683 PublicIp?: String;
5684 /**
5685 * The Amazon Resource Name (ARN) for the customer gateway certificate.
5686 */
5687 CertificateArn?: String;
5688 /**
5689 * The type of VPN connection that this customer gateway supports (ipsec.1).
5690 */
5691 Type: GatewayType;
5692 /**
5693 * A name for the customer gateway device. Length Constraints: Up to 255 characters.
5694 */
5695 DeviceName?: String;
5696 /**
5697 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5698 */
5699 DryRun?: Boolean;
5700 }
5701 export interface CreateCustomerGatewayResult {
5702 /**
5703 * Information about the customer gateway.
5704 */
5705 CustomerGateway?: CustomerGateway;
5706 }
5707 export interface CreateDefaultSubnetRequest {
5708 /**
5709 * The Availability Zone in which to create the default subnet.
5710 */
5711 AvailabilityZone: String;
5712 /**
5713 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5714 */
5715 DryRun?: Boolean;
5716 }
5717 export interface CreateDefaultSubnetResult {
5718 /**
5719 * Information about the subnet.
5720 */
5721 Subnet?: Subnet;
5722 }
5723 export interface CreateDefaultVpcRequest {
5724 /**
5725 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5726 */
5727 DryRun?: Boolean;
5728 }
5729 export interface CreateDefaultVpcResult {
5730 /**
5731 * Information about the VPC.
5732 */
5733 Vpc?: Vpc;
5734 }
5735 export interface CreateDhcpOptionsRequest {
5736 /**
5737 * A DHCP configuration option.
5738 */
5739 DhcpConfigurations: NewDhcpConfigurationList;
5740 /**
5741 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5742 */
5743 DryRun?: Boolean;
5744 }
5745 export interface CreateDhcpOptionsResult {
5746 /**
5747 * A set of DHCP options.
5748 */
5749 DhcpOptions?: DhcpOptions;
5750 }
5751 export interface CreateEgressOnlyInternetGatewayRequest {
5752 /**
5753 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5754 */
5755 ClientToken?: String;
5756 /**
5757 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5758 */
5759 DryRun?: Boolean;
5760 /**
5761 * The ID of the VPC for which to create the egress-only internet gateway.
5762 */
5763 VpcId: VpcId;
5764 }
5765 export interface CreateEgressOnlyInternetGatewayResult {
5766 /**
5767 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
5768 */
5769 ClientToken?: String;
5770 /**
5771 * Information about the egress-only internet gateway.
5772 */
5773 EgressOnlyInternetGateway?: EgressOnlyInternetGateway;
5774 }
5775 export interface CreateFleetError {
5776 /**
5777 * The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.
5778 */
5779 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
5780 /**
5781 * Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
5782 */
5783 Lifecycle?: InstanceLifecycle;
5784 /**
5785 * The error code that indicates why the instance could not be launched. For more information about error codes, see Error Codes.
5786 */
5787 ErrorCode?: String;
5788 /**
5789 * The error message that describes why the instance could not be launched. For more information about error messages, see Error Codes.
5790 */
5791 ErrorMessage?: String;
5792 }
5793 export type CreateFleetErrorsSet = CreateFleetError[];
5794 export interface CreateFleetInstance {
5795 /**
5796 * The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.
5797 */
5798 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
5799 /**
5800 * Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
5801 */
5802 Lifecycle?: InstanceLifecycle;
5803 /**
5804 * The IDs of the instances.
5805 */
5806 InstanceIds?: InstanceIdsSet;
5807 /**
5808 * The instance type.
5809 */
5810 InstanceType?: InstanceType;
5811 /**
5812 * The value is Windows for Windows instances. Otherwise, the value is blank.
5813 */
5814 Platform?: PlatformValues;
5815 }
5816 export type CreateFleetInstancesSet = CreateFleetInstance[];
5817 export interface CreateFleetRequest {
5818 /**
5819 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5820 */
5821 DryRun?: Boolean;
5822 /**
5823 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
5824 */
5825 ClientToken?: String;
5826 /**
5827 * Describes the configuration of Spot Instances in an EC2 Fleet.
5828 */
5829 SpotOptions?: SpotOptionsRequest;
5830 /**
5831 * Describes the configuration of On-Demand Instances in an EC2 Fleet.
5832 */
5833 OnDemandOptions?: OnDemandOptionsRequest;
5834 /**
5835 * 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.
5836 */
5837 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
5838 /**
5839 * The configuration for the EC2 Fleet.
5840 */
5841 LaunchTemplateConfigs: FleetLaunchTemplateConfigListRequest;
5842 /**
5843 * The number of units to request.
5844 */
5845 TargetCapacitySpecification: TargetCapacitySpecificationRequest;
5846 /**
5847 * Indicates whether running instances should be terminated when the EC2 Fleet expires.
5848 */
5849 TerminateInstancesWithExpiration?: Boolean;
5850 /**
5851 * 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.
5852 */
5853 Type?: FleetType;
5854 /**
5855 * 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.
5856 */
5857 ValidFrom?: DateTime;
5858 /**
5859 * 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.
5860 */
5861 ValidUntil?: DateTime;
5862 /**
5863 * Indicates whether EC2 Fleet should replace unhealthy instances.
5864 */
5865 ReplaceUnhealthyInstances?: Boolean;
5866 /**
5867 * 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.
5868 */
5869 TagSpecifications?: TagSpecificationList;
5870 }
5871 export interface CreateFleetResult {
5872 /**
5873 * The ID of the EC2 Fleet.
5874 */
5875 FleetId?: FleetId;
5876 /**
5877 * Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.
5878 */
5879 Errors?: CreateFleetErrorsSet;
5880 /**
5881 * Information about the instances that were launched by the fleet. Valid only when Type is set to instant.
5882 */
5883 Instances?: CreateFleetInstancesSet;
5884 }
5885 export interface CreateFlowLogsRequest {
5886 /**
5887 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5888 */
5889 DryRun?: Boolean;
5890 /**
5891 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5892 */
5893 ClientToken?: String;
5894 /**
5895 * The ARN for the IAM role that permits Amazon EC2 to publish flow logs to a CloudWatch Logs log group in your account. If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.
5896 */
5897 DeliverLogsPermissionArn?: String;
5898 /**
5899 * The name of a new or existing CloudWatch Logs log group where Amazon EC2 publishes your flow logs. If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName.
5900 */
5901 LogGroupName?: String;
5902 /**
5903 * The ID of the subnet, network interface, or VPC for which you want to create a flow log. Constraints: Maximum of 1000 resources
5904 */
5905 ResourceIds: FlowLogResourceIds;
5906 /**
5907 * The type of resource for which to create the flow log. For example, if you specified a VPC ID for the ResourceId property, specify VPC for this property.
5908 */
5909 ResourceType: FlowLogsResourceType;
5910 /**
5911 * The type of traffic to log. You can log traffic that the resource accepts or rejects, or all traffic.
5912 */
5913 TrafficType: TrafficType;
5914 /**
5915 * 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. If you specify LogDestinationType as s3, do not specify DeliverLogsPermissionArn or LogGroupName. Default: cloud-watch-logs
5916 */
5917 LogDestinationType?: LogDestinationType;
5918 /**
5919 * Specifies the destination to which the flow log data is to be published. Flow log data can be published to a 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. For example, to publish to a log group called my-logs, specify arn:aws:logs:us-east-1:123456789012:log-group:my-logs. Alternatively, use LogGroupName instead. 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.
5920 */
5921 LogDestination?: String;
5922 /**
5923 * The fields to include in the flow log record, in the order in which they should appear. For a list of available fields, see Flow Log Records. If you omit this parameter, the flow log is created using the default format. If you specify this parameter, you must specify at least one field. Specify the fields using the ${field-id} format, separated by spaces. For the AWS CLI, use single quotation marks (' ') to surround the parameter value. Only applicable to flow logs that are published to an Amazon S3 bucket.
5924 */
5925 LogFormat?: String;
5926 /**
5927 * The tags to apply to the flow logs.
5928 */
5929 TagSpecifications?: TagSpecificationList;
5930 /**
5931 * The maximum interval of time during which a flow of packets is captured and aggregated into a flow log record. You can specify 60 seconds (1 minute) or 600 seconds (10 minutes). When a network interface is attached to a Nitro-based instance, the aggregation interval is always 60 seconds or less, regardless of the value that you specify. Default: 600
5932 */
5933 MaxAggregationInterval?: Integer;
5934 }
5935 export interface CreateFlowLogsResult {
5936 /**
5937 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
5938 */
5939 ClientToken?: String;
5940 /**
5941 * The IDs of the flow logs.
5942 */
5943 FlowLogIds?: ValueStringList;
5944 /**
5945 * Information about the flow logs that could not be created successfully.
5946 */
5947 Unsuccessful?: UnsuccessfulItemSet;
5948 }
5949 export interface CreateFpgaImageRequest {
5950 /**
5951 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
5952 */
5953 DryRun?: Boolean;
5954 /**
5955 * The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.
5956 */
5957 InputStorageLocation: StorageLocation;
5958 /**
5959 * The location in Amazon S3 for the output logs.
5960 */
5961 LogsStorageLocation?: StorageLocation;
5962 /**
5963 * A description for the AFI.
5964 */
5965 Description?: String;
5966 /**
5967 * A name for the AFI.
5968 */
5969 Name?: String;
5970 /**
5971 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
5972 */
5973 ClientToken?: String;
5974 /**
5975 * The tags to apply to the FPGA image during creation.
5976 */
5977 TagSpecifications?: TagSpecificationList;
5978 }
5979 export interface CreateFpgaImageResult {
5980 /**
5981 * The FPGA image identifier (AFI ID).
5982 */
5983 FpgaImageId?: String;
5984 /**
5985 * The global FPGA image identifier (AGFI ID).
5986 */
5987 FpgaImageGlobalId?: String;
5988 }
5989 export interface CreateImageRequest {
5990 /**
5991 * The 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.
5992 */
5993 BlockDeviceMappings?: BlockDeviceMappingRequestList;
5994 /**
5995 * A description for the new image.
5996 */
5997 Description?: String;
5998 /**
5999 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6000 */
6001 DryRun?: Boolean;
6002 /**
6003 * The ID of the instance.
6004 */
6005 InstanceId: InstanceId;
6006 /**
6007 * A name for the new image. Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
6008 */
6009 Name: String;
6010 /**
6011 * 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.
6012 */
6013 NoReboot?: Boolean;
6014 }
6015 export interface CreateImageResult {
6016 /**
6017 * The ID of the new AMI.
6018 */
6019 ImageId?: String;
6020 }
6021 export interface CreateInstanceExportTaskRequest {
6022 /**
6023 * A description for the conversion task or the resource being exported. The maximum length is 255 bytes.
6024 */
6025 Description?: String;
6026 /**
6027 * The format and location for an instance export task.
6028 */
6029 ExportToS3Task?: ExportToS3TaskSpecification;
6030 /**
6031 * The ID of the instance.
6032 */
6033 InstanceId: InstanceId;
6034 /**
6035 * The target virtualization environment.
6036 */
6037 TargetEnvironment?: ExportEnvironment;
6038 }
6039 export interface CreateInstanceExportTaskResult {
6040 /**
6041 * Information about the instance export task.
6042 */
6043 ExportTask?: ExportTask;
6044 }
6045 export interface CreateInternetGatewayRequest {
6046 /**
6047 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6048 */
6049 DryRun?: Boolean;
6050 }
6051 export interface CreateInternetGatewayResult {
6052 /**
6053 * Information about the internet gateway.
6054 */
6055 InternetGateway?: InternetGateway;
6056 }
6057 export interface CreateKeyPairRequest {
6058 /**
6059 * A unique name for the key pair. Constraints: Up to 255 ASCII characters
6060 */
6061 KeyName: String;
6062 /**
6063 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6064 */
6065 DryRun?: Boolean;
6066 }
6067 export interface CreateLaunchTemplateRequest {
6068 /**
6069 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6070 */
6071 DryRun?: Boolean;
6072 /**
6073 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
6074 */
6075 ClientToken?: String;
6076 /**
6077 * A name for the launch template.
6078 */
6079 LaunchTemplateName: LaunchTemplateName;
6080 /**
6081 * A description for the first version of the launch template.
6082 */
6083 VersionDescription?: VersionDescription;
6084 /**
6085 * The information for the launch template.
6086 */
6087 LaunchTemplateData: RequestLaunchTemplateData;
6088 /**
6089 * The tags to apply to the launch template during creation.
6090 */
6091 TagSpecifications?: TagSpecificationList;
6092 }
6093 export interface CreateLaunchTemplateResult {
6094 /**
6095 * Information about the launch template.
6096 */
6097 LaunchTemplate?: LaunchTemplate;
6098 }
6099 export interface CreateLaunchTemplateVersionRequest {
6100 /**
6101 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6102 */
6103 DryRun?: Boolean;
6104 /**
6105 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
6106 */
6107 ClientToken?: String;
6108 /**
6109 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
6110 */
6111 LaunchTemplateId?: LaunchTemplateId;
6112 /**
6113 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
6114 */
6115 LaunchTemplateName?: LaunchTemplateName;
6116 /**
6117 * 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. Snapshots applied to the block device mapping are ignored when creating a new version unless they are explicitly included.
6118 */
6119 SourceVersion?: String;
6120 /**
6121 * A description for the version of the launch template.
6122 */
6123 VersionDescription?: VersionDescription;
6124 /**
6125 * The information for the launch template.
6126 */
6127 LaunchTemplateData: RequestLaunchTemplateData;
6128 }
6129 export interface CreateLaunchTemplateVersionResult {
6130 /**
6131 * Information about the launch template version.
6132 */
6133 LaunchTemplateVersion?: LaunchTemplateVersion;
6134 }
6135 export interface CreateLocalGatewayRouteRequest {
6136 /**
6137 * The CIDR range used for destination matches. Routing decisions are based on the most specific match.
6138 */
6139 DestinationCidrBlock: String;
6140 /**
6141 * The ID of the local gateway route table.
6142 */
6143 LocalGatewayRouteTableId: LocalGatewayRoutetableId;
6144 /**
6145 * The ID of the virtual interface group.
6146 */
6147 LocalGatewayVirtualInterfaceGroupId: LocalGatewayVirtualInterfaceGroupId;
6148 /**
6149 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6150 */
6151 DryRun?: Boolean;
6152 }
6153 export interface CreateLocalGatewayRouteResult {
6154 /**
6155 * Information about the route.
6156 */
6157 Route?: LocalGatewayRoute;
6158 }
6159 export interface CreateLocalGatewayRouteTableVpcAssociationRequest {
6160 /**
6161 * The ID of the local gateway route table.
6162 */
6163 LocalGatewayRouteTableId: LocalGatewayRoutetableId;
6164 /**
6165 * The ID of the VPC.
6166 */
6167 VpcId: VpcId;
6168 /**
6169 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6170 */
6171 DryRun?: Boolean;
6172 }
6173 export interface CreateLocalGatewayRouteTableVpcAssociationResult {
6174 /**
6175 * Information about the association.
6176 */
6177 LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation;
6178 }
6179 export interface CreateNatGatewayRequest {
6180 /**
6181 * 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.
6182 */
6183 AllocationId: AllocationId;
6184 /**
6185 * 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.
6186 */
6187 ClientToken?: String;
6188 /**
6189 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6190 */
6191 DryRun?: Boolean;
6192 /**
6193 * The subnet in which to create the NAT gateway.
6194 */
6195 SubnetId: SubnetId;
6196 /**
6197 * The tags to assign to the NAT gateway.
6198 */
6199 TagSpecifications?: TagSpecificationList;
6200 }
6201 export interface CreateNatGatewayResult {
6202 /**
6203 * Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.
6204 */
6205 ClientToken?: String;
6206 /**
6207 * Information about the NAT gateway.
6208 */
6209 NatGateway?: NatGateway;
6210 }
6211 export interface CreateNetworkAclEntryRequest {
6212 /**
6213 * The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).
6214 */
6215 CidrBlock?: String;
6216 /**
6217 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6218 */
6219 DryRun?: Boolean;
6220 /**
6221 * Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).
6222 */
6223 Egress: Boolean;
6224 /**
6225 * ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
6226 */
6227 IcmpTypeCode?: IcmpTypeCode;
6228 /**
6229 * The IPv6 network range to allow or deny, in CIDR notation (for example 2001:db8:1234:1a00::/64).
6230 */
6231 Ipv6CidrBlock?: String;
6232 /**
6233 * The ID of the network ACL.
6234 */
6235 NetworkAclId: NetworkAclId;
6236 /**
6237 * TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).
6238 */
6239 PortRange?: PortRange;
6240 /**
6241 * 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.
6242 */
6243 Protocol: String;
6244 /**
6245 * Indicates whether to allow or deny the traffic that matches the rule.
6246 */
6247 RuleAction: RuleAction;
6248 /**
6249 * 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.
6250 */
6251 RuleNumber: Integer;
6252 }
6253 export interface CreateNetworkAclRequest {
6254 /**
6255 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6256 */
6257 DryRun?: Boolean;
6258 /**
6259 * The ID of the VPC.
6260 */
6261 VpcId: VpcId;
6262 }
6263 export interface CreateNetworkAclResult {
6264 /**
6265 * Information about the network ACL.
6266 */
6267 NetworkAcl?: NetworkAcl;
6268 }
6269 export interface CreateNetworkInterfacePermissionRequest {
6270 /**
6271 * The ID of the network interface.
6272 */
6273 NetworkInterfaceId: NetworkInterfaceId;
6274 /**
6275 * The AWS account ID.
6276 */
6277 AwsAccountId?: String;
6278 /**
6279 * The AWS service. Currently not supported.
6280 */
6281 AwsService?: String;
6282 /**
6283 * The type of permission to grant.
6284 */
6285 Permission: InterfacePermissionType;
6286 /**
6287 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6288 */
6289 DryRun?: Boolean;
6290 }
6291 export interface CreateNetworkInterfacePermissionResult {
6292 /**
6293 * Information about the permission for the network interface.
6294 */
6295 InterfacePermission?: NetworkInterfacePermission;
6296 }
6297 export interface CreateNetworkInterfaceRequest {
6298 /**
6299 * A description for the network interface.
6300 */
6301 Description?: String;
6302 /**
6303 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6304 */
6305 DryRun?: Boolean;
6306 /**
6307 * The IDs of one or more security groups.
6308 */
6309 Groups?: SecurityGroupIdStringList;
6310 /**
6311 * 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.
6312 */
6313 Ipv6AddressCount?: Integer;
6314 /**
6315 * 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.
6316 */
6317 Ipv6Addresses?: InstanceIpv6AddressList;
6318 /**
6319 * 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).
6320 */
6321 PrivateIpAddress?: String;
6322 /**
6323 * One or more private IPv4 addresses.
6324 */
6325 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
6326 /**
6327 * 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.
6328 */
6329 SecondaryPrivateIpAddressCount?: Integer;
6330 /**
6331 * Indicates the type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide.
6332 */
6333 InterfaceType?: NetworkInterfaceCreationType;
6334 /**
6335 * The ID of the subnet to associate with the network interface.
6336 */
6337 SubnetId: SubnetId;
6338 }
6339 export interface CreateNetworkInterfaceResult {
6340 /**
6341 * Information about the network interface.
6342 */
6343 NetworkInterface?: NetworkInterface;
6344 }
6345 export interface CreatePlacementGroupRequest {
6346 /**
6347 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6348 */
6349 DryRun?: Boolean;
6350 /**
6351 * A name for the placement group. Must be unique within the scope of your account for the Region. Constraints: Up to 255 ASCII characters
6352 */
6353 GroupName?: String;
6354 /**
6355 * The placement strategy.
6356 */
6357 Strategy?: PlacementStrategy;
6358 /**
6359 * The number of partitions. Valid only when Strategy is set to partition.
6360 */
6361 PartitionCount?: Integer;
6362 }
6363 export interface CreateReservedInstancesListingRequest {
6364 /**
6365 * Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.
6366 */
6367 ClientToken: String;
6368 /**
6369 * 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.
6370 */
6371 InstanceCount: Integer;
6372 /**
6373 * A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.
6374 */
6375 PriceSchedules: PriceScheduleSpecificationList;
6376 /**
6377 * The ID of the active Standard Reserved Instance.
6378 */
6379 ReservedInstancesId: ReservationId;
6380 }
6381 export interface CreateReservedInstancesListingResult {
6382 /**
6383 * Information about the Standard Reserved Instance listing.
6384 */
6385 ReservedInstancesListings?: ReservedInstancesListingList;
6386 }
6387 export interface CreateRouteRequest {
6388 /**
6389 * The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.
6390 */
6391 DestinationCidrBlock?: String;
6392 /**
6393 * The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
6394 */
6395 DestinationIpv6CidrBlock?: String;
6396 /**
6397 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6398 */
6399 DryRun?: Boolean;
6400 /**
6401 * [IPv6 traffic only] The ID of an egress-only internet gateway.
6402 */
6403 EgressOnlyInternetGatewayId?: EgressOnlyInternetGatewayId;
6404 /**
6405 * The ID of an internet gateway or virtual private gateway attached to your VPC.
6406 */
6407 GatewayId?: RouteGatewayId;
6408 /**
6409 * 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.
6410 */
6411 InstanceId?: InstanceId;
6412 /**
6413 * [IPv4 traffic only] The ID of a NAT gateway.
6414 */
6415 NatGatewayId?: NatGatewayId;
6416 /**
6417 * The ID of a transit gateway.
6418 */
6419 TransitGatewayId?: TransitGatewayId;
6420 /**
6421 * The ID of the local gateway.
6422 */
6423 LocalGatewayId?: LocalGatewayId;
6424 /**
6425 * The ID of a network interface.
6426 */
6427 NetworkInterfaceId?: NetworkInterfaceId;
6428 /**
6429 * The ID of the route table for the route.
6430 */
6431 RouteTableId: RouteTableId;
6432 /**
6433 * The ID of a VPC peering connection.
6434 */
6435 VpcPeeringConnectionId?: VpcPeeringConnectionId;
6436 }
6437 export interface CreateRouteResult {
6438 /**
6439 * Returns true if the request succeeds; otherwise, it returns an error.
6440 */
6441 Return?: Boolean;
6442 }
6443 export interface CreateRouteTableRequest {
6444 /**
6445 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6446 */
6447 DryRun?: Boolean;
6448 /**
6449 * The ID of the VPC.
6450 */
6451 VpcId: VpcId;
6452 }
6453 export interface CreateRouteTableResult {
6454 /**
6455 * Information about the route table.
6456 */
6457 RouteTable?: RouteTable;
6458 }
6459 export interface CreateSecurityGroupRequest {
6460 /**
6461 * 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;;{}!$*
6462 */
6463 Description: String;
6464 /**
6465 * 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;;{}!$*
6466 */
6467 GroupName: String;
6468 /**
6469 * [EC2-VPC] The ID of the VPC. Required for EC2-VPC.
6470 */
6471 VpcId?: VpcId;
6472 /**
6473 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6474 */
6475 DryRun?: Boolean;
6476 }
6477 export interface CreateSecurityGroupResult {
6478 /**
6479 * The ID of the security group.
6480 */
6481 GroupId?: String;
6482 }
6483 export interface CreateSnapshotRequest {
6484 /**
6485 * A description for the snapshot.
6486 */
6487 Description?: String;
6488 /**
6489 * The ID of the EBS volume.
6490 */
6491 VolumeId: VolumeId;
6492 /**
6493 * The tags to apply to the snapshot during creation.
6494 */
6495 TagSpecifications?: TagSpecificationList;
6496 /**
6497 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6498 */
6499 DryRun?: Boolean;
6500 }
6501 export interface CreateSnapshotsRequest {
6502 /**
6503 * A description propagated to every snapshot specified by the instance.
6504 */
6505 Description?: String;
6506 /**
6507 * The instance to specify which volumes should be included in the snapshots.
6508 */
6509 InstanceSpecification: InstanceSpecification;
6510 /**
6511 * Tags to apply to every snapshot specified by the instance.
6512 */
6513 TagSpecifications?: TagSpecificationList;
6514 /**
6515 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6516 */
6517 DryRun?: Boolean;
6518 /**
6519 * Copies the tags from the specified volume to corresponding snapshot.
6520 */
6521 CopyTagsFromSource?: CopyTagsFromSource;
6522 }
6523 export interface CreateSnapshotsResult {
6524 /**
6525 * List of snapshots.
6526 */
6527 Snapshots?: SnapshotSet;
6528 }
6529 export interface CreateSpotDatafeedSubscriptionRequest {
6530 /**
6531 * The Amazon S3 bucket in which to store the Spot Instance data feed.
6532 */
6533 Bucket: String;
6534 /**
6535 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6536 */
6537 DryRun?: Boolean;
6538 /**
6539 * A prefix for the data feed file names.
6540 */
6541 Prefix?: String;
6542 }
6543 export interface CreateSpotDatafeedSubscriptionResult {
6544 /**
6545 * The Spot Instance data feed subscription.
6546 */
6547 SpotDatafeedSubscription?: SpotDatafeedSubscription;
6548 }
6549 export interface CreateSubnetRequest {
6550 /**
6551 * The Availability Zone or Local Zone for the subnet. Default: AWS selects one for you. If you create more than one subnet in your VPC, we do not necessarily select a different zone for each subnet. To create a subnet in a Local Zone, set this value to the Local Zone ID, for example us-west-2-lax-1a. For information about the Regions that support Local Zones, see Available Regions in the Amazon Elastic Compute Cloud User Guide.
6552 */
6553 AvailabilityZone?: String;
6554 /**
6555 * The AZ ID or the Local Zone ID of the subnet.
6556 */
6557 AvailabilityZoneId?: String;
6558 /**
6559 * The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.
6560 */
6561 CidrBlock: String;
6562 /**
6563 * The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
6564 */
6565 Ipv6CidrBlock?: String;
6566 /**
6567 * The Amazon Resource Name (ARN) of the Outpost.
6568 */
6569 OutpostArn?: String;
6570 /**
6571 * The ID of the VPC.
6572 */
6573 VpcId: VpcId;
6574 /**
6575 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6576 */
6577 DryRun?: Boolean;
6578 }
6579 export interface CreateSubnetResult {
6580 /**
6581 * Information about the subnet.
6582 */
6583 Subnet?: Subnet;
6584 }
6585 export interface CreateTagsRequest {
6586 /**
6587 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6588 */
6589 DryRun?: Boolean;
6590 /**
6591 * The IDs of the resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
6592 */
6593 Resources: ResourceIdList;
6594 /**
6595 * The 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.
6596 */
6597 Tags: TagList;
6598 }
6599 export interface CreateTrafficMirrorFilterRequest {
6600 /**
6601 * The description of the Traffic Mirror filter.
6602 */
6603 Description?: String;
6604 /**
6605 * The tags to assign to a Traffic Mirror filter.
6606 */
6607 TagSpecifications?: TagSpecificationList;
6608 /**
6609 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6610 */
6611 DryRun?: Boolean;
6612 /**
6613 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6614 */
6615 ClientToken?: String;
6616 }
6617 export interface CreateTrafficMirrorFilterResult {
6618 /**
6619 * Information about the Traffic Mirror filter.
6620 */
6621 TrafficMirrorFilter?: TrafficMirrorFilter;
6622 /**
6623 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6624 */
6625 ClientToken?: String;
6626 }
6627 export interface CreateTrafficMirrorFilterRuleRequest {
6628 /**
6629 * The ID of the filter that this rule is associated with.
6630 */
6631 TrafficMirrorFilterId: TrafficMirrorFilterId;
6632 /**
6633 * The type of traffic (ingress | egress).
6634 */
6635 TrafficDirection: TrafficDirection;
6636 /**
6637 * The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.
6638 */
6639 RuleNumber: Integer;
6640 /**
6641 * The action to take (accept | reject) on the filtered traffic.
6642 */
6643 RuleAction: TrafficMirrorRuleAction;
6644 /**
6645 * The destination port range.
6646 */
6647 DestinationPortRange?: TrafficMirrorPortRangeRequest;
6648 /**
6649 * The source port range.
6650 */
6651 SourcePortRange?: TrafficMirrorPortRangeRequest;
6652 /**
6653 * The protocol, for example UDP, to assign to the Traffic Mirror rule. For information about the protocol value, see Protocol Numbers on the Internet Assigned Numbers Authority (IANA) website.
6654 */
6655 Protocol?: Integer;
6656 /**
6657 * The destination CIDR block to assign to the Traffic Mirror rule.
6658 */
6659 DestinationCidrBlock: String;
6660 /**
6661 * The source CIDR block to assign to the Traffic Mirror rule.
6662 */
6663 SourceCidrBlock: String;
6664 /**
6665 * The description of the Traffic Mirror rule.
6666 */
6667 Description?: String;
6668 /**
6669 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6670 */
6671 DryRun?: Boolean;
6672 /**
6673 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6674 */
6675 ClientToken?: String;
6676 }
6677 export interface CreateTrafficMirrorFilterRuleResult {
6678 /**
6679 * The Traffic Mirror rule.
6680 */
6681 TrafficMirrorFilterRule?: TrafficMirrorFilterRule;
6682 /**
6683 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6684 */
6685 ClientToken?: String;
6686 }
6687 export interface CreateTrafficMirrorSessionRequest {
6688 /**
6689 * The ID of the source network interface.
6690 */
6691 NetworkInterfaceId: NetworkInterfaceId;
6692 /**
6693 * The ID of the Traffic Mirror target.
6694 */
6695 TrafficMirrorTargetId: TrafficMirrorTargetId;
6696 /**
6697 * The ID of the Traffic Mirror filter.
6698 */
6699 TrafficMirrorFilterId: TrafficMirrorFilterId;
6700 /**
6701 * The number of bytes in each packet to mirror. These are bytes after the VXLAN header. Do not specify this parameter when you want to mirror the entire packet. To mirror a subset of the packet, set this to the length (in bytes) that you want to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. If you do not want to mirror the entire packet, use the PacketLength parameter to specify the number of bytes in each packet to mirror.
6702 */
6703 PacketLength?: Integer;
6704 /**
6705 * The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets. Valid values are 1-32766.
6706 */
6707 SessionNumber: Integer;
6708 /**
6709 * The VXLAN ID for the Traffic Mirror session. For more information about the VXLAN protocol, see RFC 7348. If you do not specify a VirtualNetworkId, an account-wide unique id is chosen at random.
6710 */
6711 VirtualNetworkId?: Integer;
6712 /**
6713 * The description of the Traffic Mirror session.
6714 */
6715 Description?: String;
6716 /**
6717 * The tags to assign to a Traffic Mirror session.
6718 */
6719 TagSpecifications?: TagSpecificationList;
6720 /**
6721 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6722 */
6723 DryRun?: Boolean;
6724 /**
6725 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6726 */
6727 ClientToken?: String;
6728 }
6729 export interface CreateTrafficMirrorSessionResult {
6730 /**
6731 * Information about the Traffic Mirror session.
6732 */
6733 TrafficMirrorSession?: TrafficMirrorSession;
6734 /**
6735 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6736 */
6737 ClientToken?: String;
6738 }
6739 export interface CreateTrafficMirrorTargetRequest {
6740 /**
6741 * The network interface ID that is associated with the target.
6742 */
6743 NetworkInterfaceId?: NetworkInterfaceId;
6744 /**
6745 * The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the target.
6746 */
6747 NetworkLoadBalancerArn?: String;
6748 /**
6749 * The description of the Traffic Mirror target.
6750 */
6751 Description?: String;
6752 /**
6753 * The tags to assign to the Traffic Mirror target.
6754 */
6755 TagSpecifications?: TagSpecificationList;
6756 /**
6757 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6758 */
6759 DryRun?: Boolean;
6760 /**
6761 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6762 */
6763 ClientToken?: String;
6764 }
6765 export interface CreateTrafficMirrorTargetResult {
6766 /**
6767 * Information about the Traffic Mirror target.
6768 */
6769 TrafficMirrorTarget?: TrafficMirrorTarget;
6770 /**
6771 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
6772 */
6773 ClientToken?: String;
6774 }
6775 export interface CreateTransitGatewayMulticastDomainRequest {
6776 /**
6777 * The ID of the transit gateway.
6778 */
6779 TransitGatewayId: TransitGatewayId;
6780 /**
6781 * The tags for the transit gateway multicast domain.
6782 */
6783 TagSpecifications?: TagSpecificationList;
6784 /**
6785 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6786 */
6787 DryRun?: Boolean;
6788 }
6789 export interface CreateTransitGatewayMulticastDomainResult {
6790 /**
6791 * Information about the transit gateway multicast domain.
6792 */
6793 TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain;
6794 }
6795 export interface CreateTransitGatewayPeeringAttachmentRequest {
6796 /**
6797 * The ID of the transit gateway.
6798 */
6799 TransitGatewayId: TransitGatewayId;
6800 /**
6801 * The ID of the peer transit gateway with which to create the peering attachment.
6802 */
6803 PeerTransitGatewayId: TransitAssociationGatewayId;
6804 /**
6805 * The AWS account ID of the owner of the peer transit gateway.
6806 */
6807 PeerAccountId: String;
6808 /**
6809 * The Region where the peer transit gateway is located.
6810 */
6811 PeerRegion: String;
6812 /**
6813 * The tags to apply to the transit gateway peering attachment.
6814 */
6815 TagSpecifications?: TagSpecificationList;
6816 /**
6817 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6818 */
6819 DryRun?: Boolean;
6820 }
6821 export interface CreateTransitGatewayPeeringAttachmentResult {
6822 /**
6823 * The transit gateway peering attachment.
6824 */
6825 TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment;
6826 }
6827 export interface CreateTransitGatewayRequest {
6828 /**
6829 * A description of the transit gateway.
6830 */
6831 Description?: String;
6832 /**
6833 * The transit gateway options.
6834 */
6835 Options?: TransitGatewayRequestOptions;
6836 /**
6837 * The tags to apply to the transit gateway.
6838 */
6839 TagSpecifications?: TagSpecificationList;
6840 /**
6841 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6842 */
6843 DryRun?: Boolean;
6844 }
6845 export interface CreateTransitGatewayResult {
6846 /**
6847 * Information about the transit gateway.
6848 */
6849 TransitGateway?: TransitGateway;
6850 }
6851 export interface CreateTransitGatewayRouteRequest {
6852 /**
6853 * The CIDR range used for destination matches. Routing decisions are based on the most specific match.
6854 */
6855 DestinationCidrBlock: String;
6856 /**
6857 * The ID of the transit gateway route table.
6858 */
6859 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
6860 /**
6861 * The ID of the attachment.
6862 */
6863 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
6864 /**
6865 * Indicates whether to drop traffic that matches this route.
6866 */
6867 Blackhole?: Boolean;
6868 /**
6869 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6870 */
6871 DryRun?: Boolean;
6872 }
6873 export interface CreateTransitGatewayRouteResult {
6874 /**
6875 * Information about the route.
6876 */
6877 Route?: TransitGatewayRoute;
6878 }
6879 export interface CreateTransitGatewayRouteTableRequest {
6880 /**
6881 * The ID of the transit gateway.
6882 */
6883 TransitGatewayId: TransitGatewayId;
6884 /**
6885 * The tags to apply to the transit gateway route table.
6886 */
6887 TagSpecifications?: TagSpecificationList;
6888 /**
6889 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6890 */
6891 DryRun?: Boolean;
6892 }
6893 export interface CreateTransitGatewayRouteTableResult {
6894 /**
6895 * Information about the transit gateway route table.
6896 */
6897 TransitGatewayRouteTable?: TransitGatewayRouteTable;
6898 }
6899 export interface CreateTransitGatewayVpcAttachmentRequest {
6900 /**
6901 * The ID of the transit gateway.
6902 */
6903 TransitGatewayId: TransitGatewayId;
6904 /**
6905 * The ID of the VPC.
6906 */
6907 VpcId: VpcId;
6908 /**
6909 * 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.
6910 */
6911 SubnetIds: TransitGatewaySubnetIdList;
6912 /**
6913 * The VPC attachment options.
6914 */
6915 Options?: CreateTransitGatewayVpcAttachmentRequestOptions;
6916 /**
6917 * The tags to apply to the VPC attachment.
6918 */
6919 TagSpecifications?: TagSpecificationList;
6920 /**
6921 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6922 */
6923 DryRun?: Boolean;
6924 }
6925 export interface CreateTransitGatewayVpcAttachmentRequestOptions {
6926 /**
6927 * Enable or disable DNS support. The default is enable.
6928 */
6929 DnsSupport?: DnsSupportValue;
6930 /**
6931 * Enable or disable IPv6 support. The default is enable.
6932 */
6933 Ipv6Support?: Ipv6SupportValue;
6934 }
6935 export interface CreateTransitGatewayVpcAttachmentResult {
6936 /**
6937 * Information about the VPC attachment.
6938 */
6939 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
6940 }
6941 export interface CreateVolumePermission {
6942 /**
6943 * The group to be added or removed. The possible value is all.
6944 */
6945 Group?: PermissionGroup;
6946 /**
6947 * The AWS account ID to be added or removed.
6948 */
6949 UserId?: String;
6950 }
6951 export type CreateVolumePermissionList = CreateVolumePermission[];
6952 export interface CreateVolumePermissionModifications {
6953 /**
6954 * Adds the specified AWS account ID or group to the list.
6955 */
6956 Add?: CreateVolumePermissionList;
6957 /**
6958 * Removes the specified AWS account ID or group from the list.
6959 */
6960 Remove?: CreateVolumePermissionList;
6961 }
6962 export interface CreateVolumeRequest {
6963 /**
6964 * The Availability Zone in which to create the volume.
6965 */
6966 AvailabilityZone: String;
6967 /**
6968 * Specifies whether the volume should be encrypted. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Encryption by Default in the Amazon Elastic Compute Cloud User Guide. Encrypted Amazon EBS volumes must be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types.
6969 */
6970 Encrypted?: Boolean;
6971 /**
6972 * 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.
6973 */
6974 Iops?: Integer;
6975 /**
6976 * The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption. If this parameter is not specified, your AWS managed CMK for EBS is used. If KmsKeyId is specified, the encrypted state must be true. You can specify the CMK using any of the following: Key ID. For example, key/1234abcd-12ab-34cd-56ef-1234567890ab. Key alias. For example, alias/ExampleAlias. Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS authenticates the CMK asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails.
6977 */
6978 KmsKeyId?: KmsKeyId;
6979 /**
6980 * The Amazon Resource Name (ARN) of the Outpost.
6981 */
6982 OutpostArn?: String;
6983 /**
6984 * The size of the volume, in GiBs. You must specify either a snapshot ID or a volume size. 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.
6985 */
6986 Size?: Integer;
6987 /**
6988 * The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
6989 */
6990 SnapshotId?: SnapshotId;
6991 /**
6992 * 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. Default: gp2
6993 */
6994 VolumeType?: VolumeType;
6995 /**
6996 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
6997 */
6998 DryRun?: Boolean;
6999 /**
7000 * The tags to apply to the volume during creation.
7001 */
7002 TagSpecifications?: TagSpecificationList;
7003 /**
7004 * Specifies whether to enable Amazon EBS Multi-Attach. If you enable Multi-Attach, you can attach the volume to up to 16 Nitro-based instances in the same Availability Zone. For more information, see Amazon EBS Multi-Attach in the Amazon Elastic Compute Cloud User Guide.
7005 */
7006 MultiAttachEnabled?: Boolean;
7007 }
7008 export interface CreateVpcEndpointConnectionNotificationRequest {
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 * The ID of the endpoint service.
7015 */
7016 ServiceId?: VpcEndpointServiceId;
7017 /**
7018 * The ID of the endpoint.
7019 */
7020 VpcEndpointId?: VpcEndpointId;
7021 /**
7022 * The ARN of the SNS topic for the notifications.
7023 */
7024 ConnectionNotificationArn: String;
7025 /**
7026 * One or more endpoint events for which to receive notifications. Valid values are Accept, Connect, Delete, and Reject.
7027 */
7028 ConnectionEvents: ValueStringList;
7029 /**
7030 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
7031 */
7032 ClientToken?: String;
7033 }
7034 export interface CreateVpcEndpointConnectionNotificationResult {
7035 /**
7036 * Information about the notification.
7037 */
7038 ConnectionNotification?: ConnectionNotification;
7039 /**
7040 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
7041 */
7042 ClientToken?: String;
7043 }
7044 export interface CreateVpcEndpointRequest {
7045 /**
7046 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7047 */
7048 DryRun?: Boolean;
7049 /**
7050 * The type of endpoint. Default: Gateway
7051 */
7052 VpcEndpointType?: VpcEndpointType;
7053 /**
7054 * The ID of the VPC in which the endpoint will be used.
7055 */
7056 VpcId: VpcId;
7057 /**
7058 * The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service provider.
7059 */
7060 ServiceName: String;
7061 /**
7062 * 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.
7063 */
7064 PolicyDocument?: String;
7065 /**
7066 * (Gateway endpoint) One or more route table IDs.
7067 */
7068 RouteTableIds?: VpcEndpointRouteTableIdList;
7069 /**
7070 * (Interface endpoint) The ID of one or more subnets in which to create an endpoint network interface.
7071 */
7072 SubnetIds?: VpcEndpointSubnetIdList;
7073 /**
7074 * (Interface endpoint) The ID of one or more security groups to associate with the endpoint network interface.
7075 */
7076 SecurityGroupIds?: VpcEndpointSecurityGroupIdList;
7077 /**
7078 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
7079 */
7080 ClientToken?: String;
7081 /**
7082 * (Interface endpoint) Indicates 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: true
7083 */
7084 PrivateDnsEnabled?: Boolean;
7085 /**
7086 * The tags to associate with the endpoint.
7087 */
7088 TagSpecifications?: TagSpecificationList;
7089 }
7090 export interface CreateVpcEndpointResult {
7091 /**
7092 * Information about the endpoint.
7093 */
7094 VpcEndpoint?: VpcEndpoint;
7095 /**
7096 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
7097 */
7098 ClientToken?: String;
7099 }
7100 export interface CreateVpcEndpointServiceConfigurationRequest {
7101 /**
7102 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7103 */
7104 DryRun?: Boolean;
7105 /**
7106 * Indicates whether requests from service consumers to create an endpoint to your service must be accepted. To accept a request, use AcceptVpcEndpointConnections.
7107 */
7108 AcceptanceRequired?: Boolean;
7109 /**
7110 * The private DNS name to assign to the VPC endpoint service.
7111 */
7112 PrivateDnsName?: String;
7113 /**
7114 * The Amazon Resource Names (ARNs) of one or more Network Load Balancers for your service.
7115 */
7116 NetworkLoadBalancerArns: ValueStringList;
7117 /**
7118 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
7119 */
7120 ClientToken?: String;
7121 /**
7122 * The tags to associate with the service.
7123 */
7124 TagSpecifications?: TagSpecificationList;
7125 }
7126 export interface CreateVpcEndpointServiceConfigurationResult {
7127 /**
7128 * Information about the service configuration.
7129 */
7130 ServiceConfiguration?: ServiceConfiguration;
7131 /**
7132 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
7133 */
7134 ClientToken?: String;
7135 }
7136 export interface CreateVpcPeeringConnectionRequest {
7137 /**
7138 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7139 */
7140 DryRun?: Boolean;
7141 /**
7142 * The AWS account ID of the owner of the accepter VPC. Default: Your AWS account ID
7143 */
7144 PeerOwnerId?: String;
7145 /**
7146 * The ID of the VPC with which you are creating the VPC peering connection. You must specify this parameter in the request.
7147 */
7148 PeerVpcId?: String;
7149 /**
7150 * The ID of the requester VPC. You must specify this parameter in the request.
7151 */
7152 VpcId?: VpcId;
7153 /**
7154 * 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.
7155 */
7156 PeerRegion?: String;
7157 }
7158 export interface CreateVpcPeeringConnectionResult {
7159 /**
7160 * Information about the VPC peering connection.
7161 */
7162 VpcPeeringConnection?: VpcPeeringConnection;
7163 }
7164 export interface CreateVpcRequest {
7165 /**
7166 * The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.
7167 */
7168 CidrBlock: String;
7169 /**
7170 * 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.
7171 */
7172 AmazonProvidedIpv6CidrBlock?: Boolean;
7173 /**
7174 * The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
7175 */
7176 Ipv6Pool?: Ipv6PoolEc2Id;
7177 /**
7178 * The IPv6 CIDR block from the IPv6 address pool. You must also specify Ipv6Pool in the request. To let Amazon choose the IPv6 CIDR block for you, omit this parameter.
7179 */
7180 Ipv6CidrBlock?: String;
7181 /**
7182 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7183 */
7184 DryRun?: Boolean;
7185 /**
7186 * 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
7187 */
7188 InstanceTenancy?: Tenancy;
7189 /**
7190 * The name of the location from which we advertise the IPV6 CIDR block. Use this parameter to limit the address to this location. You must set AmazonProvidedIpv6CidrBlock to true to use this parameter.
7191 */
7192 Ipv6CidrBlockNetworkBorderGroup?: String;
7193 }
7194 export interface CreateVpcResult {
7195 /**
7196 * Information about the VPC.
7197 */
7198 Vpc?: Vpc;
7199 }
7200 export interface CreateVpnConnectionRequest {
7201 /**
7202 * The ID of the customer gateway.
7203 */
7204 CustomerGatewayId: CustomerGatewayId;
7205 /**
7206 * The type of VPN connection (ipsec.1).
7207 */
7208 Type: String;
7209 /**
7210 * The ID of the virtual private gateway. If you specify a virtual private gateway, you cannot specify a transit gateway.
7211 */
7212 VpnGatewayId?: VpnGatewayId;
7213 /**
7214 * The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private gateway.
7215 */
7216 TransitGatewayId?: TransitGatewayId;
7217 /**
7218 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7219 */
7220 DryRun?: Boolean;
7221 /**
7222 * The options for the VPN connection.
7223 */
7224 Options?: VpnConnectionOptionsSpecification;
7225 }
7226 export interface CreateVpnConnectionResult {
7227 /**
7228 * Information about the VPN connection.
7229 */
7230 VpnConnection?: VpnConnection;
7231 }
7232 export interface CreateVpnConnectionRouteRequest {
7233 /**
7234 * The CIDR block associated with the local subnet of the customer network.
7235 */
7236 DestinationCidrBlock: String;
7237 /**
7238 * The ID of the VPN connection.
7239 */
7240 VpnConnectionId: VpnConnectionId;
7241 }
7242 export interface CreateVpnGatewayRequest {
7243 /**
7244 * The Availability Zone for the virtual private gateway.
7245 */
7246 AvailabilityZone?: String;
7247 /**
7248 * The type of VPN connection this virtual private gateway supports.
7249 */
7250 Type: GatewayType;
7251 /**
7252 * 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
7253 */
7254 AmazonSideAsn?: Long;
7255 /**
7256 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7257 */
7258 DryRun?: Boolean;
7259 }
7260 export interface CreateVpnGatewayResult {
7261 /**
7262 * Information about the virtual private gateway.
7263 */
7264 VpnGateway?: VpnGateway;
7265 }
7266 export interface CreditSpecification {
7267 /**
7268 * The credit option for CPU usage of a T2 or T3 instance. Valid values are standard and unlimited.
7269 */
7270 CpuCredits?: String;
7271 }
7272 export interface CreditSpecificationRequest {
7273 /**
7274 * The credit option for CPU usage of a T2 or T3 instance. Valid values are standard and unlimited.
7275 */
7276 CpuCredits: String;
7277 }
7278 export type CurrencyCodeValues = "USD"|string;
7279 export type CurrentGenerationFlag = boolean;
7280 export interface CustomerGateway {
7281 /**
7282 * The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
7283 */
7284 BgpAsn?: String;
7285 /**
7286 * The ID of the customer gateway.
7287 */
7288 CustomerGatewayId?: String;
7289 /**
7290 * The Internet-routable IP address of the customer gateway's outside interface.
7291 */
7292 IpAddress?: String;
7293 /**
7294 * The Amazon Resource Name (ARN) for the customer gateway certificate.
7295 */
7296 CertificateArn?: String;
7297 /**
7298 * The current state of the customer gateway (pending | available | deleting | deleted).
7299 */
7300 State?: String;
7301 /**
7302 * The type of VPN connection the customer gateway supports (ipsec.1).
7303 */
7304 Type?: String;
7305 /**
7306 * The name of customer gateway device.
7307 */
7308 DeviceName?: String;
7309 /**
7310 * Any tags assigned to the customer gateway.
7311 */
7312 Tags?: TagList;
7313 }
7314 export type CustomerGatewayId = string;
7315 export type CustomerGatewayIdStringList = CustomerGatewayId[];
7316 export type CustomerGatewayList = CustomerGateway[];
7317 export type DITMaxResults = number;
7318 export type DITOMaxResults = number;
7319 export type DatafeedSubscriptionState = "Active"|"Inactive"|string;
7320 export type DateTime = Date;
7321 export type DedicatedHostFlag = boolean;
7322 export type DedicatedHostId = string;
7323 export type DefaultRouteTableAssociationValue = "enable"|"disable"|string;
7324 export type DefaultRouteTablePropagationValue = "enable"|"disable"|string;
7325 export type DefaultTargetCapacityType = "spot"|"on-demand"|string;
7326 export type DefaultingDhcpOptionsId = string;
7327 export interface DeleteClientVpnEndpointRequest {
7328 /**
7329 * The ID of the Client VPN to be deleted.
7330 */
7331 ClientVpnEndpointId: ClientVpnEndpointId;
7332 /**
7333 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7334 */
7335 DryRun?: Boolean;
7336 }
7337 export interface DeleteClientVpnEndpointResult {
7338 /**
7339 * The current state of the Client VPN endpoint.
7340 */
7341 Status?: ClientVpnEndpointStatus;
7342 }
7343 export interface DeleteClientVpnRouteRequest {
7344 /**
7345 * The ID of the Client VPN endpoint from which the route is to be deleted.
7346 */
7347 ClientVpnEndpointId: ClientVpnEndpointId;
7348 /**
7349 * The ID of the target subnet used by the route.
7350 */
7351 TargetVpcSubnetId?: SubnetId;
7352 /**
7353 * The IPv4 address range, in CIDR notation, of the route to be deleted.
7354 */
7355 DestinationCidrBlock: String;
7356 /**
7357 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7358 */
7359 DryRun?: Boolean;
7360 }
7361 export interface DeleteClientVpnRouteResult {
7362 /**
7363 * The current state of the route.
7364 */
7365 Status?: ClientVpnRouteStatus;
7366 }
7367 export interface DeleteCustomerGatewayRequest {
7368 /**
7369 * The ID of the customer gateway.
7370 */
7371 CustomerGatewayId: CustomerGatewayId;
7372 /**
7373 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7374 */
7375 DryRun?: Boolean;
7376 }
7377 export interface DeleteDhcpOptionsRequest {
7378 /**
7379 * The ID of the DHCP options set.
7380 */
7381 DhcpOptionsId: DhcpOptionsId;
7382 /**
7383 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7384 */
7385 DryRun?: Boolean;
7386 }
7387 export interface DeleteEgressOnlyInternetGatewayRequest {
7388 /**
7389 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7390 */
7391 DryRun?: Boolean;
7392 /**
7393 * The ID of the egress-only internet gateway.
7394 */
7395 EgressOnlyInternetGatewayId: EgressOnlyInternetGatewayId;
7396 }
7397 export interface DeleteEgressOnlyInternetGatewayResult {
7398 /**
7399 * Returns true if the request succeeds; otherwise, it returns an error.
7400 */
7401 ReturnCode?: Boolean;
7402 }
7403 export interface DeleteFleetError {
7404 /**
7405 * The error code.
7406 */
7407 Code?: DeleteFleetErrorCode;
7408 /**
7409 * The description for the error code.
7410 */
7411 Message?: String;
7412 }
7413 export type DeleteFleetErrorCode = "fleetIdDoesNotExist"|"fleetIdMalformed"|"fleetNotInDeletableState"|"unexpectedError"|string;
7414 export interface DeleteFleetErrorItem {
7415 /**
7416 * The error.
7417 */
7418 Error?: DeleteFleetError;
7419 /**
7420 * The ID of the EC2 Fleet.
7421 */
7422 FleetId?: FleetId;
7423 }
7424 export type DeleteFleetErrorSet = DeleteFleetErrorItem[];
7425 export interface DeleteFleetSuccessItem {
7426 /**
7427 * The current state of the EC2 Fleet.
7428 */
7429 CurrentFleetState?: FleetStateCode;
7430 /**
7431 * The previous state of the EC2 Fleet.
7432 */
7433 PreviousFleetState?: FleetStateCode;
7434 /**
7435 * The ID of the EC2 Fleet.
7436 */
7437 FleetId?: FleetId;
7438 }
7439 export type DeleteFleetSuccessSet = DeleteFleetSuccessItem[];
7440 export interface DeleteFleetsRequest {
7441 /**
7442 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7443 */
7444 DryRun?: Boolean;
7445 /**
7446 * The IDs of the EC2 Fleets.
7447 */
7448 FleetIds: FleetIdSet;
7449 /**
7450 * Indicates whether to terminate instances for an EC2 Fleet if it is deleted successfully.
7451 */
7452 TerminateInstances: Boolean;
7453 }
7454 export interface DeleteFleetsResult {
7455 /**
7456 * Information about the EC2 Fleets that are successfully deleted.
7457 */
7458 SuccessfulFleetDeletions?: DeleteFleetSuccessSet;
7459 /**
7460 * Information about the EC2 Fleets that are not successfully deleted.
7461 */
7462 UnsuccessfulFleetDeletions?: DeleteFleetErrorSet;
7463 }
7464 export interface DeleteFlowLogsRequest {
7465 /**
7466 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7467 */
7468 DryRun?: Boolean;
7469 /**
7470 * One or more flow log IDs. Constraint: Maximum of 1000 flow log IDs.
7471 */
7472 FlowLogIds: FlowLogIdList;
7473 }
7474 export interface DeleteFlowLogsResult {
7475 /**
7476 * Information about the flow logs that could not be deleted successfully.
7477 */
7478 Unsuccessful?: UnsuccessfulItemSet;
7479 }
7480 export interface DeleteFpgaImageRequest {
7481 /**
7482 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7483 */
7484 DryRun?: Boolean;
7485 /**
7486 * The ID of the AFI.
7487 */
7488 FpgaImageId: FpgaImageId;
7489 }
7490 export interface DeleteFpgaImageResult {
7491 /**
7492 * Is true if the request succeeds, and an error otherwise.
7493 */
7494 Return?: Boolean;
7495 }
7496 export interface DeleteInternetGatewayRequest {
7497 /**
7498 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7499 */
7500 DryRun?: Boolean;
7501 /**
7502 * The ID of the internet gateway.
7503 */
7504 InternetGatewayId: InternetGatewayId;
7505 }
7506 export interface DeleteKeyPairRequest {
7507 /**
7508 * The name of the key pair.
7509 */
7510 KeyName: KeyPairName;
7511 /**
7512 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7513 */
7514 DryRun?: Boolean;
7515 }
7516 export interface DeleteLaunchTemplateRequest {
7517 /**
7518 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7519 */
7520 DryRun?: Boolean;
7521 /**
7522 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
7523 */
7524 LaunchTemplateId?: LaunchTemplateId;
7525 /**
7526 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
7527 */
7528 LaunchTemplateName?: LaunchTemplateName;
7529 }
7530 export interface DeleteLaunchTemplateResult {
7531 /**
7532 * Information about the launch template.
7533 */
7534 LaunchTemplate?: LaunchTemplate;
7535 }
7536 export interface DeleteLaunchTemplateVersionsRequest {
7537 /**
7538 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7539 */
7540 DryRun?: Boolean;
7541 /**
7542 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
7543 */
7544 LaunchTemplateId?: LaunchTemplateId;
7545 /**
7546 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
7547 */
7548 LaunchTemplateName?: LaunchTemplateName;
7549 /**
7550 * The version numbers of one or more launch template versions to delete.
7551 */
7552 Versions: VersionStringList;
7553 }
7554 export interface DeleteLaunchTemplateVersionsResponseErrorItem {
7555 /**
7556 * The ID of the launch template.
7557 */
7558 LaunchTemplateId?: String;
7559 /**
7560 * The name of the launch template.
7561 */
7562 LaunchTemplateName?: String;
7563 /**
7564 * The version number of the launch template.
7565 */
7566 VersionNumber?: Long;
7567 /**
7568 * Information about the error.
7569 */
7570 ResponseError?: ResponseError;
7571 }
7572 export type DeleteLaunchTemplateVersionsResponseErrorSet = DeleteLaunchTemplateVersionsResponseErrorItem[];
7573 export interface DeleteLaunchTemplateVersionsResponseSuccessItem {
7574 /**
7575 * The ID of the launch template.
7576 */
7577 LaunchTemplateId?: String;
7578 /**
7579 * The name of the launch template.
7580 */
7581 LaunchTemplateName?: String;
7582 /**
7583 * The version number of the launch template.
7584 */
7585 VersionNumber?: Long;
7586 }
7587 export type DeleteLaunchTemplateVersionsResponseSuccessSet = DeleteLaunchTemplateVersionsResponseSuccessItem[];
7588 export interface DeleteLaunchTemplateVersionsResult {
7589 /**
7590 * Information about the launch template versions that were successfully deleted.
7591 */
7592 SuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseSuccessSet;
7593 /**
7594 * Information about the launch template versions that could not be deleted.
7595 */
7596 UnsuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseErrorSet;
7597 }
7598 export interface DeleteLocalGatewayRouteRequest {
7599 /**
7600 * The CIDR range for the route. This must match the CIDR for the route exactly.
7601 */
7602 DestinationCidrBlock: String;
7603 /**
7604 * The ID of the local gateway route table.
7605 */
7606 LocalGatewayRouteTableId: LocalGatewayRoutetableId;
7607 /**
7608 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7609 */
7610 DryRun?: Boolean;
7611 }
7612 export interface DeleteLocalGatewayRouteResult {
7613 /**
7614 * Information about the route.
7615 */
7616 Route?: LocalGatewayRoute;
7617 }
7618 export interface DeleteLocalGatewayRouteTableVpcAssociationRequest {
7619 /**
7620 * The ID of the association.
7621 */
7622 LocalGatewayRouteTableVpcAssociationId: LocalGatewayRouteTableVpcAssociationId;
7623 /**
7624 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7625 */
7626 DryRun?: Boolean;
7627 }
7628 export interface DeleteLocalGatewayRouteTableVpcAssociationResult {
7629 /**
7630 * Information about the association.
7631 */
7632 LocalGatewayRouteTableVpcAssociation?: LocalGatewayRouteTableVpcAssociation;
7633 }
7634 export interface DeleteNatGatewayRequest {
7635 /**
7636 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7637 */
7638 DryRun?: Boolean;
7639 /**
7640 * The ID of the NAT gateway.
7641 */
7642 NatGatewayId: NatGatewayId;
7643 }
7644 export interface DeleteNatGatewayResult {
7645 /**
7646 * The ID of the NAT gateway.
7647 */
7648 NatGatewayId?: String;
7649 }
7650 export interface DeleteNetworkAclEntryRequest {
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 * Indicates whether the rule is an egress rule.
7657 */
7658 Egress: Boolean;
7659 /**
7660 * The ID of the network ACL.
7661 */
7662 NetworkAclId: NetworkAclId;
7663 /**
7664 * The rule number of the entry to delete.
7665 */
7666 RuleNumber: Integer;
7667 }
7668 export interface DeleteNetworkAclRequest {
7669 /**
7670 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7671 */
7672 DryRun?: Boolean;
7673 /**
7674 * The ID of the network ACL.
7675 */
7676 NetworkAclId: NetworkAclId;
7677 }
7678 export interface DeleteNetworkInterfacePermissionRequest {
7679 /**
7680 * The ID of the network interface permission.
7681 */
7682 NetworkInterfacePermissionId: NetworkInterfacePermissionId;
7683 /**
7684 * Specify true to remove the permission even if the network interface is attached to an instance.
7685 */
7686 Force?: Boolean;
7687 /**
7688 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7689 */
7690 DryRun?: Boolean;
7691 }
7692 export interface DeleteNetworkInterfacePermissionResult {
7693 /**
7694 * Returns true if the request succeeds, otherwise returns an error.
7695 */
7696 Return?: Boolean;
7697 }
7698 export interface DeleteNetworkInterfaceRequest {
7699 /**
7700 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7701 */
7702 DryRun?: Boolean;
7703 /**
7704 * The ID of the network interface.
7705 */
7706 NetworkInterfaceId: NetworkInterfaceId;
7707 }
7708 export interface DeletePlacementGroupRequest {
7709 /**
7710 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7711 */
7712 DryRun?: Boolean;
7713 /**
7714 * The name of the placement group.
7715 */
7716 GroupName: PlacementGroupName;
7717 }
7718 export interface DeleteQueuedReservedInstancesError {
7719 /**
7720 * The error code.
7721 */
7722 Code?: DeleteQueuedReservedInstancesErrorCode;
7723 /**
7724 * The error message.
7725 */
7726 Message?: String;
7727 }
7728 export type DeleteQueuedReservedInstancesErrorCode = "reserved-instances-id-invalid"|"reserved-instances-not-in-queued-state"|"unexpected-error"|string;
7729 export type DeleteQueuedReservedInstancesIdList = ReservationId[];
7730 export interface DeleteQueuedReservedInstancesRequest {
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 IDs of the Reserved Instances.
7737 */
7738 ReservedInstancesIds: DeleteQueuedReservedInstancesIdList;
7739 }
7740 export interface DeleteQueuedReservedInstancesResult {
7741 /**
7742 * Information about the queued purchases that were successfully deleted.
7743 */
7744 SuccessfulQueuedPurchaseDeletions?: SuccessfulQueuedPurchaseDeletionSet;
7745 /**
7746 * Information about the queued purchases that could not be deleted.
7747 */
7748 FailedQueuedPurchaseDeletions?: FailedQueuedPurchaseDeletionSet;
7749 }
7750 export interface DeleteRouteRequest {
7751 /**
7752 * The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
7753 */
7754 DestinationCidrBlock?: String;
7755 /**
7756 * The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
7757 */
7758 DestinationIpv6CidrBlock?: String;
7759 /**
7760 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7761 */
7762 DryRun?: Boolean;
7763 /**
7764 * The ID of the route table.
7765 */
7766 RouteTableId: RouteTableId;
7767 }
7768 export interface DeleteRouteTableRequest {
7769 /**
7770 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7771 */
7772 DryRun?: Boolean;
7773 /**
7774 * The ID of the route table.
7775 */
7776 RouteTableId: RouteTableId;
7777 }
7778 export interface DeleteSecurityGroupRequest {
7779 /**
7780 * The ID of the security group. Required for a nondefault VPC.
7781 */
7782 GroupId?: SecurityGroupId;
7783 /**
7784 * [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.
7785 */
7786 GroupName?: SecurityGroupName;
7787 /**
7788 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7789 */
7790 DryRun?: Boolean;
7791 }
7792 export interface DeleteSnapshotRequest {
7793 /**
7794 * The ID of the EBS snapshot.
7795 */
7796 SnapshotId: SnapshotId;
7797 /**
7798 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7799 */
7800 DryRun?: Boolean;
7801 }
7802 export interface DeleteSpotDatafeedSubscriptionRequest {
7803 /**
7804 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7805 */
7806 DryRun?: Boolean;
7807 }
7808 export interface DeleteSubnetRequest {
7809 /**
7810 * The ID of the subnet.
7811 */
7812 SubnetId: SubnetId;
7813 /**
7814 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7815 */
7816 DryRun?: Boolean;
7817 }
7818 export interface DeleteTagsRequest {
7819 /**
7820 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7821 */
7822 DryRun?: Boolean;
7823 /**
7824 * The IDs of the resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
7825 */
7826 Resources: ResourceIdList;
7827 /**
7828 * The 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).
7829 */
7830 Tags?: TagList;
7831 }
7832 export interface DeleteTrafficMirrorFilterRequest {
7833 /**
7834 * The ID of the Traffic Mirror filter.
7835 */
7836 TrafficMirrorFilterId: TrafficMirrorFilterId;
7837 /**
7838 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7839 */
7840 DryRun?: Boolean;
7841 }
7842 export interface DeleteTrafficMirrorFilterResult {
7843 /**
7844 * The ID of the Traffic Mirror filter.
7845 */
7846 TrafficMirrorFilterId?: String;
7847 }
7848 export interface DeleteTrafficMirrorFilterRuleRequest {
7849 /**
7850 * The ID of the Traffic Mirror rule.
7851 */
7852 TrafficMirrorFilterRuleId: TrafficMirrorFilterRuleId;
7853 /**
7854 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7855 */
7856 DryRun?: Boolean;
7857 }
7858 export interface DeleteTrafficMirrorFilterRuleResult {
7859 /**
7860 * The ID of the deleted Traffic Mirror rule.
7861 */
7862 TrafficMirrorFilterRuleId?: String;
7863 }
7864 export interface DeleteTrafficMirrorSessionRequest {
7865 /**
7866 * The ID of the Traffic Mirror session.
7867 */
7868 TrafficMirrorSessionId: TrafficMirrorSessionId;
7869 /**
7870 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7871 */
7872 DryRun?: Boolean;
7873 }
7874 export interface DeleteTrafficMirrorSessionResult {
7875 /**
7876 * The ID of the deleted Traffic Mirror session.
7877 */
7878 TrafficMirrorSessionId?: String;
7879 }
7880 export interface DeleteTrafficMirrorTargetRequest {
7881 /**
7882 * The ID of the Traffic Mirror target.
7883 */
7884 TrafficMirrorTargetId: TrafficMirrorTargetId;
7885 /**
7886 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7887 */
7888 DryRun?: Boolean;
7889 }
7890 export interface DeleteTrafficMirrorTargetResult {
7891 /**
7892 * The ID of the deleted Traffic Mirror target.
7893 */
7894 TrafficMirrorTargetId?: String;
7895 }
7896 export interface DeleteTransitGatewayMulticastDomainRequest {
7897 /**
7898 * The ID of the transit gateway multicast domain.
7899 */
7900 TransitGatewayMulticastDomainId: TransitGatewayMulticastDomainId;
7901 /**
7902 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7903 */
7904 DryRun?: Boolean;
7905 }
7906 export interface DeleteTransitGatewayMulticastDomainResult {
7907 /**
7908 * Information about the deleted transit gateway multicast domain.
7909 */
7910 TransitGatewayMulticastDomain?: TransitGatewayMulticastDomain;
7911 }
7912 export interface DeleteTransitGatewayPeeringAttachmentRequest {
7913 /**
7914 * The ID of the transit gateway peering attachment.
7915 */
7916 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
7917 /**
7918 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7919 */
7920 DryRun?: Boolean;
7921 }
7922 export interface DeleteTransitGatewayPeeringAttachmentResult {
7923 /**
7924 * The transit gateway peering attachment.
7925 */
7926 TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment;
7927 }
7928 export interface DeleteTransitGatewayRequest {
7929 /**
7930 * The ID of the transit gateway.
7931 */
7932 TransitGatewayId: TransitGatewayId;
7933 /**
7934 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7935 */
7936 DryRun?: Boolean;
7937 }
7938 export interface DeleteTransitGatewayResult {
7939 /**
7940 * Information about the deleted transit gateway.
7941 */
7942 TransitGateway?: TransitGateway;
7943 }
7944 export interface DeleteTransitGatewayRouteRequest {
7945 /**
7946 * The ID of the transit gateway route table.
7947 */
7948 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
7949 /**
7950 * The CIDR range for the route. This must match the CIDR for the route exactly.
7951 */
7952 DestinationCidrBlock: String;
7953 /**
7954 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7955 */
7956 DryRun?: Boolean;
7957 }
7958 export interface DeleteTransitGatewayRouteResult {
7959 /**
7960 * Information about the route.
7961 */
7962 Route?: TransitGatewayRoute;
7963 }
7964 export interface DeleteTransitGatewayRouteTableRequest {
7965 /**
7966 * The ID of the transit gateway route table.
7967 */
7968 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
7969 /**
7970 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7971 */
7972 DryRun?: Boolean;
7973 }
7974 export interface DeleteTransitGatewayRouteTableResult {
7975 /**
7976 * Information about the deleted transit gateway route table.
7977 */
7978 TransitGatewayRouteTable?: TransitGatewayRouteTable;
7979 }
7980 export interface DeleteTransitGatewayVpcAttachmentRequest {
7981 /**
7982 * The ID of the attachment.
7983 */
7984 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
7985 /**
7986 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
7987 */
7988 DryRun?: Boolean;
7989 }
7990 export interface DeleteTransitGatewayVpcAttachmentResult {
7991 /**
7992 * Information about the deleted VPC attachment.
7993 */
7994 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
7995 }
7996 export interface DeleteVolumeRequest {
7997 /**
7998 * The ID of the volume.
7999 */
8000 VolumeId: VolumeId;
8001 /**
8002 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8003 */
8004 DryRun?: Boolean;
8005 }
8006 export interface DeleteVpcEndpointConnectionNotificationsRequest {
8007 /**
8008 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8009 */
8010 DryRun?: Boolean;
8011 /**
8012 * One or more notification IDs.
8013 */
8014 ConnectionNotificationIds: ValueStringList;
8015 }
8016 export interface DeleteVpcEndpointConnectionNotificationsResult {
8017 /**
8018 * Information about the notifications that could not be deleted successfully.
8019 */
8020 Unsuccessful?: UnsuccessfulItemSet;
8021 }
8022 export interface DeleteVpcEndpointServiceConfigurationsRequest {
8023 /**
8024 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8025 */
8026 DryRun?: Boolean;
8027 /**
8028 * The IDs of one or more services.
8029 */
8030 ServiceIds: VpcEndpointServiceIdList;
8031 }
8032 export interface DeleteVpcEndpointServiceConfigurationsResult {
8033 /**
8034 * Information about the service configurations that were not deleted, if applicable.
8035 */
8036 Unsuccessful?: UnsuccessfulItemSet;
8037 }
8038 export interface DeleteVpcEndpointsRequest {
8039 /**
8040 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8041 */
8042 DryRun?: Boolean;
8043 /**
8044 * One or more VPC endpoint IDs.
8045 */
8046 VpcEndpointIds: VpcEndpointIdList;
8047 }
8048 export interface DeleteVpcEndpointsResult {
8049 /**
8050 * Information about the VPC endpoints that were not successfully deleted.
8051 */
8052 Unsuccessful?: UnsuccessfulItemSet;
8053 }
8054 export interface DeleteVpcPeeringConnectionRequest {
8055 /**
8056 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8057 */
8058 DryRun?: Boolean;
8059 /**
8060 * The ID of the VPC peering connection.
8061 */
8062 VpcPeeringConnectionId: VpcPeeringConnectionId;
8063 }
8064 export interface DeleteVpcPeeringConnectionResult {
8065 /**
8066 * Returns true if the request succeeds; otherwise, it returns an error.
8067 */
8068 Return?: Boolean;
8069 }
8070 export interface DeleteVpcRequest {
8071 /**
8072 * The ID of the VPC.
8073 */
8074 VpcId: VpcId;
8075 /**
8076 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8077 */
8078 DryRun?: Boolean;
8079 }
8080 export interface DeleteVpnConnectionRequest {
8081 /**
8082 * The ID of the VPN connection.
8083 */
8084 VpnConnectionId: VpnConnectionId;
8085 /**
8086 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8087 */
8088 DryRun?: Boolean;
8089 }
8090 export interface DeleteVpnConnectionRouteRequest {
8091 /**
8092 * The CIDR block associated with the local subnet of the customer network.
8093 */
8094 DestinationCidrBlock: String;
8095 /**
8096 * The ID of the VPN connection.
8097 */
8098 VpnConnectionId: VpnConnectionId;
8099 }
8100 export interface DeleteVpnGatewayRequest {
8101 /**
8102 * The ID of the virtual private gateway.
8103 */
8104 VpnGatewayId: VpnGatewayId;
8105 /**
8106 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8107 */
8108 DryRun?: Boolean;
8109 }
8110 export interface DeprovisionByoipCidrRequest {
8111 /**
8112 * The address range, in CIDR notation. The prefix must be the same prefix that you specified when you provisioned the address range.
8113 */
8114 Cidr: String;
8115 /**
8116 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8117 */
8118 DryRun?: Boolean;
8119 }
8120 export interface DeprovisionByoipCidrResult {
8121 /**
8122 * Information about the address range.
8123 */
8124 ByoipCidr?: ByoipCidr;
8125 }
8126 export interface DeregisterImageRequest {
8127 /**
8128 * The ID of the AMI.
8129 */
8130 ImageId: ImageId;
8131 /**
8132 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8133 */
8134 DryRun?: Boolean;
8135 }
8136 export interface DeregisterTransitGatewayMulticastGroupMembersRequest {
8137 /**
8138 * The ID of the transit gateway multicast domain.
8139 */
8140 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
8141 /**
8142 * The IP address assigned to the transit gateway multicast group.
8143 */
8144 GroupIpAddress?: String;
8145 /**
8146 * The IDs of the group members' network interfaces.
8147 */
8148 NetworkInterfaceIds?: TransitGatewayNetworkInterfaceIdList;
8149 /**
8150 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8151 */
8152 DryRun?: Boolean;
8153 }
8154 export interface DeregisterTransitGatewayMulticastGroupMembersResult {
8155 /**
8156 * Information about the deregistered members.
8157 */
8158 DeregisteredMulticastGroupMembers?: TransitGatewayMulticastDeregisteredGroupMembers;
8159 }
8160 export interface DeregisterTransitGatewayMulticastGroupSourcesRequest {
8161 /**
8162 * The ID of the transit gateway multicast domain.
8163 */
8164 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
8165 /**
8166 * The IP address assigned to the transit gateway multicast group.
8167 */
8168 GroupIpAddress?: String;
8169 /**
8170 * The IDs of the group sources' network interfaces.
8171 */
8172 NetworkInterfaceIds?: TransitGatewayNetworkInterfaceIdList;
8173 /**
8174 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8175 */
8176 DryRun?: Boolean;
8177 }
8178 export interface DeregisterTransitGatewayMulticastGroupSourcesResult {
8179 /**
8180 * Information about the deregistered group sources.
8181 */
8182 DeregisteredMulticastGroupSources?: TransitGatewayMulticastDeregisteredGroupSources;
8183 }
8184 export interface DescribeAccountAttributesRequest {
8185 /**
8186 * The account attribute names.
8187 */
8188 AttributeNames?: AccountAttributeNameStringList;
8189 /**
8190 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8191 */
8192 DryRun?: Boolean;
8193 }
8194 export interface DescribeAccountAttributesResult {
8195 /**
8196 * Information about the account attributes.
8197 */
8198 AccountAttributes?: AccountAttributeList;
8199 }
8200 export interface DescribeAddressesRequest {
8201 /**
8202 * 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-border-group - The location from where the IP address is advertised. 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.
8203 */
8204 Filters?: FilterList;
8205 /**
8206 * One or more Elastic IP addresses. Default: Describes all your Elastic IP addresses.
8207 */
8208 PublicIps?: PublicIpStringList;
8209 /**
8210 * [EC2-VPC] Information about the allocation IDs.
8211 */
8212 AllocationIds?: AllocationIdList;
8213 /**
8214 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8215 */
8216 DryRun?: Boolean;
8217 }
8218 export interface DescribeAddressesResult {
8219 /**
8220 * Information about the Elastic IP addresses.
8221 */
8222 Addresses?: AddressList;
8223 }
8224 export interface DescribeAggregateIdFormatRequest {
8225 /**
8226 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8227 */
8228 DryRun?: Boolean;
8229 }
8230 export interface DescribeAggregateIdFormatResult {
8231 /**
8232 * 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.
8233 */
8234 UseLongIdsAggregated?: Boolean;
8235 /**
8236 * Information about each resource's ID format.
8237 */
8238 Statuses?: IdFormatList;
8239 }
8240 export interface DescribeAvailabilityZonesRequest {
8241 /**
8242 * The filters. group-name - For Availability Zones, use the Region name. For Local Zones, use the name of the group associated with the Local Zone (for example, us-west-2-lax-1). message - The Availability Zone or Local Zone message. opt-in-status - The opt in status (opted-in, and not-opted-in | opt-in-not-required). region-name - The name of the Region for the Availability Zone or Local Zone (for example, us-east-1). state - The state of the Availability Zone or Local Zone (available | information | impaired | unavailable). zone-id - The ID of the Availability Zone (for example, use1-az1) or the Local Zone (for example, use usw2-lax1-az1). zone-name - The name of the Availability Zone (for example, us-east-1a) or the Local Zone (for example, use us-west-2-lax-1a).
8243 */
8244 Filters?: FilterList;
8245 /**
8246 * The names of the Availability Zones and Local Zones.
8247 */
8248 ZoneNames?: ZoneNameStringList;
8249 /**
8250 * The IDs of the Availability Zones and Local Zones.
8251 */
8252 ZoneIds?: ZoneIdStringList;
8253 /**
8254 * Include all Availability Zones and Local Zones regardless of your opt in status. If you do not use this parameter, the results include only the zones for the Regions where you have chosen the option to opt in.
8255 */
8256 AllAvailabilityZones?: Boolean;
8257 /**
8258 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8259 */
8260 DryRun?: Boolean;
8261 }
8262 export interface DescribeAvailabilityZonesResult {
8263 /**
8264 * Information about the Availability Zones and Local Zones.
8265 */
8266 AvailabilityZones?: AvailabilityZoneList;
8267 }
8268 export interface DescribeBundleTasksRequest {
8269 /**
8270 * The bundle task IDs. Default: Describes all your bundle tasks.
8271 */
8272 BundleIds?: BundleIdStringList;
8273 /**
8274 * The 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.
8275 */
8276 Filters?: FilterList;
8277 /**
8278 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8279 */
8280 DryRun?: Boolean;
8281 }
8282 export interface DescribeBundleTasksResult {
8283 /**
8284 * Information about the bundle tasks.
8285 */
8286 BundleTasks?: BundleTaskList;
8287 }
8288 export type DescribeByoipCidrsMaxResults = number;
8289 export interface DescribeByoipCidrsRequest {
8290 /**
8291 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8292 */
8293 DryRun?: Boolean;
8294 /**
8295 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8296 */
8297 MaxResults: DescribeByoipCidrsMaxResults;
8298 /**
8299 * The token for the next page of results.
8300 */
8301 NextToken?: NextToken;
8302 }
8303 export interface DescribeByoipCidrsResult {
8304 /**
8305 * Information about your address ranges.
8306 */
8307 ByoipCidrs?: ByoipCidrSet;
8308 /**
8309 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8310 */
8311 NextToken?: String;
8312 }
8313 export type DescribeCapacityReservationsMaxResults = number;
8314 export interface DescribeCapacityReservationsRequest {
8315 /**
8316 * The ID of the Capacity Reservation.
8317 */
8318 CapacityReservationIds?: CapacityReservationIdSet;
8319 /**
8320 * The token to retrieve the next page of results.
8321 */
8322 NextToken?: String;
8323 /**
8324 * 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.
8325 */
8326 MaxResults?: DescribeCapacityReservationsMaxResults;
8327 /**
8328 * One or more filters. instance-type - The type of instance for which the Capacity Reservation reserves capacity. owner-id - The ID of the AWS account that owns the Capacity Reservation. availability-zone-id - The Availability Zone ID of the Capacity Reservation. instance-platform - The type of operating system for which the Capacity Reservation reserves capacity. availability-zone - The Availability Zone ID of the Capacity Reservation. tenancy - 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. state - 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. expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use. cancelled - 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. end-date - 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. end-date-type - 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. instance-match-criteria - 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.
8329 */
8330 Filters?: FilterList;
8331 /**
8332 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8333 */
8334 DryRun?: Boolean;
8335 }
8336 export interface DescribeCapacityReservationsResult {
8337 /**
8338 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8339 */
8340 NextToken?: String;
8341 /**
8342 * Information about the Capacity Reservations.
8343 */
8344 CapacityReservations?: CapacityReservationSet;
8345 }
8346 export type DescribeClassicLinkInstancesMaxResults = number;
8347 export interface DescribeClassicLinkInstancesRequest {
8348 /**
8349 * 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.
8350 */
8351 Filters?: FilterList;
8352 /**
8353 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8354 */
8355 DryRun?: Boolean;
8356 /**
8357 * One or more instance IDs. Must be instances linked to a VPC through ClassicLink.
8358 */
8359 InstanceIds?: InstanceIdStringList;
8360 /**
8361 * 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.
8362 */
8363 MaxResults?: DescribeClassicLinkInstancesMaxResults;
8364 /**
8365 * The token for the next page of results.
8366 */
8367 NextToken?: String;
8368 }
8369 export interface DescribeClassicLinkInstancesResult {
8370 /**
8371 * Information about one or more linked EC2-Classic instances.
8372 */
8373 Instances?: ClassicLinkInstanceList;
8374 /**
8375 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8376 */
8377 NextToken?: String;
8378 }
8379 export type DescribeClientVpnAuthorizationRulesMaxResults = number;
8380 export interface DescribeClientVpnAuthorizationRulesRequest {
8381 /**
8382 * The ID of the Client VPN endpoint.
8383 */
8384 ClientVpnEndpointId: ClientVpnEndpointId;
8385 /**
8386 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8387 */
8388 DryRun?: Boolean;
8389 /**
8390 * The token to retrieve the next page of results.
8391 */
8392 NextToken?: NextToken;
8393 /**
8394 * One or more filters. Filter names and values are case-sensitive. description - The description of the authorization rule. destination-cidr - The CIDR of the network to which the authorization rule applies. group-id - The ID of the Active Directory group to which the authorization rule grants access.
8395 */
8396 Filters?: FilterList;
8397 /**
8398 * 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.
8399 */
8400 MaxResults?: DescribeClientVpnAuthorizationRulesMaxResults;
8401 }
8402 export interface DescribeClientVpnAuthorizationRulesResult {
8403 /**
8404 * Information about the authorization rules.
8405 */
8406 AuthorizationRules?: AuthorizationRuleSet;
8407 /**
8408 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8409 */
8410 NextToken?: NextToken;
8411 }
8412 export type DescribeClientVpnConnectionsMaxResults = number;
8413 export interface DescribeClientVpnConnectionsRequest {
8414 /**
8415 * The ID of the Client VPN endpoint.
8416 */
8417 ClientVpnEndpointId: ClientVpnEndpointId;
8418 /**
8419 * One or more filters. Filter names and values are case-sensitive. connection-id - The ID of the connection. username - For Active Directory client authentication, the user name of the client who established the client connection.
8420 */
8421 Filters?: FilterList;
8422 /**
8423 * The token to retrieve the next page of results.
8424 */
8425 NextToken?: NextToken;
8426 /**
8427 * 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.
8428 */
8429 MaxResults?: DescribeClientVpnConnectionsMaxResults;
8430 /**
8431 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8432 */
8433 DryRun?: Boolean;
8434 }
8435 export interface DescribeClientVpnConnectionsResult {
8436 /**
8437 * Information about the active and terminated client connections.
8438 */
8439 Connections?: ClientVpnConnectionSet;
8440 /**
8441 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8442 */
8443 NextToken?: NextToken;
8444 }
8445 export type DescribeClientVpnEndpointMaxResults = number;
8446 export interface DescribeClientVpnEndpointsRequest {
8447 /**
8448 * The ID of the Client VPN endpoint.
8449 */
8450 ClientVpnEndpointIds?: ClientVpnEndpointIdList;
8451 /**
8452 * 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.
8453 */
8454 MaxResults?: DescribeClientVpnEndpointMaxResults;
8455 /**
8456 * The token to retrieve the next page of results.
8457 */
8458 NextToken?: NextToken;
8459 /**
8460 * One or more filters. Filter names and values are case-sensitive. endpoint-id - The ID of the Client VPN endpoint. transport-protocol - The transport protocol (tcp | udp).
8461 */
8462 Filters?: FilterList;
8463 /**
8464 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8465 */
8466 DryRun?: Boolean;
8467 }
8468 export interface DescribeClientVpnEndpointsResult {
8469 /**
8470 * Information about the Client VPN endpoints.
8471 */
8472 ClientVpnEndpoints?: EndpointSet;
8473 /**
8474 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8475 */
8476 NextToken?: NextToken;
8477 }
8478 export type DescribeClientVpnRoutesMaxResults = number;
8479 export interface DescribeClientVpnRoutesRequest {
8480 /**
8481 * The ID of the Client VPN endpoint.
8482 */
8483 ClientVpnEndpointId: ClientVpnEndpointId;
8484 /**
8485 * One or more filters. Filter names and values are case-sensitive. destination-cidr - The CIDR of the route destination. origin - How the route was associated with the Client VPN endpoint (associate | add-route). target-subnet - The ID of the subnet through which traffic is routed.
8486 */
8487 Filters?: FilterList;
8488 /**
8489 * 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.
8490 */
8491 MaxResults?: DescribeClientVpnRoutesMaxResults;
8492 /**
8493 * The token to retrieve the next page of results.
8494 */
8495 NextToken?: NextToken;
8496 /**
8497 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8498 */
8499 DryRun?: Boolean;
8500 }
8501 export interface DescribeClientVpnRoutesResult {
8502 /**
8503 * Information about the Client VPN endpoint routes.
8504 */
8505 Routes?: ClientVpnRouteSet;
8506 /**
8507 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8508 */
8509 NextToken?: NextToken;
8510 }
8511 export type DescribeClientVpnTargetNetworksMaxResults = number;
8512 export interface DescribeClientVpnTargetNetworksRequest {
8513 /**
8514 * The ID of the Client VPN endpoint.
8515 */
8516 ClientVpnEndpointId: ClientVpnEndpointId;
8517 /**
8518 * The IDs of the target network associations.
8519 */
8520 AssociationIds?: ValueStringList;
8521 /**
8522 * 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.
8523 */
8524 MaxResults?: DescribeClientVpnTargetNetworksMaxResults;
8525 /**
8526 * The token to retrieve the next page of results.
8527 */
8528 NextToken?: NextToken;
8529 /**
8530 * One or more filters. Filter names and values are case-sensitive. association-id - The ID of the association. target-network-id - The ID of the subnet specified as the target network. vpc-id - The ID of the VPC in which the target network is located.
8531 */
8532 Filters?: FilterList;
8533 /**
8534 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8535 */
8536 DryRun?: Boolean;
8537 }
8538 export interface DescribeClientVpnTargetNetworksResult {
8539 /**
8540 * Information about the associated target networks.
8541 */
8542 ClientVpnTargetNetworks?: TargetNetworkSet;
8543 /**
8544 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8545 */
8546 NextToken?: NextToken;
8547 }
8548 export interface DescribeCoipPoolsRequest {
8549 /**
8550 * The IDs of the address pools.
8551 */
8552 PoolIds?: CoipPoolIdSet;
8553 /**
8554 * The filters. The following are the possible values: coip-pool.pool-id coip-pool.local-gateway-route-table-id
8555 */
8556 Filters?: FilterList;
8557 /**
8558 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8559 */
8560 MaxResults?: CoipPoolMaxResults;
8561 /**
8562 * The token for the next page of results.
8563 */
8564 NextToken?: String;
8565 /**
8566 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8567 */
8568 DryRun?: Boolean;
8569 }
8570 export interface DescribeCoipPoolsResult {
8571 /**
8572 * Information about the address pools.
8573 */
8574 CoipPools?: CoipPoolSet;
8575 /**
8576 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8577 */
8578 NextToken?: String;
8579 }
8580 export type DescribeConversionTaskList = ConversionTask[];
8581 export interface DescribeConversionTasksRequest {
8582 /**
8583 * The conversion task IDs.
8584 */
8585 ConversionTaskIds?: ConversionIdStringList;
8586 /**
8587 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8588 */
8589 DryRun?: Boolean;
8590 }
8591 export interface DescribeConversionTasksResult {
8592 /**
8593 * Information about the conversion tasks.
8594 */
8595 ConversionTasks?: DescribeConversionTaskList;
8596 }
8597 export interface DescribeCustomerGatewaysRequest {
8598 /**
8599 * One or more customer gateway IDs. Default: Describes all your customer gateways.
8600 */
8601 CustomerGatewayIds?: CustomerGatewayIdStringList;
8602 /**
8603 * 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.
8604 */
8605 Filters?: FilterList;
8606 /**
8607 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8608 */
8609 DryRun?: Boolean;
8610 }
8611 export interface DescribeCustomerGatewaysResult {
8612 /**
8613 * Information about one or more customer gateways.
8614 */
8615 CustomerGateways?: CustomerGatewayList;
8616 }
8617 export type DescribeDhcpOptionsMaxResults = number;
8618 export interface DescribeDhcpOptionsRequest {
8619 /**
8620 * The IDs of one or more DHCP options sets. Default: Describes all your DHCP options sets.
8621 */
8622 DhcpOptionsIds?: DhcpOptionsIdStringList;
8623 /**
8624 * 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.
8625 */
8626 Filters?: FilterList;
8627 /**
8628 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8629 */
8630 DryRun?: Boolean;
8631 /**
8632 * The token for the next page of results.
8633 */
8634 NextToken?: String;
8635 /**
8636 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8637 */
8638 MaxResults?: DescribeDhcpOptionsMaxResults;
8639 }
8640 export interface DescribeDhcpOptionsResult {
8641 /**
8642 * Information about one or more DHCP options sets.
8643 */
8644 DhcpOptions?: DhcpOptionsList;
8645 /**
8646 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8647 */
8648 NextToken?: String;
8649 }
8650 export type DescribeEgressOnlyInternetGatewaysMaxResults = number;
8651 export interface DescribeEgressOnlyInternetGatewaysRequest {
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 * One or more egress-only internet gateway IDs.
8658 */
8659 EgressOnlyInternetGatewayIds?: EgressOnlyInternetGatewayIdList;
8660 /**
8661 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8662 */
8663 MaxResults?: DescribeEgressOnlyInternetGatewaysMaxResults;
8664 /**
8665 * The token for the next page of results.
8666 */
8667 NextToken?: String;
8668 /**
8669 * One or more filters. 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.
8670 */
8671 Filters?: FilterList;
8672 }
8673 export interface DescribeEgressOnlyInternetGatewaysResult {
8674 /**
8675 * Information about the egress-only internet gateways.
8676 */
8677 EgressOnlyInternetGateways?: EgressOnlyInternetGatewayList;
8678 /**
8679 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8680 */
8681 NextToken?: String;
8682 }
8683 export type DescribeElasticGpusMaxResults = number;
8684 export interface DescribeElasticGpusRequest {
8685 /**
8686 * The Elastic Graphics accelerator IDs.
8687 */
8688 ElasticGpuIds?: ElasticGpuIdSet;
8689 /**
8690 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8691 */
8692 DryRun?: Boolean;
8693 /**
8694 * The 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.
8695 */
8696 Filters?: FilterList;
8697 /**
8698 * 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.
8699 */
8700 MaxResults?: DescribeElasticGpusMaxResults;
8701 /**
8702 * The token to request the next page of results.
8703 */
8704 NextToken?: String;
8705 }
8706 export interface DescribeElasticGpusResult {
8707 /**
8708 * Information about the Elastic Graphics accelerators.
8709 */
8710 ElasticGpuSet?: ElasticGpuSet;
8711 /**
8712 * 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.
8713 */
8714 MaxResults?: Integer;
8715 /**
8716 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8717 */
8718 NextToken?: String;
8719 }
8720 export type DescribeExportImageTasksMaxResults = number;
8721 export interface DescribeExportImageTasksRequest {
8722 /**
8723 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8724 */
8725 DryRun?: Boolean;
8726 /**
8727 * Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.
8728 */
8729 Filters?: FilterList;
8730 /**
8731 * The IDs of the export image tasks.
8732 */
8733 ExportImageTaskIds?: ExportImageTaskIdList;
8734 /**
8735 * The maximum number of results to return in a single call.
8736 */
8737 MaxResults?: DescribeExportImageTasksMaxResults;
8738 /**
8739 * A token that indicates the next page of results.
8740 */
8741 NextToken?: NextToken;
8742 }
8743 export interface DescribeExportImageTasksResult {
8744 /**
8745 * Information about the export image tasks.
8746 */
8747 ExportImageTasks?: ExportImageTaskList;
8748 /**
8749 * The token to use to get the next page of results. This value is null when there are no more results to return.
8750 */
8751 NextToken?: NextToken;
8752 }
8753 export interface DescribeExportTasksRequest {
8754 /**
8755 * The export task IDs.
8756 */
8757 ExportTaskIds?: ExportTaskIdStringList;
8758 /**
8759 * the filters for the export tasks.
8760 */
8761 Filters?: FilterList;
8762 }
8763 export interface DescribeExportTasksResult {
8764 /**
8765 * Information about the export tasks.
8766 */
8767 ExportTasks?: ExportTaskList;
8768 }
8769 export interface DescribeFastSnapshotRestoreSuccessItem {
8770 /**
8771 * The ID of the snapshot.
8772 */
8773 SnapshotId?: String;
8774 /**
8775 * The Availability Zone.
8776 */
8777 AvailabilityZone?: String;
8778 /**
8779 * The state of fast snapshot restores.
8780 */
8781 State?: FastSnapshotRestoreStateCode;
8782 /**
8783 * The reason for the state transition. The possible values are as follows: Client.UserInitiated - The state successfully transitioned to enabling or disabling. Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.
8784 */
8785 StateTransitionReason?: String;
8786 /**
8787 * The ID of the AWS account that owns the snapshot.
8788 */
8789 OwnerId?: String;
8790 /**
8791 * The alias of the snapshot owner.
8792 */
8793 OwnerAlias?: String;
8794 /**
8795 * The time at which fast snapshot restores entered the enabling state.
8796 */
8797 EnablingTime?: MillisecondDateTime;
8798 /**
8799 * The time at which fast snapshot restores entered the optimizing state.
8800 */
8801 OptimizingTime?: MillisecondDateTime;
8802 /**
8803 * The time at which fast snapshot restores entered the enabled state.
8804 */
8805 EnabledTime?: MillisecondDateTime;
8806 /**
8807 * The time at which fast snapshot restores entered the disabling state.
8808 */
8809 DisablingTime?: MillisecondDateTime;
8810 /**
8811 * The time at which fast snapshot restores entered the disabled state.
8812 */
8813 DisabledTime?: MillisecondDateTime;
8814 }
8815 export type DescribeFastSnapshotRestoreSuccessSet = DescribeFastSnapshotRestoreSuccessItem[];
8816 export type DescribeFastSnapshotRestoresMaxResults = number;
8817 export interface DescribeFastSnapshotRestoresRequest {
8818 /**
8819 * The filters. The possible values are: availability-zone: The Availability Zone of the snapshot. owner-id: The ID of the AWS account that owns the snapshot. snapshot-id: The ID of the snapshot. state: The state of fast snapshot restores for the snapshot (enabling | optimizing | enabled | disabling | disabled).
8820 */
8821 Filters?: FilterList;
8822 /**
8823 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8824 */
8825 MaxResults?: DescribeFastSnapshotRestoresMaxResults;
8826 /**
8827 * The token for the next page of results.
8828 */
8829 NextToken?: NextToken;
8830 /**
8831 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8832 */
8833 DryRun?: Boolean;
8834 }
8835 export interface DescribeFastSnapshotRestoresResult {
8836 /**
8837 * Information about the state of fast snapshot restores.
8838 */
8839 FastSnapshotRestores?: DescribeFastSnapshotRestoreSuccessSet;
8840 /**
8841 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8842 */
8843 NextToken?: NextToken;
8844 }
8845 export interface DescribeFleetError {
8846 /**
8847 * The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.
8848 */
8849 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
8850 /**
8851 * Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
8852 */
8853 Lifecycle?: InstanceLifecycle;
8854 /**
8855 * The error code that indicates why the instance could not be launched. For more information about error codes, see Error Codes.
8856 */
8857 ErrorCode?: String;
8858 /**
8859 * The error message that describes why the instance could not be launched. For more information about error messages, see Error Codes.
8860 */
8861 ErrorMessage?: String;
8862 }
8863 export interface DescribeFleetHistoryRequest {
8864 /**
8865 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8866 */
8867 DryRun?: Boolean;
8868 /**
8869 * The type of events to describe. By default, all events are described.
8870 */
8871 EventType?: FleetEventType;
8872 /**
8873 * 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.
8874 */
8875 MaxResults?: Integer;
8876 /**
8877 * The token for the next set of results.
8878 */
8879 NextToken?: String;
8880 /**
8881 * The ID of the EC2 Fleet.
8882 */
8883 FleetId: FleetId;
8884 /**
8885 * The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8886 */
8887 StartTime: DateTime;
8888 }
8889 export interface DescribeFleetHistoryResult {
8890 /**
8891 * Information about the events in the history of the EC2 Fleet.
8892 */
8893 HistoryRecords?: HistoryRecordSet;
8894 /**
8895 * 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.
8896 */
8897 LastEvaluatedTime?: DateTime;
8898 /**
8899 * The token for the next set of results.
8900 */
8901 NextToken?: String;
8902 /**
8903 * The ID of the EC Fleet.
8904 */
8905 FleetId?: FleetId;
8906 /**
8907 * The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8908 */
8909 StartTime?: DateTime;
8910 }
8911 export interface DescribeFleetInstancesRequest {
8912 /**
8913 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8914 */
8915 DryRun?: Boolean;
8916 /**
8917 * 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.
8918 */
8919 MaxResults?: Integer;
8920 /**
8921 * The token for the next set of results.
8922 */
8923 NextToken?: String;
8924 /**
8925 * The ID of the EC2 Fleet.
8926 */
8927 FleetId: FleetId;
8928 /**
8929 * The filters. instance-type - The instance type.
8930 */
8931 Filters?: FilterList;
8932 }
8933 export interface DescribeFleetInstancesResult {
8934 /**
8935 * The running instances. This list is refreshed periodically and might be out of date.
8936 */
8937 ActiveInstances?: ActiveInstanceSet;
8938 /**
8939 * The token for the next set of results.
8940 */
8941 NextToken?: String;
8942 /**
8943 * The ID of the EC2 Fleet.
8944 */
8945 FleetId?: FleetId;
8946 }
8947 export type DescribeFleetsErrorSet = DescribeFleetError[];
8948 export interface DescribeFleetsInstances {
8949 /**
8950 * The launch templates and overrides that were used for launching the instances. The values that you specify in the Overrides replace the values in the launch template.
8951 */
8952 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
8953 /**
8954 * Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
8955 */
8956 Lifecycle?: InstanceLifecycle;
8957 /**
8958 * The IDs of the instances.
8959 */
8960 InstanceIds?: InstanceIdsSet;
8961 /**
8962 * The instance type.
8963 */
8964 InstanceType?: InstanceType;
8965 /**
8966 * The value is Windows for Windows instances. Otherwise, the value is blank.
8967 */
8968 Platform?: PlatformValues;
8969 }
8970 export type DescribeFleetsInstancesSet = DescribeFleetsInstances[];
8971 export interface DescribeFleetsRequest {
8972 /**
8973 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
8974 */
8975 DryRun?: Boolean;
8976 /**
8977 * 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.
8978 */
8979 MaxResults?: Integer;
8980 /**
8981 * The token for the next set of results.
8982 */
8983 NextToken?: String;
8984 /**
8985 * The ID of the EC2 Fleets.
8986 */
8987 FleetIds?: FleetIdSet;
8988 /**
8989 * The 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).
8990 */
8991 Filters?: FilterList;
8992 }
8993 export interface DescribeFleetsResult {
8994 /**
8995 * The token for the next set of results.
8996 */
8997 NextToken?: String;
8998 /**
8999 * Information about the EC2 Fleets.
9000 */
9001 Fleets?: FleetSet;
9002 }
9003 export interface DescribeFlowLogsRequest {
9004 /**
9005 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9006 */
9007 DryRun?: Boolean;
9008 /**
9009 * 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). 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.
9010 */
9011 Filter?: FilterList;
9012 /**
9013 * One or more flow log IDs. Constraint: Maximum of 1000 flow log IDs.
9014 */
9015 FlowLogIds?: FlowLogIdList;
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?: Integer;
9020 /**
9021 * The token for the next page of results.
9022 */
9023 NextToken?: String;
9024 }
9025 export interface DescribeFlowLogsResult {
9026 /**
9027 * Information about the flow logs.
9028 */
9029 FlowLogs?: FlowLogSet;
9030 /**
9031 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9032 */
9033 NextToken?: String;
9034 }
9035 export interface DescribeFpgaImageAttributeRequest {
9036 /**
9037 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9038 */
9039 DryRun?: Boolean;
9040 /**
9041 * The ID of the AFI.
9042 */
9043 FpgaImageId: FpgaImageId;
9044 /**
9045 * The AFI attribute.
9046 */
9047 Attribute: FpgaImageAttributeName;
9048 }
9049 export interface DescribeFpgaImageAttributeResult {
9050 /**
9051 * Information about the attribute.
9052 */
9053 FpgaImageAttribute?: FpgaImageAttribute;
9054 }
9055 export type DescribeFpgaImagesMaxResults = number;
9056 export interface DescribeFpgaImagesRequest {
9057 /**
9058 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9059 */
9060 DryRun?: Boolean;
9061 /**
9062 * The AFI IDs.
9063 */
9064 FpgaImageIds?: FpgaImageIdList;
9065 /**
9066 * 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).
9067 */
9068 Owners?: OwnerStringList;
9069 /**
9070 * The 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.
9071 */
9072 Filters?: FilterList;
9073 /**
9074 * The token to retrieve the next page of results.
9075 */
9076 NextToken?: NextToken;
9077 /**
9078 * The maximum number of results to return in a single call.
9079 */
9080 MaxResults?: DescribeFpgaImagesMaxResults;
9081 }
9082 export interface DescribeFpgaImagesResult {
9083 /**
9084 * Information about the FPGA images.
9085 */
9086 FpgaImages?: FpgaImageList;
9087 /**
9088 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9089 */
9090 NextToken?: NextToken;
9091 }
9092 export interface DescribeHostReservationOfferingsRequest {
9093 /**
9094 * The filters. instance-family - The instance family of the offering (for example, m4). payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront).
9095 */
9096 Filter?: FilterList;
9097 /**
9098 * 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.
9099 */
9100 MaxDuration?: Integer;
9101 /**
9102 * 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.
9103 */
9104 MaxResults?: DescribeHostReservationsMaxResults;
9105 /**
9106 * 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.
9107 */
9108 MinDuration?: Integer;
9109 /**
9110 * The token to use to retrieve the next page of results.
9111 */
9112 NextToken?: String;
9113 /**
9114 * The ID of the reservation offering.
9115 */
9116 OfferingId?: OfferingId;
9117 }
9118 export interface DescribeHostReservationOfferingsResult {
9119 /**
9120 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9121 */
9122 NextToken?: String;
9123 /**
9124 * Information about the offerings.
9125 */
9126 OfferingSet?: HostOfferingSet;
9127 }
9128 export type DescribeHostReservationsMaxResults = number;
9129 export interface DescribeHostReservationsRequest {
9130 /**
9131 * The 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.
9132 */
9133 Filter?: FilterList;
9134 /**
9135 * The host reservation IDs.
9136 */
9137 HostReservationIdSet?: HostReservationIdSet;
9138 /**
9139 * 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.
9140 */
9141 MaxResults?: Integer;
9142 /**
9143 * The token to use to retrieve the next page of results.
9144 */
9145 NextToken?: String;
9146 }
9147 export interface DescribeHostReservationsResult {
9148 /**
9149 * Details about the reservation's configuration.
9150 */
9151 HostReservationSet?: HostReservationSet;
9152 /**
9153 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9154 */
9155 NextToken?: String;
9156 }
9157 export interface DescribeHostsRequest {
9158 /**
9159 * The 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.
9160 */
9161 Filter?: FilterList;
9162 /**
9163 * The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches.
9164 */
9165 HostIds?: RequestHostIdList;
9166 /**
9167 * 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.
9168 */
9169 MaxResults?: Integer;
9170 /**
9171 * The token to use to retrieve the next page of results.
9172 */
9173 NextToken?: String;
9174 }
9175 export interface DescribeHostsResult {
9176 /**
9177 * Information about the Dedicated Hosts.
9178 */
9179 Hosts?: HostList;
9180 /**
9181 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9182 */
9183 NextToken?: String;
9184 }
9185 export type DescribeIamInstanceProfileAssociationsMaxResults = number;
9186 export interface DescribeIamInstanceProfileAssociationsRequest {
9187 /**
9188 * The IAM instance profile associations.
9189 */
9190 AssociationIds?: AssociationIdList;
9191 /**
9192 * The filters. instance-id - The ID of the instance. state - The state of the association (associating | associated | disassociating | disassociated).
9193 */
9194 Filters?: FilterList;
9195 /**
9196 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
9197 */
9198 MaxResults?: DescribeIamInstanceProfileAssociationsMaxResults;
9199 /**
9200 * The token to request the next page of results.
9201 */
9202 NextToken?: NextToken;
9203 }
9204 export interface DescribeIamInstanceProfileAssociationsResult {
9205 /**
9206 * Information about the IAM instance profile associations.
9207 */
9208 IamInstanceProfileAssociations?: IamInstanceProfileAssociationSet;
9209 /**
9210 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9211 */
9212 NextToken?: NextToken;
9213 }
9214 export interface DescribeIdFormatRequest {
9215 /**
9216 * 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
9217 */
9218 Resource?: String;
9219 }
9220 export interface DescribeIdFormatResult {
9221 /**
9222 * Information about the ID format for the resource.
9223 */
9224 Statuses?: IdFormatList;
9225 }
9226 export interface DescribeIdentityIdFormatRequest {
9227 /**
9228 * The ARN of the principal, which can be an IAM role, IAM user, or the root user.
9229 */
9230 PrincipalArn: String;
9231 /**
9232 * 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
9233 */
9234 Resource?: String;
9235 }
9236 export interface DescribeIdentityIdFormatResult {
9237 /**
9238 * Information about the ID format for the resources.
9239 */
9240 Statuses?: IdFormatList;
9241 }
9242 export interface DescribeImageAttributeRequest {
9243 /**
9244 * 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.
9245 */
9246 Attribute: ImageAttributeName;
9247 /**
9248 * The ID of the AMI.
9249 */
9250 ImageId: ImageId;
9251 /**
9252 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9253 */
9254 DryRun?: Boolean;
9255 }
9256 export interface DescribeImagesRequest {
9257 /**
9258 * Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).
9259 */
9260 ExecutableUsers?: ExecutableByStringList;
9261 /**
9262 * The filters. architecture - The image architecture (i386 | x86_64 | arm64). 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).
9263 */
9264 Filters?: FilterList;
9265 /**
9266 * The image IDs. Default: Describes all images available to you.
9267 */
9268 ImageIds?: ImageIdStringList;
9269 /**
9270 * 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.
9271 */
9272 Owners?: OwnerStringList;
9273 /**
9274 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9275 */
9276 DryRun?: Boolean;
9277 }
9278 export interface DescribeImagesResult {
9279 /**
9280 * Information about the images.
9281 */
9282 Images?: ImageList;
9283 }
9284 export interface DescribeImportImageTasksRequest {
9285 /**
9286 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9287 */
9288 DryRun?: Boolean;
9289 /**
9290 * Filter tasks using the task-state filter and one of the following values: active, completed, deleting, or deleted.
9291 */
9292 Filters?: FilterList;
9293 /**
9294 * The IDs of the import image tasks.
9295 */
9296 ImportTaskIds?: ImportTaskIdList;
9297 /**
9298 * The maximum number of results to return in a single call.
9299 */
9300 MaxResults?: Integer;
9301 /**
9302 * A token that indicates the next page of results.
9303 */
9304 NextToken?: String;
9305 }
9306 export interface DescribeImportImageTasksResult {
9307 /**
9308 * A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.
9309 */
9310 ImportImageTasks?: ImportImageTaskList;
9311 /**
9312 * The token to use to get the next page of results. This value is null when there are no more results to return.
9313 */
9314 NextToken?: String;
9315 }
9316 export interface DescribeImportSnapshotTasksRequest {
9317 /**
9318 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9319 */
9320 DryRun?: Boolean;
9321 /**
9322 * The filters.
9323 */
9324 Filters?: FilterList;
9325 /**
9326 * A list of import snapshot task IDs.
9327 */
9328 ImportTaskIds?: ImportSnapshotTaskIdList;
9329 /**
9330 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
9331 */
9332 MaxResults?: Integer;
9333 /**
9334 * A token that indicates the next page of results.
9335 */
9336 NextToken?: String;
9337 }
9338 export interface DescribeImportSnapshotTasksResult {
9339 /**
9340 * A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.
9341 */
9342 ImportSnapshotTasks?: ImportSnapshotTaskList;
9343 /**
9344 * The token to use to get the next page of results. This value is null when there are no more results to return.
9345 */
9346 NextToken?: String;
9347 }
9348 export interface DescribeInstanceAttributeRequest {
9349 /**
9350 * The instance attribute. Note: The enaSupport attribute is not supported at this time.
9351 */
9352 Attribute: InstanceAttributeName;
9353 /**
9354 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9355 */
9356 DryRun?: Boolean;
9357 /**
9358 * The ID of the instance.
9359 */
9360 InstanceId: InstanceId;
9361 }
9362 export type DescribeInstanceCreditSpecificationsMaxResults = number;
9363 export interface DescribeInstanceCreditSpecificationsRequest {
9364 /**
9365 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9366 */
9367 DryRun?: Boolean;
9368 /**
9369 * The filters. instance-id - The ID of the instance.
9370 */
9371 Filters?: FilterList;
9372 /**
9373 * The instance IDs. Default: Describes all your instances. Constraints: Maximum 1000 explicitly specified instance IDs.
9374 */
9375 InstanceIds?: InstanceIdStringList;
9376 /**
9377 * 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.
9378 */
9379 MaxResults?: DescribeInstanceCreditSpecificationsMaxResults;
9380 /**
9381 * The token to retrieve the next page of results.
9382 */
9383 NextToken?: String;
9384 }
9385 export interface DescribeInstanceCreditSpecificationsResult {
9386 /**
9387 * Information about the credit option for CPU usage of an instance.
9388 */
9389 InstanceCreditSpecifications?: InstanceCreditSpecificationList;
9390 /**
9391 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9392 */
9393 NextToken?: String;
9394 }
9395 export interface DescribeInstanceStatusRequest {
9396 /**
9397 * The 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).
9398 */
9399 Filters?: FilterList;
9400 /**
9401 * The instance IDs. Default: Describes all your instances. Constraints: Maximum 100 explicitly specified instance IDs.
9402 */
9403 InstanceIds?: InstanceIdStringList;
9404 /**
9405 * 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.
9406 */
9407 MaxResults?: Integer;
9408 /**
9409 * The token to retrieve the next page of results.
9410 */
9411 NextToken?: String;
9412 /**
9413 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9414 */
9415 DryRun?: Boolean;
9416 /**
9417 * When true, includes the health status for all instances. When false, includes the health status for running instances only. Default: false
9418 */
9419 IncludeAllInstances?: Boolean;
9420 }
9421 export interface DescribeInstanceStatusResult {
9422 /**
9423 * Information about the status of the instances.
9424 */
9425 InstanceStatuses?: InstanceStatusList;
9426 /**
9427 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9428 */
9429 NextToken?: String;
9430 }
9431 export interface DescribeInstanceTypeOfferingsRequest {
9432 /**
9433 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9434 */
9435 DryRun?: Boolean;
9436 /**
9437 * The location type.
9438 */
9439 LocationType?: LocationType;
9440 /**
9441 * One or more filters. Filter names and values are case-sensitive. location - This depends on the location type. For example, if the location type is region (default), the location is the Region code (for example, us-east-2.) instance-type - The instance type.
9442 */
9443 Filters?: FilterList;
9444 /**
9445 * 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 next token value.
9446 */
9447 MaxResults?: DITOMaxResults;
9448 /**
9449 * The token to retrieve the next page of results.
9450 */
9451 NextToken?: NextToken;
9452 }
9453 export interface DescribeInstanceTypeOfferingsResult {
9454 /**
9455 * The instance types offered.
9456 */
9457 InstanceTypeOfferings?: InstanceTypeOfferingsList;
9458 /**
9459 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9460 */
9461 NextToken?: NextToken;
9462 }
9463 export interface DescribeInstanceTypesRequest {
9464 /**
9465 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9466 */
9467 DryRun?: Boolean;
9468 /**
9469 * The instance types. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
9470 */
9471 InstanceTypes?: RequestInstanceTypeList;
9472 /**
9473 * One or more filters. Filter names and values are case-sensitive. auto-recovery-supported - Indicates whether auto recovery is supported. (true | false) bare-metal - Indicates whether it is a bare metal instance type. (true | false) burstable-performance-supported - Indicates whether it is a burstable performance instance type. (true | false) current-generation - Indicates whether this instance type is the latest generation instance type of an instance family. (true | false) ebs-info.ebs-optimized-support - Indicates whether the instance type is EBS-optimized. (supported | unsupported | default) ebs-info.encryption-support - Indicates whether EBS encryption is supported. (supported | unsupported) free-tier-eligible - Indicates whether the instance type is eligible to use in the free tier. (true | false) hibernation-supported - Indicates whether On-Demand hibernation is supported. (true | false) hypervisor - The hypervisor used. (nitro | xen) instance-storage-info.disk.count - The number of local disks. instance-storage-info.disk.size-in-gb - The storage size of each instance storage disk, in GB. instance-storage-info.disk.type - The storage technology for the local instance storage disks. (hdd | ssd) instance-storage-info.total-size-in-gb - The total amount of storage available from all local instance storage, in GB. instance-storage-supported - Indicates whether the instance type has local instance storage. (true | false) memory-info.size-in-mib - The memory size. network-info.ena-support - Indicates whether Elastic Network Adapter (ENA) is supported or required. (required | supported | unsupported) network-info.ipv4-addresses-per-interface - The maximum number of private IPv4 addresses per network interface. network-info.ipv6-addresses-per-interface - The maximum number of private IPv6 addresses per network interface. network-info.ipv6-supported - Indicates whether the instance type supports IPv6. (true | false) network-info.maximum-network-interfaces - The maximum number of network interfaces per instance. network-info.network-performance - Describes the network performance. processor-info.sustained-clock-speed-in-ghz - The CPU clock speed, in GHz. vcpu-info.default-cores - The default number of cores for the instance type. vcpu-info.default-threads-per-core - The default number of threads per core for the instance type. vcpu-info.default-vcpus - The default number of vCPUs for the instance type.
9474 */
9475 Filters?: FilterList;
9476 /**
9477 * 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 next token value.
9478 */
9479 MaxResults?: DITMaxResults;
9480 /**
9481 * The token to retrieve the next page of results.
9482 */
9483 NextToken?: NextToken;
9484 }
9485 export interface DescribeInstanceTypesResult {
9486 /**
9487 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
9488 */
9489 InstanceTypes?: InstanceTypeInfoList;
9490 /**
9491 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9492 */
9493 NextToken?: NextToken;
9494 }
9495 export interface DescribeInstancesRequest {
9496 /**
9497 * The filters. affinity - The affinity setting for an instance running on a Dedicated Host (default | host). architecture - The instance architecture (i386 | x86_64 | arm64). 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). The value xen is used for both Xen and Nitro hypervisors. 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. metadata-options.http-tokens - The metadata request authorization state (optional | required) metadata-options.http-put-response-hop-limit - The http metadata request put response hop limit (integer, possible values 1 to 64) metadata-options.http-endpoint - Enable or disable metadata access on http endpoint (enabled | disabled) 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. To list only Windows instances, use windows. 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.
9498 */
9499 Filters?: FilterList;
9500 /**
9501 * The instance IDs. Default: Describes all your instances.
9502 */
9503 InstanceIds?: InstanceIdStringList;
9504 /**
9505 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9506 */
9507 DryRun?: Boolean;
9508 /**
9509 * 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.
9510 */
9511 MaxResults?: Integer;
9512 /**
9513 * The token to request the next page of results.
9514 */
9515 NextToken?: String;
9516 }
9517 export interface DescribeInstancesResult {
9518 /**
9519 * Information about the reservations.
9520 */
9521 Reservations?: ReservationList;
9522 /**
9523 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9524 */
9525 NextToken?: String;
9526 }
9527 export type DescribeInternetGatewaysMaxResults = number;
9528 export interface DescribeInternetGatewaysRequest {
9529 /**
9530 * 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.
9531 */
9532 Filters?: FilterList;
9533 /**
9534 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9535 */
9536 DryRun?: Boolean;
9537 /**
9538 * One or more internet gateway IDs. Default: Describes all your internet gateways.
9539 */
9540 InternetGatewayIds?: InternetGatewayIdList;
9541 /**
9542 * The token for the next page of results.
9543 */
9544 NextToken?: String;
9545 /**
9546 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9547 */
9548 MaxResults?: DescribeInternetGatewaysMaxResults;
9549 }
9550 export interface DescribeInternetGatewaysResult {
9551 /**
9552 * Information about one or more internet gateways.
9553 */
9554 InternetGateways?: InternetGatewayList;
9555 /**
9556 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9557 */
9558 NextToken?: String;
9559 }
9560 export interface DescribeIpv6PoolsRequest {
9561 /**
9562 * The IDs of the IPv6 address pools.
9563 */
9564 PoolIds?: Ipv6PoolIdList;
9565 /**
9566 * The token for the next page of results.
9567 */
9568 NextToken?: NextToken;
9569 /**
9570 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9571 */
9572 MaxResults?: Ipv6PoolMaxResults;
9573 /**
9574 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9575 */
9576 DryRun?: Boolean;
9577 /**
9578 * One or more filters. 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.
9579 */
9580 Filters?: FilterList;
9581 }
9582 export interface DescribeIpv6PoolsResult {
9583 /**
9584 * Information about the IPv6 address pools.
9585 */
9586 Ipv6Pools?: Ipv6PoolSet;
9587 /**
9588 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9589 */
9590 NextToken?: NextToken;
9591 }
9592 export interface DescribeKeyPairsRequest {
9593 /**
9594 * The filters. fingerprint - The fingerprint of the key pair. key-name - The name of the key pair.
9595 */
9596 Filters?: FilterList;
9597 /**
9598 * The key pair names. Default: Describes all your key pairs.
9599 */
9600 KeyNames?: KeyNameStringList;
9601 /**
9602 * The IDs of the key pairs.
9603 */
9604 KeyPairIds?: KeyPairIdStringList;
9605 /**
9606 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9607 */
9608 DryRun?: Boolean;
9609 }
9610 export interface DescribeKeyPairsResult {
9611 /**
9612 * Information about the key pairs.
9613 */
9614 KeyPairs?: KeyPairList;
9615 }
9616 export interface DescribeLaunchTemplateVersionsRequest {
9617 /**
9618 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9619 */
9620 DryRun?: Boolean;
9621 /**
9622 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
9623 */
9624 LaunchTemplateId?: LaunchTemplateId;
9625 /**
9626 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
9627 */
9628 LaunchTemplateName?: LaunchTemplateName;
9629 /**
9630 * One or more versions of the launch template.
9631 */
9632 Versions?: VersionStringList;
9633 /**
9634 * The version number after which to describe launch template versions.
9635 */
9636 MinVersion?: String;
9637 /**
9638 * The version number up to which to describe launch template versions.
9639 */
9640 MaxVersion?: String;
9641 /**
9642 * The token to request the next page of results.
9643 */
9644 NextToken?: String;
9645 /**
9646 * 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.
9647 */
9648 MaxResults?: Integer;
9649 /**
9650 * 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.
9651 */
9652 Filters?: FilterList;
9653 }
9654 export interface DescribeLaunchTemplateVersionsResult {
9655 /**
9656 * Information about the launch template versions.
9657 */
9658 LaunchTemplateVersions?: LaunchTemplateVersionSet;
9659 /**
9660 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9661 */
9662 NextToken?: String;
9663 }
9664 export type DescribeLaunchTemplatesMaxResults = number;
9665 export interface DescribeLaunchTemplatesRequest {
9666 /**
9667 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9668 */
9669 DryRun?: Boolean;
9670 /**
9671 * One or more launch template IDs.
9672 */
9673 LaunchTemplateIds?: LaunchTemplateIdStringList;
9674 /**
9675 * One or more launch template names.
9676 */
9677 LaunchTemplateNames?: LaunchTemplateNameStringList;
9678 /**
9679 * 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.
9680 */
9681 Filters?: FilterList;
9682 /**
9683 * The token to request the next page of results.
9684 */
9685 NextToken?: String;
9686 /**
9687 * 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.
9688 */
9689 MaxResults?: DescribeLaunchTemplatesMaxResults;
9690 }
9691 export interface DescribeLaunchTemplatesResult {
9692 /**
9693 * Information about the launch templates.
9694 */
9695 LaunchTemplates?: LaunchTemplateSet;
9696 /**
9697 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9698 */
9699 NextToken?: String;
9700 }
9701 export interface DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest {
9702 /**
9703 * The IDs of the associations.
9704 */
9705 LocalGatewayRouteTableVirtualInterfaceGroupAssociationIds?: LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet;
9706 /**
9707 * One or more filters.
9708 */
9709 Filters?: FilterList;
9710 /**
9711 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9712 */
9713 MaxResults?: LocalGatewayMaxResults;
9714 /**
9715 * The token for the next page of results.
9716 */
9717 NextToken?: String;
9718 /**
9719 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9720 */
9721 DryRun?: Boolean;
9722 }
9723 export interface DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult {
9724 /**
9725 * Information about the associations.
9726 */
9727 LocalGatewayRouteTableVirtualInterfaceGroupAssociations?: LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet;
9728 /**
9729 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9730 */
9731 NextToken?: String;
9732 }
9733 export interface DescribeLocalGatewayRouteTableVpcAssociationsRequest {
9734 /**
9735 * The IDs of the associations.
9736 */
9737 LocalGatewayRouteTableVpcAssociationIds?: LocalGatewayRouteTableVpcAssociationIdSet;
9738 /**
9739 * One or more filters.
9740 */
9741 Filters?: FilterList;
9742 /**
9743 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9744 */
9745 MaxResults?: LocalGatewayMaxResults;
9746 /**
9747 * The token for the next page of results.
9748 */
9749 NextToken?: String;
9750 /**
9751 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9752 */
9753 DryRun?: Boolean;
9754 }
9755 export interface DescribeLocalGatewayRouteTableVpcAssociationsResult {
9756 /**
9757 * Information about the associations.
9758 */
9759 LocalGatewayRouteTableVpcAssociations?: LocalGatewayRouteTableVpcAssociationSet;
9760 /**
9761 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9762 */
9763 NextToken?: String;
9764 }
9765 export interface DescribeLocalGatewayRouteTablesRequest {
9766 /**
9767 * The IDs of the local gateway route tables.
9768 */
9769 LocalGatewayRouteTableIds?: LocalGatewayRouteTableIdSet;
9770 /**
9771 * One or more filters.
9772 */
9773 Filters?: FilterList;
9774 /**
9775 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9776 */
9777 MaxResults?: LocalGatewayMaxResults;
9778 /**
9779 * The token for the next page of results.
9780 */
9781 NextToken?: String;
9782 /**
9783 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9784 */
9785 DryRun?: Boolean;
9786 }
9787 export interface DescribeLocalGatewayRouteTablesResult {
9788 /**
9789 * Information about the local gateway route tables.
9790 */
9791 LocalGatewayRouteTables?: LocalGatewayRouteTableSet;
9792 /**
9793 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9794 */
9795 NextToken?: String;
9796 }
9797 export interface DescribeLocalGatewayVirtualInterfaceGroupsRequest {
9798 /**
9799 * The IDs of the virtual interface groups.
9800 */
9801 LocalGatewayVirtualInterfaceGroupIds?: LocalGatewayVirtualInterfaceGroupIdSet;
9802 /**
9803 * One or more filters.
9804 */
9805 Filters?: FilterList;
9806 /**
9807 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9808 */
9809 MaxResults?: LocalGatewayMaxResults;
9810 /**
9811 * The token for the next page of results.
9812 */
9813 NextToken?: String;
9814 /**
9815 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9816 */
9817 DryRun?: Boolean;
9818 }
9819 export interface DescribeLocalGatewayVirtualInterfaceGroupsResult {
9820 /**
9821 * The virtual interface groups.
9822 */
9823 LocalGatewayVirtualInterfaceGroups?: LocalGatewayVirtualInterfaceGroupSet;
9824 /**
9825 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9826 */
9827 NextToken?: String;
9828 }
9829 export interface DescribeLocalGatewayVirtualInterfacesRequest {
9830 /**
9831 * The IDs of the virtual interfaces.
9832 */
9833 LocalGatewayVirtualInterfaceIds?: LocalGatewayVirtualInterfaceIdSet;
9834 /**
9835 * One or more filters.
9836 */
9837 Filters?: FilterList;
9838 /**
9839 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9840 */
9841 MaxResults?: LocalGatewayMaxResults;
9842 /**
9843 * The token for the next page of results.
9844 */
9845 NextToken?: String;
9846 /**
9847 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9848 */
9849 DryRun?: Boolean;
9850 }
9851 export interface DescribeLocalGatewayVirtualInterfacesResult {
9852 /**
9853 * Information about the virtual interfaces.
9854 */
9855 LocalGatewayVirtualInterfaces?: LocalGatewayVirtualInterfaceSet;
9856 /**
9857 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9858 */
9859 NextToken?: String;
9860 }
9861 export interface DescribeLocalGatewaysRequest {
9862 /**
9863 * The IDs of the local gateways.
9864 */
9865 LocalGatewayIds?: LocalGatewayIdSet;
9866 /**
9867 * One or more filters.
9868 */
9869 Filters?: FilterList;
9870 /**
9871 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9872 */
9873 MaxResults?: LocalGatewayMaxResults;
9874 /**
9875 * The token for the next page of results.
9876 */
9877 NextToken?: String;
9878 /**
9879 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9880 */
9881 DryRun?: Boolean;
9882 }
9883 export interface DescribeLocalGatewaysResult {
9884 /**
9885 * Information about the local gateways.
9886 */
9887 LocalGateways?: LocalGatewaySet;
9888 /**
9889 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9890 */
9891 NextToken?: String;
9892 }
9893 export type DescribeMovingAddressesMaxResults = number;
9894 export interface DescribeMovingAddressesRequest {
9895 /**
9896 * One or more filters. moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).
9897 */
9898 Filters?: FilterList;
9899 /**
9900 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9901 */
9902 DryRun?: Boolean;
9903 /**
9904 * 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.
9905 */
9906 MaxResults?: DescribeMovingAddressesMaxResults;
9907 /**
9908 * The token for the next page of results.
9909 */
9910 NextToken?: String;
9911 /**
9912 * One or more Elastic IP addresses.
9913 */
9914 PublicIps?: ValueStringList;
9915 }
9916 export interface DescribeMovingAddressesResult {
9917 /**
9918 * The status for each Elastic IP address.
9919 */
9920 MovingAddressStatuses?: MovingAddressStatusSet;
9921 /**
9922 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9923 */
9924 NextToken?: String;
9925 }
9926 export type DescribeNatGatewaysMaxResults = number;
9927 export interface DescribeNatGatewaysRequest {
9928 /**
9929 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9930 */
9931 DryRun?: Boolean;
9932 /**
9933 * 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.
9934 */
9935 Filter?: FilterList;
9936 /**
9937 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9938 */
9939 MaxResults?: DescribeNatGatewaysMaxResults;
9940 /**
9941 * One or more NAT gateway IDs.
9942 */
9943 NatGatewayIds?: NatGatewayIdStringList;
9944 /**
9945 * The token for the next page of results.
9946 */
9947 NextToken?: String;
9948 }
9949 export interface DescribeNatGatewaysResult {
9950 /**
9951 * Information about the NAT gateways.
9952 */
9953 NatGateways?: NatGatewayList;
9954 /**
9955 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9956 */
9957 NextToken?: String;
9958 }
9959 export type DescribeNetworkAclsMaxResults = number;
9960 export interface DescribeNetworkAclsRequest {
9961 /**
9962 * 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.
9963 */
9964 Filters?: FilterList;
9965 /**
9966 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9967 */
9968 DryRun?: Boolean;
9969 /**
9970 * One or more network ACL IDs. Default: Describes all your network ACLs.
9971 */
9972 NetworkAclIds?: NetworkAclIdStringList;
9973 /**
9974 * The token for the next page of results.
9975 */
9976 NextToken?: String;
9977 /**
9978 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9979 */
9980 MaxResults?: DescribeNetworkAclsMaxResults;
9981 }
9982 export interface DescribeNetworkAclsResult {
9983 /**
9984 * Information about one or more network ACLs.
9985 */
9986 NetworkAcls?: NetworkAclList;
9987 /**
9988 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9989 */
9990 NextToken?: String;
9991 }
9992 export interface DescribeNetworkInterfaceAttributeRequest {
9993 /**
9994 * The attribute of the network interface. This parameter is required.
9995 */
9996 Attribute?: NetworkInterfaceAttribute;
9997 /**
9998 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
9999 */
10000 DryRun?: Boolean;
10001 /**
10002 * The ID of the network interface.
10003 */
10004 NetworkInterfaceId: NetworkInterfaceId;
10005 }
10006 export interface DescribeNetworkInterfaceAttributeResult {
10007 /**
10008 * The attachment (if any) of the network interface.
10009 */
10010 Attachment?: NetworkInterfaceAttachment;
10011 /**
10012 * The description of the network interface.
10013 */
10014 Description?: AttributeValue;
10015 /**
10016 * The security groups associated with the network interface.
10017 */
10018 Groups?: GroupIdentifierList;
10019 /**
10020 * The ID of the network interface.
10021 */
10022 NetworkInterfaceId?: String;
10023 /**
10024 * Indicates whether source/destination checking is enabled.
10025 */
10026 SourceDestCheck?: AttributeBooleanValue;
10027 }
10028 export type DescribeNetworkInterfacePermissionsMaxResults = number;
10029 export interface DescribeNetworkInterfacePermissionsRequest {
10030 /**
10031 * One or more network interface permission IDs.
10032 */
10033 NetworkInterfacePermissionIds?: NetworkInterfacePermissionIdList;
10034 /**
10035 * 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).
10036 */
10037 Filters?: FilterList;
10038 /**
10039 * The token to request the next page of results.
10040 */
10041 NextToken?: String;
10042 /**
10043 * 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.
10044 */
10045 MaxResults?: DescribeNetworkInterfacePermissionsMaxResults;
10046 }
10047 export interface DescribeNetworkInterfacePermissionsResult {
10048 /**
10049 * The network interface permissions.
10050 */
10051 NetworkInterfacePermissions?: NetworkInterfacePermissionList;
10052 /**
10053 * The token to use to retrieve the next page of results.
10054 */
10055 NextToken?: String;
10056 }
10057 export type DescribeNetworkInterfacesMaxResults = number;
10058 export interface DescribeNetworkInterfacesRequest {
10059 /**
10060 * 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-dest-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.
10061 */
10062 Filters?: FilterList;
10063 /**
10064 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10065 */
10066 DryRun?: Boolean;
10067 /**
10068 * One or more network interface IDs. Default: Describes all your network interfaces.
10069 */
10070 NetworkInterfaceIds?: NetworkInterfaceIdList;
10071 /**
10072 * The token to retrieve the next page of results.
10073 */
10074 NextToken?: String;
10075 /**
10076 * 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. You cannot specify this parameter and the network interface IDs parameter in the same request.
10077 */
10078 MaxResults?: DescribeNetworkInterfacesMaxResults;
10079 }
10080 export interface DescribeNetworkInterfacesResult {
10081 /**
10082 * Information about one or more network interfaces.
10083 */
10084 NetworkInterfaces?: NetworkInterfaceList;
10085 /**
10086 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10087 */
10088 NextToken?: String;
10089 }
10090 export interface DescribePlacementGroupsRequest {
10091 /**
10092 * The 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).
10093 */
10094 Filters?: FilterList;
10095 /**
10096 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10097 */
10098 DryRun?: Boolean;
10099 /**
10100 * The names of the placement groups. Default: Describes all your placement groups, or only those otherwise specified.
10101 */
10102 GroupNames?: PlacementGroupStringList;
10103 /**
10104 * The IDs of the placement groups.
10105 */
10106 GroupIds?: PlacementGroupIdStringList;
10107 }
10108 export interface DescribePlacementGroupsResult {
10109 /**
10110 * Information about the placement groups.
10111 */
10112 PlacementGroups?: PlacementGroupList;
10113 }
10114 export interface DescribePrefixListsRequest {
10115 /**
10116 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10117 */
10118 DryRun?: Boolean;
10119 /**
10120 * One or more filters. prefix-list-id: The ID of a prefix list. prefix-list-name: The name of a prefix list.
10121 */
10122 Filters?: FilterList;
10123 /**
10124 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10125 */
10126 MaxResults?: Integer;
10127 /**
10128 * The token for the next page of results.
10129 */
10130 NextToken?: String;
10131 /**
10132 * One or more prefix list IDs.
10133 */
10134 PrefixListIds?: PrefixListResourceIdStringList;
10135 }
10136 export interface DescribePrefixListsResult {
10137 /**
10138 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10139 */
10140 NextToken?: String;
10141 /**
10142 * All available prefix lists.
10143 */
10144 PrefixLists?: PrefixListSet;
10145 }
10146 export type DescribePrincipalIdFormatMaxResults = number;
10147 export interface DescribePrincipalIdFormatRequest {
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 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
10154 */
10155 Resources?: ResourceList;
10156 /**
10157 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
10158 */
10159 MaxResults?: DescribePrincipalIdFormatMaxResults;
10160 /**
10161 * The token to request the next page of results.
10162 */
10163 NextToken?: String;
10164 }
10165 export interface DescribePrincipalIdFormatResult {
10166 /**
10167 * Information about the ID format settings for the ARN.
10168 */
10169 Principals?: PrincipalIdFormatList;
10170 /**
10171 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10172 */
10173 NextToken?: String;
10174 }
10175 export interface DescribePublicIpv4PoolsRequest {
10176 /**
10177 * The IDs of the address pools.
10178 */
10179 PoolIds?: PublicIpv4PoolIdStringList;
10180 /**
10181 * The token for the next page of results.
10182 */
10183 NextToken?: NextToken;
10184 /**
10185 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10186 */
10187 MaxResults?: PoolMaxResults;
10188 /**
10189 * One or more filters. 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.
10190 */
10191 Filters?: FilterList;
10192 }
10193 export interface DescribePublicIpv4PoolsResult {
10194 /**
10195 * Information about the address pools.
10196 */
10197 PublicIpv4Pools?: PublicIpv4PoolSet;
10198 /**
10199 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10200 */
10201 NextToken?: String;
10202 }
10203 export interface DescribeRegionsRequest {
10204 /**
10205 * The filters. endpoint - The endpoint of the Region (for example, ec2.us-east-1.amazonaws.com). opt-in-status - The opt-in status of the Region (opt-in-not-required | opted-in | not-opted-in). region-name - The name of the Region (for example, us-east-1).
10206 */
10207 Filters?: FilterList;
10208 /**
10209 * The names of the Regions. You can specify any Regions, whether they are enabled and disabled for your account.
10210 */
10211 RegionNames?: RegionNameStringList;
10212 /**
10213 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10214 */
10215 DryRun?: Boolean;
10216 /**
10217 * Indicates whether to display all Regions, including Regions that are disabled for your account.
10218 */
10219 AllRegions?: Boolean;
10220 }
10221 export interface DescribeRegionsResult {
10222 /**
10223 * Information about the Regions.
10224 */
10225 Regions?: RegionList;
10226 }
10227 export interface DescribeReservedInstancesListingsRequest {
10228 /**
10229 * 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.
10230 */
10231 Filters?: FilterList;
10232 /**
10233 * One or more Reserved Instance IDs.
10234 */
10235 ReservedInstancesId?: ReservationId;
10236 /**
10237 * One or more Reserved Instance listing IDs.
10238 */
10239 ReservedInstancesListingId?: ReservedInstancesListingId;
10240 }
10241 export interface DescribeReservedInstancesListingsResult {
10242 /**
10243 * Information about the Reserved Instance listing.
10244 */
10245 ReservedInstancesListings?: ReservedInstancesListingList;
10246 }
10247 export interface DescribeReservedInstancesModificationsRequest {
10248 /**
10249 * 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.
10250 */
10251 Filters?: FilterList;
10252 /**
10253 * IDs for the submitted modification request.
10254 */
10255 ReservedInstancesModificationIds?: ReservedInstancesModificationIdStringList;
10256 /**
10257 * The token to retrieve the next page of results.
10258 */
10259 NextToken?: String;
10260 }
10261 export interface DescribeReservedInstancesModificationsResult {
10262 /**
10263 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10264 */
10265 NextToken?: String;
10266 /**
10267 * The Reserved Instance modification information.
10268 */
10269 ReservedInstancesModifications?: ReservedInstancesModificationList;
10270 }
10271 export interface DescribeReservedInstancesOfferingsRequest {
10272 /**
10273 * The Availability Zone in which the Reserved Instance can be used.
10274 */
10275 AvailabilityZone?: String;
10276 /**
10277 * 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).
10278 */
10279 Filters?: FilterList;
10280 /**
10281 * Include Reserved Instance Marketplace offerings in the response.
10282 */
10283 IncludeMarketplace?: Boolean;
10284 /**
10285 * 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.
10286 */
10287 InstanceType?: InstanceType;
10288 /**
10289 * The maximum duration (in seconds) to filter when searching for offerings. Default: 94608000 (3 years)
10290 */
10291 MaxDuration?: Long;
10292 /**
10293 * The maximum number of instances to filter when searching for offerings. Default: 20
10294 */
10295 MaxInstanceCount?: Integer;
10296 /**
10297 * The minimum duration (in seconds) to filter when searching for offerings. Default: 2592000 (1 month)
10298 */
10299 MinDuration?: Long;
10300 /**
10301 * The offering class of the Reserved Instance. Can be standard or convertible.
10302 */
10303 OfferingClass?: OfferingClassType;
10304 /**
10305 * The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.
10306 */
10307 ProductDescription?: RIProductDescription;
10308 /**
10309 * One or more Reserved Instances offering IDs.
10310 */
10311 ReservedInstancesOfferingIds?: ReservedInstancesOfferingIdStringList;
10312 /**
10313 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10314 */
10315 DryRun?: Boolean;
10316 /**
10317 * 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
10318 */
10319 InstanceTenancy?: Tenancy;
10320 /**
10321 * 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
10322 */
10323 MaxResults?: Integer;
10324 /**
10325 * The token to retrieve the next page of results.
10326 */
10327 NextToken?: String;
10328 /**
10329 * 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.
10330 */
10331 OfferingType?: OfferingTypeValues;
10332 }
10333 export interface DescribeReservedInstancesOfferingsResult {
10334 /**
10335 * A list of Reserved Instances offerings.
10336 */
10337 ReservedInstancesOfferings?: ReservedInstancesOfferingList;
10338 /**
10339 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10340 */
10341 NextToken?: String;
10342 }
10343 export interface DescribeReservedInstancesRequest {
10344 /**
10345 * 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).
10346 */
10347 Filters?: FilterList;
10348 /**
10349 * Describes whether the Reserved Instance is Standard or Convertible.
10350 */
10351 OfferingClass?: OfferingClassType;
10352 /**
10353 * One or more Reserved Instance IDs. Default: Describes all your Reserved Instances, or only those otherwise specified.
10354 */
10355 ReservedInstancesIds?: ReservedInstancesIdStringList;
10356 /**
10357 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10358 */
10359 DryRun?: Boolean;
10360 /**
10361 * 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.
10362 */
10363 OfferingType?: OfferingTypeValues;
10364 }
10365 export interface DescribeReservedInstancesResult {
10366 /**
10367 * A list of Reserved Instances.
10368 */
10369 ReservedInstances?: ReservedInstancesList;
10370 }
10371 export type DescribeRouteTablesMaxResults = number;
10372 export interface DescribeRouteTablesRequest {
10373 /**
10374 * 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.
10375 */
10376 Filters?: FilterList;
10377 /**
10378 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10379 */
10380 DryRun?: Boolean;
10381 /**
10382 * One or more route table IDs. Default: Describes all your route tables.
10383 */
10384 RouteTableIds?: RouteTableIdStringList;
10385 /**
10386 * The token for the next page of results.
10387 */
10388 NextToken?: String;
10389 /**
10390 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10391 */
10392 MaxResults?: DescribeRouteTablesMaxResults;
10393 }
10394 export interface DescribeRouteTablesResult {
10395 /**
10396 * Information about one or more route tables.
10397 */
10398 RouteTables?: RouteTableList;
10399 /**
10400 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10401 */
10402 NextToken?: String;
10403 }
10404 export type DescribeScheduledInstanceAvailabilityMaxResults = number;
10405 export interface DescribeScheduledInstanceAvailabilityRequest {
10406 /**
10407 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10408 */
10409 DryRun?: Boolean;
10410 /**
10411 * The 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).
10412 */
10413 Filters?: FilterList;
10414 /**
10415 * The time period for the first schedule to start.
10416 */
10417 FirstSlotStartTimeRange: SlotDateTimeRangeRequest;
10418 /**
10419 * 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.
10420 */
10421 MaxResults?: DescribeScheduledInstanceAvailabilityMaxResults;
10422 /**
10423 * The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.
10424 */
10425 MaxSlotDurationInHours?: Integer;
10426 /**
10427 * 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.
10428 */
10429 MinSlotDurationInHours?: Integer;
10430 /**
10431 * The token for the next set of results.
10432 */
10433 NextToken?: String;
10434 /**
10435 * The schedule recurrence.
10436 */
10437 Recurrence: ScheduledInstanceRecurrenceRequest;
10438 }
10439 export interface DescribeScheduledInstanceAvailabilityResult {
10440 /**
10441 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
10442 */
10443 NextToken?: String;
10444 /**
10445 * Information about the available Scheduled Instances.
10446 */
10447 ScheduledInstanceAvailabilitySet?: ScheduledInstanceAvailabilitySet;
10448 }
10449 export interface DescribeScheduledInstancesRequest {
10450 /**
10451 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10452 */
10453 DryRun?: Boolean;
10454 /**
10455 * The 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).
10456 */
10457 Filters?: FilterList;
10458 /**
10459 * 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.
10460 */
10461 MaxResults?: Integer;
10462 /**
10463 * The token for the next set of results.
10464 */
10465 NextToken?: String;
10466 /**
10467 * The Scheduled Instance IDs.
10468 */
10469 ScheduledInstanceIds?: ScheduledInstanceIdRequestSet;
10470 /**
10471 * The time period for the first schedule to start.
10472 */
10473 SlotStartTimeRange?: SlotStartTimeRangeRequest;
10474 }
10475 export interface DescribeScheduledInstancesResult {
10476 /**
10477 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
10478 */
10479 NextToken?: String;
10480 /**
10481 * Information about the Scheduled Instances.
10482 */
10483 ScheduledInstanceSet?: ScheduledInstanceSet;
10484 }
10485 export interface DescribeSecurityGroupReferencesRequest {
10486 /**
10487 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10488 */
10489 DryRun?: Boolean;
10490 /**
10491 * The IDs of the security groups in your account.
10492 */
10493 GroupId: GroupIds;
10494 }
10495 export interface DescribeSecurityGroupReferencesResult {
10496 /**
10497 * Information about the VPCs with the referencing security groups.
10498 */
10499 SecurityGroupReferenceSet?: SecurityGroupReferences;
10500 }
10501 export type DescribeSecurityGroupsMaxResults = number;
10502 export interface DescribeSecurityGroupsRequest {
10503 /**
10504 * The 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.
10505 */
10506 Filters?: FilterList;
10507 /**
10508 * The IDs of the security groups. Required for security groups in a nondefault VPC. Default: Describes all your security groups.
10509 */
10510 GroupIds?: GroupIdStringList;
10511 /**
10512 * [EC2-Classic and default VPC only] The names of the security groups. 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.
10513 */
10514 GroupNames?: GroupNameStringList;
10515 /**
10516 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10517 */
10518 DryRun?: Boolean;
10519 /**
10520 * The token to request the next page of results.
10521 */
10522 NextToken?: String;
10523 /**
10524 * 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.
10525 */
10526 MaxResults?: DescribeSecurityGroupsMaxResults;
10527 }
10528 export interface DescribeSecurityGroupsResult {
10529 /**
10530 * Information about the security groups.
10531 */
10532 SecurityGroups?: SecurityGroupList;
10533 /**
10534 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10535 */
10536 NextToken?: String;
10537 }
10538 export interface DescribeSnapshotAttributeRequest {
10539 /**
10540 * The snapshot attribute you would like to view.
10541 */
10542 Attribute: SnapshotAttributeName;
10543 /**
10544 * The ID of the EBS snapshot.
10545 */
10546 SnapshotId: SnapshotId;
10547 /**
10548 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10549 */
10550 DryRun?: Boolean;
10551 }
10552 export interface DescribeSnapshotAttributeResult {
10553 /**
10554 * The users and groups that have the permissions for creating volumes from the snapshot.
10555 */
10556 CreateVolumePermissions?: CreateVolumePermissionList;
10557 /**
10558 * The product codes.
10559 */
10560 ProductCodes?: ProductCodeList;
10561 /**
10562 * The ID of the EBS snapshot.
10563 */
10564 SnapshotId?: String;
10565 }
10566 export interface DescribeSnapshotsRequest {
10567 /**
10568 * The filters. description - A description of the snapshot. encrypted - Indicates whether the snapshot is encrypted (true | false) owner-alias - Value from an Amazon-maintained list (amazon | self | all | 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.
10569 */
10570 Filters?: FilterList;
10571 /**
10572 * 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.
10573 */
10574 MaxResults?: Integer;
10575 /**
10576 * 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.
10577 */
10578 NextToken?: String;
10579 /**
10580 * Describes the snapshots owned by these owners.
10581 */
10582 OwnerIds?: OwnerStringList;
10583 /**
10584 * The IDs of the AWS accounts that can create volumes from the snapshot.
10585 */
10586 RestorableByUserIds?: RestorableByStringList;
10587 /**
10588 * The snapshot IDs. Default: Describes the snapshots for which you have create volume permissions.
10589 */
10590 SnapshotIds?: SnapshotIdStringList;
10591 /**
10592 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10593 */
10594 DryRun?: Boolean;
10595 }
10596 export interface DescribeSnapshotsResult {
10597 /**
10598 * Information about the snapshots.
10599 */
10600 Snapshots?: SnapshotList;
10601 /**
10602 * 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.
10603 */
10604 NextToken?: String;
10605 }
10606 export interface DescribeSpotDatafeedSubscriptionRequest {
10607 /**
10608 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10609 */
10610 DryRun?: Boolean;
10611 }
10612 export interface DescribeSpotDatafeedSubscriptionResult {
10613 /**
10614 * The Spot Instance data feed subscription.
10615 */
10616 SpotDatafeedSubscription?: SpotDatafeedSubscription;
10617 }
10618 export type DescribeSpotFleetInstancesMaxResults = number;
10619 export interface DescribeSpotFleetInstancesRequest {
10620 /**
10621 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10622 */
10623 DryRun?: Boolean;
10624 /**
10625 * 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.
10626 */
10627 MaxResults?: DescribeSpotFleetInstancesMaxResults;
10628 /**
10629 * The token for the next set of results.
10630 */
10631 NextToken?: String;
10632 /**
10633 * The ID of the Spot Fleet request.
10634 */
10635 SpotFleetRequestId: SpotFleetRequestId;
10636 }
10637 export interface DescribeSpotFleetInstancesResponse {
10638 /**
10639 * The running instances. This list is refreshed periodically and might be out of date.
10640 */
10641 ActiveInstances?: ActiveInstanceSet;
10642 /**
10643 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
10644 */
10645 NextToken?: String;
10646 /**
10647 * The ID of the Spot Fleet request.
10648 */
10649 SpotFleetRequestId?: String;
10650 }
10651 export type DescribeSpotFleetRequestHistoryMaxResults = number;
10652 export interface DescribeSpotFleetRequestHistoryRequest {
10653 /**
10654 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10655 */
10656 DryRun?: Boolean;
10657 /**
10658 * The type of events to describe. By default, all events are described.
10659 */
10660 EventType?: EventType;
10661 /**
10662 * 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.
10663 */
10664 MaxResults?: DescribeSpotFleetRequestHistoryMaxResults;
10665 /**
10666 * The token for the next set of results.
10667 */
10668 NextToken?: String;
10669 /**
10670 * The ID of the Spot Fleet request.
10671 */
10672 SpotFleetRequestId: SpotFleetRequestId;
10673 /**
10674 * The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
10675 */
10676 StartTime: DateTime;
10677 }
10678 export interface DescribeSpotFleetRequestHistoryResponse {
10679 /**
10680 * Information about the events in the history of the Spot Fleet request.
10681 */
10682 HistoryRecords?: HistoryRecords;
10683 /**
10684 * 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.
10685 */
10686 LastEvaluatedTime?: DateTime;
10687 /**
10688 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
10689 */
10690 NextToken?: String;
10691 /**
10692 * The ID of the Spot Fleet request.
10693 */
10694 SpotFleetRequestId?: String;
10695 /**
10696 * The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
10697 */
10698 StartTime?: DateTime;
10699 }
10700 export interface DescribeSpotFleetRequestsRequest {
10701 /**
10702 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10703 */
10704 DryRun?: Boolean;
10705 /**
10706 * 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.
10707 */
10708 MaxResults?: Integer;
10709 /**
10710 * The token for the next set of results.
10711 */
10712 NextToken?: String;
10713 /**
10714 * The IDs of the Spot Fleet requests.
10715 */
10716 SpotFleetRequestIds?: SpotFleetRequestIdList;
10717 }
10718 export interface DescribeSpotFleetRequestsResponse {
10719 /**
10720 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
10721 */
10722 NextToken?: String;
10723 /**
10724 * Information about the configuration of your Spot Fleet.
10725 */
10726 SpotFleetRequestConfigs?: SpotFleetRequestConfigSet;
10727 }
10728 export interface DescribeSpotInstanceRequestsRequest {
10729 /**
10730 * 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.
10731 */
10732 Filters?: FilterList;
10733 /**
10734 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10735 */
10736 DryRun?: Boolean;
10737 /**
10738 * One or more Spot Instance request IDs.
10739 */
10740 SpotInstanceRequestIds?: SpotInstanceRequestIdList;
10741 /**
10742 * The token to request the next set of results. This value is null when there are no more results to return.
10743 */
10744 NextToken?: String;
10745 /**
10746 * 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.
10747 */
10748 MaxResults?: Integer;
10749 }
10750 export interface DescribeSpotInstanceRequestsResult {
10751 /**
10752 * One or more Spot Instance requests.
10753 */
10754 SpotInstanceRequests?: SpotInstanceRequestList;
10755 /**
10756 * The token to use to retrieve the next set of results. This value is null when there are no more results to return.
10757 */
10758 NextToken?: String;
10759 }
10760 export interface DescribeSpotPriceHistoryRequest {
10761 /**
10762 * 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.
10763 */
10764 Filters?: FilterList;
10765 /**
10766 * Filters the results by the specified Availability Zone.
10767 */
10768 AvailabilityZone?: String;
10769 /**
10770 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10771 */
10772 DryRun?: Boolean;
10773 /**
10774 * 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).
10775 */
10776 EndTime?: DateTime;
10777 /**
10778 * Filters the results by the specified instance types.
10779 */
10780 InstanceTypes?: InstanceTypeList;
10781 /**
10782 * 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.
10783 */
10784 MaxResults?: Integer;
10785 /**
10786 * The token for the next set of results.
10787 */
10788 NextToken?: String;
10789 /**
10790 * Filters the results by the specified basic product descriptions.
10791 */
10792 ProductDescriptions?: ProductDescriptionList;
10793 /**
10794 * 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).
10795 */
10796 StartTime?: DateTime;
10797 }
10798 export interface DescribeSpotPriceHistoryResult {
10799 /**
10800 * 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.
10801 */
10802 NextToken?: String;
10803 /**
10804 * The historical Spot prices.
10805 */
10806 SpotPriceHistory?: SpotPriceHistoryList;
10807 }
10808 export type DescribeStaleSecurityGroupsMaxResults = number;
10809 export type DescribeStaleSecurityGroupsNextToken = string;
10810 export interface DescribeStaleSecurityGroupsRequest {
10811 /**
10812 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10813 */
10814 DryRun?: Boolean;
10815 /**
10816 * 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.
10817 */
10818 MaxResults?: DescribeStaleSecurityGroupsMaxResults;
10819 /**
10820 * The token for the next set of items to return. (You received this token from a prior call.)
10821 */
10822 NextToken?: DescribeStaleSecurityGroupsNextToken;
10823 /**
10824 * The ID of the VPC.
10825 */
10826 VpcId: VpcId;
10827 }
10828 export interface DescribeStaleSecurityGroupsResult {
10829 /**
10830 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
10831 */
10832 NextToken?: String;
10833 /**
10834 * Information about the stale security groups.
10835 */
10836 StaleSecurityGroupSet?: StaleSecurityGroupSet;
10837 }
10838 export type DescribeSubnetsMaxResults = number;
10839 export interface DescribeSubnetsRequest {
10840 /**
10841 * 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.
10842 */
10843 Filters?: FilterList;
10844 /**
10845 * One or more subnet IDs. Default: Describes all your subnets.
10846 */
10847 SubnetIds?: SubnetIdStringList;
10848 /**
10849 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10850 */
10851 DryRun?: Boolean;
10852 /**
10853 * The token for the next page of results.
10854 */
10855 NextToken?: String;
10856 /**
10857 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10858 */
10859 MaxResults?: DescribeSubnetsMaxResults;
10860 }
10861 export interface DescribeSubnetsResult {
10862 /**
10863 * Information about one or more subnets.
10864 */
10865 Subnets?: SubnetList;
10866 /**
10867 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10868 */
10869 NextToken?: String;
10870 }
10871 export interface DescribeTagsRequest {
10872 /**
10873 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10874 */
10875 DryRun?: Boolean;
10876 /**
10877 * The 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 | placement-group | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpc-endpoint | vpc-endpoint-service | 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.
10878 */
10879 Filters?: FilterList;
10880 /**
10881 * 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.
10882 */
10883 MaxResults?: Integer;
10884 /**
10885 * The token to retrieve the next page of results.
10886 */
10887 NextToken?: String;
10888 }
10889 export interface DescribeTagsResult {
10890 /**
10891 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10892 */
10893 NextToken?: String;
10894 /**
10895 * The tags.
10896 */
10897 Tags?: TagDescriptionList;
10898 }
10899 export interface DescribeTrafficMirrorFiltersRequest {
10900 /**
10901 * The ID of the Traffic Mirror filter.
10902 */
10903 TrafficMirrorFilterIds?: TrafficMirrorFilterIdList;
10904 /**
10905 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10906 */
10907 DryRun?: Boolean;
10908 /**
10909 * One or more filters. The possible values are: description: The Traffic Mirror filter description. traffic-mirror-filter-id: The ID of the Traffic Mirror filter.
10910 */
10911 Filters?: FilterList;
10912 /**
10913 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10914 */
10915 MaxResults?: TrafficMirroringMaxResults;
10916 /**
10917 * The token for the next page of results.
10918 */
10919 NextToken?: NextToken;
10920 }
10921 export interface DescribeTrafficMirrorFiltersResult {
10922 /**
10923 * Information about one or more Traffic Mirror filters.
10924 */
10925 TrafficMirrorFilters?: TrafficMirrorFilterSet;
10926 /**
10927 * The token to use to retrieve the next page of results. The value is null when there are no more results to return.
10928 */
10929 NextToken?: String;
10930 }
10931 export interface DescribeTrafficMirrorSessionsRequest {
10932 /**
10933 * The ID of the Traffic Mirror session.
10934 */
10935 TrafficMirrorSessionIds?: TrafficMirrorSessionIdList;
10936 /**
10937 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10938 */
10939 DryRun?: Boolean;
10940 /**
10941 * One or more filters. The possible values are: description: The Traffic Mirror session description. network-interface-id: The ID of the Traffic Mirror session network interface. owner-id: The ID of the account that owns the Traffic Mirror session. packet-length: The assigned number of packets to mirror. session-number: The assigned session number. traffic-mirror-filter-id: The ID of the Traffic Mirror filter. traffic-mirror-session-id: The ID of the Traffic Mirror session. traffic-mirror-target-id: The ID of the Traffic Mirror target. virtual-network-id: The virtual network ID of the Traffic Mirror session.
10942 */
10943 Filters?: FilterList;
10944 /**
10945 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10946 */
10947 MaxResults?: TrafficMirroringMaxResults;
10948 /**
10949 * The token for the next page of results.
10950 */
10951 NextToken?: NextToken;
10952 }
10953 export interface DescribeTrafficMirrorSessionsResult {
10954 /**
10955 * Describes one or more Traffic Mirror sessions. By default, all Traffic Mirror sessions are described. Alternatively, you can filter the results.
10956 */
10957 TrafficMirrorSessions?: TrafficMirrorSessionSet;
10958 /**
10959 * The token to use to retrieve the next page of results. The value is null when there are no more results to return.
10960 */
10961 NextToken?: String;
10962 }
10963 export interface DescribeTrafficMirrorTargetsRequest {
10964 /**
10965 * The ID of the Traffic Mirror targets.
10966 */
10967 TrafficMirrorTargetIds?: TrafficMirrorTargetIdList;
10968 /**
10969 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
10970 */
10971 DryRun?: Boolean;
10972 /**
10973 * One or more filters. The possible values are: description: The Traffic Mirror target description. network-interface-id: The ID of the Traffic Mirror session network interface. network-load-balancer-arn: The Amazon Resource Name (ARN) of the Network Load Balancer that is associated with the session. owner-id: The ID of the account that owns the Traffic Mirror session. traffic-mirror-target-id: The ID of the Traffic Mirror target.
10974 */
10975 Filters?: FilterList;
10976 /**
10977 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10978 */
10979 MaxResults?: TrafficMirroringMaxResults;
10980 /**
10981 * The token for the next page of results.
10982 */
10983 NextToken?: NextToken;
10984 }
10985 export interface DescribeTrafficMirrorTargetsResult {
10986 /**
10987 * Information about one or more Traffic Mirror targets.
10988 */
10989 TrafficMirrorTargets?: TrafficMirrorTargetSet;
10990 /**
10991 * The token to use to retrieve the next page of results. The value is null when there are no more results to return.
10992 */
10993 NextToken?: String;
10994 }
10995 export interface DescribeTransitGatewayAttachmentsRequest {
10996 /**
10997 * The IDs of the attachments.
10998 */
10999 TransitGatewayAttachmentIds?: TransitGatewayAttachmentIdStringList;
11000 /**
11001 * 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.
11002 */
11003 Filters?: FilterList;
11004 /**
11005 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11006 */
11007 MaxResults?: TransitGatewayMaxResults;
11008 /**
11009 * The token for the next page of results.
11010 */
11011 NextToken?: String;
11012 /**
11013 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11014 */
11015 DryRun?: Boolean;
11016 }
11017 export interface DescribeTransitGatewayAttachmentsResult {
11018 /**
11019 * Information about the attachments.
11020 */
11021 TransitGatewayAttachments?: TransitGatewayAttachmentList;
11022 /**
11023 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11024 */
11025 NextToken?: String;
11026 }
11027 export interface DescribeTransitGatewayMulticastDomainsRequest {
11028 /**
11029 * The ID of the transit gateway multicast domain.
11030 */
11031 TransitGatewayMulticastDomainIds?: TransitGatewayMulticastDomainIdStringList;
11032 /**
11033 * One or more filters. The possible values are: state - The state of the transit gateway multicast domain. Valid values are pending | available | deleting | deleted. transit-gateway-id - The ID of the transit gateway. transit-gateway-multicast-domain-id - The ID of the transit gateway multicast domain.
11034 */
11035 Filters?: FilterList;
11036 /**
11037 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11038 */
11039 MaxResults?: TransitGatewayMaxResults;
11040 /**
11041 * The token for the next page of results.
11042 */
11043 NextToken?: String;
11044 /**
11045 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11046 */
11047 DryRun?: Boolean;
11048 }
11049 export interface DescribeTransitGatewayMulticastDomainsResult {
11050 /**
11051 * Information about the transit gateway multicast domains.
11052 */
11053 TransitGatewayMulticastDomains?: TransitGatewayMulticastDomainList;
11054 /**
11055 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11056 */
11057 NextToken?: String;
11058 }
11059 export interface DescribeTransitGatewayPeeringAttachmentsRequest {
11060 /**
11061 * One or more IDs of the transit gateway peering attachments.
11062 */
11063 TransitGatewayAttachmentIds?: TransitGatewayAttachmentIdStringList;
11064 /**
11065 * One or more filters. The possible values are: transit-gateway-attachment-id - The ID of the transit gateway attachment. local-owner-id - The ID of your AWS account. remote-owner-id - The ID of the AWS account in the remote Region that owns the transit gateway. state - The state of the peering attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-id - The ID of the transit gateway.
11066 */
11067 Filters?: FilterList;
11068 /**
11069 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11070 */
11071 MaxResults?: TransitGatewayMaxResults;
11072 /**
11073 * The token for the next page of results.
11074 */
11075 NextToken?: String;
11076 /**
11077 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11078 */
11079 DryRun?: Boolean;
11080 }
11081 export interface DescribeTransitGatewayPeeringAttachmentsResult {
11082 /**
11083 * The transit gateway peering attachments.
11084 */
11085 TransitGatewayPeeringAttachments?: TransitGatewayPeeringAttachmentList;
11086 /**
11087 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11088 */
11089 NextToken?: String;
11090 }
11091 export interface DescribeTransitGatewayRouteTablesRequest {
11092 /**
11093 * The IDs of the transit gateway route tables.
11094 */
11095 TransitGatewayRouteTableIds?: TransitGatewayRouteTableIdStringList;
11096 /**
11097 * 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.
11098 */
11099 Filters?: FilterList;
11100 /**
11101 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11102 */
11103 MaxResults?: TransitGatewayMaxResults;
11104 /**
11105 * The token for the next page of results.
11106 */
11107 NextToken?: String;
11108 /**
11109 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11110 */
11111 DryRun?: Boolean;
11112 }
11113 export interface DescribeTransitGatewayRouteTablesResult {
11114 /**
11115 * Information about the transit gateway route tables.
11116 */
11117 TransitGatewayRouteTables?: TransitGatewayRouteTableList;
11118 /**
11119 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11120 */
11121 NextToken?: String;
11122 }
11123 export interface DescribeTransitGatewayVpcAttachmentsRequest {
11124 /**
11125 * The IDs of the attachments.
11126 */
11127 TransitGatewayAttachmentIds?: TransitGatewayAttachmentIdStringList;
11128 /**
11129 * 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.
11130 */
11131 Filters?: FilterList;
11132 /**
11133 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11134 */
11135 MaxResults?: TransitGatewayMaxResults;
11136 /**
11137 * The token for the next page of results.
11138 */
11139 NextToken?: String;
11140 /**
11141 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11142 */
11143 DryRun?: Boolean;
11144 }
11145 export interface DescribeTransitGatewayVpcAttachmentsResult {
11146 /**
11147 * Information about the VPC attachments.
11148 */
11149 TransitGatewayVpcAttachments?: TransitGatewayVpcAttachmentList;
11150 /**
11151 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11152 */
11153 NextToken?: String;
11154 }
11155 export interface DescribeTransitGatewaysRequest {
11156 /**
11157 * The IDs of the transit gateways.
11158 */
11159 TransitGatewayIds?: TransitGatewayIdStringList;
11160 /**
11161 * 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.
11162 */
11163 Filters?: FilterList;
11164 /**
11165 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11166 */
11167 MaxResults?: TransitGatewayMaxResults;
11168 /**
11169 * The token for the next page of results.
11170 */
11171 NextToken?: String;
11172 /**
11173 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11174 */
11175 DryRun?: Boolean;
11176 }
11177 export interface DescribeTransitGatewaysResult {
11178 /**
11179 * Information about the transit gateways.
11180 */
11181 TransitGateways?: TransitGatewayList;
11182 /**
11183 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11184 */
11185 NextToken?: String;
11186 }
11187 export interface DescribeVolumeAttributeRequest {
11188 /**
11189 * The attribute of the volume. This parameter is required.
11190 */
11191 Attribute: VolumeAttributeName;
11192 /**
11193 * The ID of the volume.
11194 */
11195 VolumeId: VolumeId;
11196 /**
11197 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11198 */
11199 DryRun?: Boolean;
11200 }
11201 export interface DescribeVolumeAttributeResult {
11202 /**
11203 * The state of autoEnableIO attribute.
11204 */
11205 AutoEnableIO?: AttributeBooleanValue;
11206 /**
11207 * A list of product codes.
11208 */
11209 ProductCodes?: ProductCodeList;
11210 /**
11211 * The ID of the volume.
11212 */
11213 VolumeId?: String;
11214 }
11215 export interface DescribeVolumeStatusRequest {
11216 /**
11217 * The 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).
11218 */
11219 Filters?: FilterList;
11220 /**
11221 * 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.
11222 */
11223 MaxResults?: Integer;
11224 /**
11225 * 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.
11226 */
11227 NextToken?: String;
11228 /**
11229 * The IDs of the volumes. Default: Describes all your volumes.
11230 */
11231 VolumeIds?: VolumeIdStringList;
11232 /**
11233 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11234 */
11235 DryRun?: Boolean;
11236 }
11237 export interface DescribeVolumeStatusResult {
11238 /**
11239 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11240 */
11241 NextToken?: String;
11242 /**
11243 * Information about the status of the volumes.
11244 */
11245 VolumeStatuses?: VolumeStatusList;
11246 }
11247 export interface DescribeVolumesModificationsRequest {
11248 /**
11249 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11250 */
11251 DryRun?: Boolean;
11252 /**
11253 * The IDs of the volumes for which in-progress modifications will be described.
11254 */
11255 VolumeIds?: VolumeIdStringList;
11256 /**
11257 * The filters. Supported filters: volume-id | modification-state | target-size | target-iops | target-volume-type | original-size | original-iops | original-volume-type | start-time | originalMultiAttachEnabled | targetMultiAttachEnabled.
11258 */
11259 Filters?: FilterList;
11260 /**
11261 * The nextToken value returned by a previous paginated request.
11262 */
11263 NextToken?: String;
11264 /**
11265 * The maximum number of results (up to a limit of 500) to be returned in a paginated request.
11266 */
11267 MaxResults?: Integer;
11268 }
11269 export interface DescribeVolumesModificationsResult {
11270 /**
11271 * Information about the volume modifications.
11272 */
11273 VolumesModifications?: VolumeModificationList;
11274 /**
11275 * Token for pagination, null if there are no more results
11276 */
11277 NextToken?: String;
11278 }
11279 export interface DescribeVolumesRequest {
11280 /**
11281 * The 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 - Indicates whether the volume is encrypted (true | false) multi-attach-enabled - Indicates whether the volume is enabled for Multi-Attach (true | false) fast-restored - Indicates whether the volume was created from a snapshot that is enabled for fast snapshot restore (true | false). 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.
11282 */
11283 Filters?: FilterList;
11284 /**
11285 * The volume IDs.
11286 */
11287 VolumeIds?: VolumeIdStringList;
11288 /**
11289 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11290 */
11291 DryRun?: Boolean;
11292 /**
11293 * 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.
11294 */
11295 MaxResults?: Integer;
11296 /**
11297 * 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.
11298 */
11299 NextToken?: String;
11300 }
11301 export interface DescribeVolumesResult {
11302 /**
11303 * Information about the volumes.
11304 */
11305 Volumes?: VolumeList;
11306 /**
11307 * 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.
11308 */
11309 NextToken?: String;
11310 }
11311 export interface DescribeVpcAttributeRequest {
11312 /**
11313 * The VPC attribute.
11314 */
11315 Attribute: VpcAttributeName;
11316 /**
11317 * The ID of the VPC.
11318 */
11319 VpcId: VpcId;
11320 /**
11321 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11322 */
11323 DryRun?: Boolean;
11324 }
11325 export interface DescribeVpcAttributeResult {
11326 /**
11327 * The ID of the VPC.
11328 */
11329 VpcId?: String;
11330 /**
11331 * 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.
11332 */
11333 EnableDnsHostnames?: AttributeBooleanValue;
11334 /**
11335 * 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.
11336 */
11337 EnableDnsSupport?: AttributeBooleanValue;
11338 }
11339 export type DescribeVpcClassicLinkDnsSupportMaxResults = number;
11340 export type DescribeVpcClassicLinkDnsSupportNextToken = string;
11341 export interface DescribeVpcClassicLinkDnsSupportRequest {
11342 /**
11343 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11344 */
11345 MaxResults?: DescribeVpcClassicLinkDnsSupportMaxResults;
11346 /**
11347 * The token for the next page of results.
11348 */
11349 NextToken?: DescribeVpcClassicLinkDnsSupportNextToken;
11350 /**
11351 * One or more VPC IDs.
11352 */
11353 VpcIds?: VpcClassicLinkIdList;
11354 }
11355 export interface DescribeVpcClassicLinkDnsSupportResult {
11356 /**
11357 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11358 */
11359 NextToken?: DescribeVpcClassicLinkDnsSupportNextToken;
11360 /**
11361 * Information about the ClassicLink DNS support status of the VPCs.
11362 */
11363 Vpcs?: ClassicLinkDnsSupportList;
11364 }
11365 export interface DescribeVpcClassicLinkRequest {
11366 /**
11367 * 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.
11368 */
11369 Filters?: FilterList;
11370 /**
11371 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11372 */
11373 DryRun?: Boolean;
11374 /**
11375 * One or more VPCs for which you want to describe the ClassicLink status.
11376 */
11377 VpcIds?: VpcClassicLinkIdList;
11378 }
11379 export interface DescribeVpcClassicLinkResult {
11380 /**
11381 * The ClassicLink status of one or more VPCs.
11382 */
11383 Vpcs?: VpcClassicLinkList;
11384 }
11385 export interface DescribeVpcEndpointConnectionNotificationsRequest {
11386 /**
11387 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11388 */
11389 DryRun?: Boolean;
11390 /**
11391 * The ID of the notification.
11392 */
11393 ConnectionNotificationId?: ConnectionNotificationId;
11394 /**
11395 * One or more filters. connection-notification-arn - The ARN of the 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.
11396 */
11397 Filters?: FilterList;
11398 /**
11399 * The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value.
11400 */
11401 MaxResults?: Integer;
11402 /**
11403 * The token to request the next page of results.
11404 */
11405 NextToken?: String;
11406 }
11407 export interface DescribeVpcEndpointConnectionNotificationsResult {
11408 /**
11409 * One or more notifications.
11410 */
11411 ConnectionNotificationSet?: ConnectionNotificationSet;
11412 /**
11413 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11414 */
11415 NextToken?: String;
11416 }
11417 export interface DescribeVpcEndpointConnectionsRequest {
11418 /**
11419 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11420 */
11421 DryRun?: Boolean;
11422 /**
11423 * 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.
11424 */
11425 Filters?: FilterList;
11426 /**
11427 * 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 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.
11428 */
11429 MaxResults?: Integer;
11430 /**
11431 * The token to retrieve the next page of results.
11432 */
11433 NextToken?: String;
11434 }
11435 export interface DescribeVpcEndpointConnectionsResult {
11436 /**
11437 * Information about one or more VPC endpoint connections.
11438 */
11439 VpcEndpointConnections?: VpcEndpointConnectionSet;
11440 /**
11441 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11442 */
11443 NextToken?: String;
11444 }
11445 export interface DescribeVpcEndpointServiceConfigurationsRequest {
11446 /**
11447 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11448 */
11449 DryRun?: Boolean;
11450 /**
11451 * The IDs of one or more services.
11452 */
11453 ServiceIds?: VpcEndpointServiceIdList;
11454 /**
11455 * 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). 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.
11456 */
11457 Filters?: FilterList;
11458 /**
11459 * 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 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.
11460 */
11461 MaxResults?: Integer;
11462 /**
11463 * The token to retrieve the next page of results.
11464 */
11465 NextToken?: String;
11466 }
11467 export interface DescribeVpcEndpointServiceConfigurationsResult {
11468 /**
11469 * Information about one or more services.
11470 */
11471 ServiceConfigurations?: ServiceConfigurationSet;
11472 /**
11473 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11474 */
11475 NextToken?: String;
11476 }
11477 export interface DescribeVpcEndpointServicePermissionsRequest {
11478 /**
11479 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11480 */
11481 DryRun?: Boolean;
11482 /**
11483 * The ID of the service.
11484 */
11485 ServiceId: VpcEndpointServiceId;
11486 /**
11487 * One or more filters. principal - The ARN of the principal. principal-type - The principal type (All | Service | OrganizationUnit | Account | User | Role).
11488 */
11489 Filters?: FilterList;
11490 /**
11491 * 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 1,000; if MaxResults is given a value larger than 1,000, only 1,000 results are returned.
11492 */
11493 MaxResults?: Integer;
11494 /**
11495 * The token to retrieve the next page of results.
11496 */
11497 NextToken?: String;
11498 }
11499 export interface DescribeVpcEndpointServicePermissionsResult {
11500 /**
11501 * Information about one or more allowed principals.
11502 */
11503 AllowedPrincipals?: AllowedPrincipalSet;
11504 /**
11505 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11506 */
11507 NextToken?: String;
11508 }
11509 export interface DescribeVpcEndpointServicesRequest {
11510 /**
11511 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11512 */
11513 DryRun?: Boolean;
11514 /**
11515 * One or more service names.
11516 */
11517 ServiceNames?: ValueStringList;
11518 /**
11519 * One or more filters. service-name - The name of the service. 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.
11520 */
11521 Filters?: FilterList;
11522 /**
11523 * 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 1,000, we return only 1,000 items.
11524 */
11525 MaxResults?: Integer;
11526 /**
11527 * The token for the next set of items to return. (You received this token from a prior call.)
11528 */
11529 NextToken?: String;
11530 }
11531 export interface DescribeVpcEndpointServicesResult {
11532 /**
11533 * A list of supported services.
11534 */
11535 ServiceNames?: ValueStringList;
11536 /**
11537 * Information about the service.
11538 */
11539 ServiceDetails?: ServiceDetailSet;
11540 /**
11541 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
11542 */
11543 NextToken?: String;
11544 }
11545 export interface DescribeVpcEndpointsRequest {
11546 /**
11547 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11548 */
11549 DryRun?: Boolean;
11550 /**
11551 * One or more endpoint IDs.
11552 */
11553 VpcEndpointIds?: VpcEndpointIdList;
11554 /**
11555 * 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 (pendingAcceptance | pending | available | deleting | deleted | rejected | failed). 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.
11556 */
11557 Filters?: FilterList;
11558 /**
11559 * 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 1,000, we return only 1,000 items.
11560 */
11561 MaxResults?: Integer;
11562 /**
11563 * The token for the next set of items to return. (You received this token from a prior call.)
11564 */
11565 NextToken?: String;
11566 }
11567 export interface DescribeVpcEndpointsResult {
11568 /**
11569 * Information about the endpoints.
11570 */
11571 VpcEndpoints?: VpcEndpointSet;
11572 /**
11573 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
11574 */
11575 NextToken?: String;
11576 }
11577 export type DescribeVpcPeeringConnectionsMaxResults = number;
11578 export interface DescribeVpcPeeringConnectionsRequest {
11579 /**
11580 * 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.
11581 */
11582 Filters?: FilterList;
11583 /**
11584 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11585 */
11586 DryRun?: Boolean;
11587 /**
11588 * One or more VPC peering connection IDs. Default: Describes all your VPC peering connections.
11589 */
11590 VpcPeeringConnectionIds?: VpcPeeringConnectionIdList;
11591 /**
11592 * The token for the next page of results.
11593 */
11594 NextToken?: String;
11595 /**
11596 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11597 */
11598 MaxResults?: DescribeVpcPeeringConnectionsMaxResults;
11599 }
11600 export interface DescribeVpcPeeringConnectionsResult {
11601 /**
11602 * Information about the VPC peering connections.
11603 */
11604 VpcPeeringConnections?: VpcPeeringConnectionList;
11605 /**
11606 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11607 */
11608 NextToken?: String;
11609 }
11610 export type DescribeVpcsMaxResults = number;
11611 export interface DescribeVpcsRequest {
11612 /**
11613 * 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.ipv6-pool - The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated. 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.
11614 */
11615 Filters?: FilterList;
11616 /**
11617 * One or more VPC IDs. Default: Describes all your VPCs.
11618 */
11619 VpcIds?: VpcIdStringList;
11620 /**
11621 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11622 */
11623 DryRun?: Boolean;
11624 /**
11625 * The token for the next page of results.
11626 */
11627 NextToken?: String;
11628 /**
11629 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
11630 */
11631 MaxResults?: DescribeVpcsMaxResults;
11632 }
11633 export interface DescribeVpcsResult {
11634 /**
11635 * Information about one or more VPCs.
11636 */
11637 Vpcs?: VpcList;
11638 /**
11639 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
11640 */
11641 NextToken?: String;
11642 }
11643 export interface DescribeVpnConnectionsRequest {
11644 /**
11645 * 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. transit-gateway-id - The ID of a transit gateway associated with the VPN connection.
11646 */
11647 Filters?: FilterList;
11648 /**
11649 * One or more VPN connection IDs. Default: Describes your VPN connections.
11650 */
11651 VpnConnectionIds?: VpnConnectionIdStringList;
11652 /**
11653 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11654 */
11655 DryRun?: Boolean;
11656 }
11657 export interface DescribeVpnConnectionsResult {
11658 /**
11659 * Information about one or more VPN connections.
11660 */
11661 VpnConnections?: VpnConnectionList;
11662 }
11663 export interface DescribeVpnGatewaysRequest {
11664 /**
11665 * 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.
11666 */
11667 Filters?: FilterList;
11668 /**
11669 * One or more virtual private gateway IDs. Default: Describes all your virtual private gateways.
11670 */
11671 VpnGatewayIds?: VpnGatewayIdStringList;
11672 /**
11673 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11674 */
11675 DryRun?: Boolean;
11676 }
11677 export interface DescribeVpnGatewaysResult {
11678 /**
11679 * Information about one or more virtual private gateways.
11680 */
11681 VpnGateways?: VpnGatewayList;
11682 }
11683 export interface DetachClassicLinkVpcRequest {
11684 /**
11685 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11686 */
11687 DryRun?: Boolean;
11688 /**
11689 * The ID of the instance to unlink from the VPC.
11690 */
11691 InstanceId: InstanceId;
11692 /**
11693 * The ID of the VPC to which the instance is linked.
11694 */
11695 VpcId: VpcId;
11696 }
11697 export interface DetachClassicLinkVpcResult {
11698 /**
11699 * Returns true if the request succeeds; otherwise, it returns an error.
11700 */
11701 Return?: Boolean;
11702 }
11703 export interface DetachInternetGatewayRequest {
11704 /**
11705 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11706 */
11707 DryRun?: Boolean;
11708 /**
11709 * The ID of the internet gateway.
11710 */
11711 InternetGatewayId: InternetGatewayId;
11712 /**
11713 * The ID of the VPC.
11714 */
11715 VpcId: VpcId;
11716 }
11717 export interface DetachNetworkInterfaceRequest {
11718 /**
11719 * The ID of the attachment.
11720 */
11721 AttachmentId: NetworkInterfaceAttachmentId;
11722 /**
11723 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11724 */
11725 DryRun?: Boolean;
11726 /**
11727 * Specifies whether to force a detachment. Use the Force parameter only as a last resort to detach a network interface from a failed instance. If you use the Force parameter to detach a network interface, you might not be able to attach a different network interface to the same index on the instance without first stopping and starting the instance. If you force the detachment of a network interface, the instance metadata might not get updated. This means that the attributes associated with the detached network interface might still be visible. The instance metadata will get updated when you stop and start the instance.
11728 */
11729 Force?: Boolean;
11730 }
11731 export interface DetachVolumeRequest {
11732 /**
11733 * The device name.
11734 */
11735 Device?: String;
11736 /**
11737 * 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.
11738 */
11739 Force?: Boolean;
11740 /**
11741 * The ID of the instance. If you are detaching a Multi-Attach enabled volume, you must specify an instance ID.
11742 */
11743 InstanceId?: InstanceId;
11744 /**
11745 * The ID of the volume.
11746 */
11747 VolumeId: VolumeId;
11748 /**
11749 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11750 */
11751 DryRun?: Boolean;
11752 }
11753 export interface DetachVpnGatewayRequest {
11754 /**
11755 * The ID of the VPC.
11756 */
11757 VpcId: VpcId;
11758 /**
11759 * The ID of the virtual private gateway.
11760 */
11761 VpnGatewayId: VpnGatewayId;
11762 /**
11763 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11764 */
11765 DryRun?: Boolean;
11766 }
11767 export type DeviceType = "ebs"|"instance-store"|string;
11768 export interface DhcpConfiguration {
11769 /**
11770 * The name of a DHCP option.
11771 */
11772 Key?: String;
11773 /**
11774 * One or more values for the DHCP option.
11775 */
11776 Values?: DhcpConfigurationValueList;
11777 }
11778 export type DhcpConfigurationList = DhcpConfiguration[];
11779 export type DhcpConfigurationValueList = AttributeValue[];
11780 export interface DhcpOptions {
11781 /**
11782 * One or more DHCP options in the set.
11783 */
11784 DhcpConfigurations?: DhcpConfigurationList;
11785 /**
11786 * The ID of the set of DHCP options.
11787 */
11788 DhcpOptionsId?: String;
11789 /**
11790 * The ID of the AWS account that owns the DHCP options set.
11791 */
11792 OwnerId?: String;
11793 /**
11794 * Any tags assigned to the DHCP options set.
11795 */
11796 Tags?: TagList;
11797 }
11798 export type DhcpOptionsId = string;
11799 export type DhcpOptionsIdStringList = DhcpOptionsId[];
11800 export type DhcpOptionsList = DhcpOptions[];
11801 export interface DirectoryServiceAuthentication {
11802 /**
11803 * The ID of the Active Directory used for authentication.
11804 */
11805 DirectoryId?: String;
11806 }
11807 export interface DirectoryServiceAuthenticationRequest {
11808 /**
11809 * The ID of the Active Directory to be used for authentication.
11810 */
11811 DirectoryId?: String;
11812 }
11813 export interface DisableEbsEncryptionByDefaultRequest {
11814 /**
11815 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11816 */
11817 DryRun?: Boolean;
11818 }
11819 export interface DisableEbsEncryptionByDefaultResult {
11820 /**
11821 * The updated status of encryption by default.
11822 */
11823 EbsEncryptionByDefault?: Boolean;
11824 }
11825 export interface DisableFastSnapshotRestoreErrorItem {
11826 /**
11827 * The ID of the snapshot.
11828 */
11829 SnapshotId?: String;
11830 /**
11831 * The errors.
11832 */
11833 FastSnapshotRestoreStateErrors?: DisableFastSnapshotRestoreStateErrorSet;
11834 }
11835 export type DisableFastSnapshotRestoreErrorSet = DisableFastSnapshotRestoreErrorItem[];
11836 export interface DisableFastSnapshotRestoreStateError {
11837 /**
11838 * The error code.
11839 */
11840 Code?: String;
11841 /**
11842 * The error message.
11843 */
11844 Message?: String;
11845 }
11846 export interface DisableFastSnapshotRestoreStateErrorItem {
11847 /**
11848 * The Availability Zone.
11849 */
11850 AvailabilityZone?: String;
11851 /**
11852 * The error.
11853 */
11854 Error?: DisableFastSnapshotRestoreStateError;
11855 }
11856 export type DisableFastSnapshotRestoreStateErrorSet = DisableFastSnapshotRestoreStateErrorItem[];
11857 export interface DisableFastSnapshotRestoreSuccessItem {
11858 /**
11859 * The ID of the snapshot.
11860 */
11861 SnapshotId?: String;
11862 /**
11863 * The Availability Zone.
11864 */
11865 AvailabilityZone?: String;
11866 /**
11867 * The state of fast snapshot restores for the snapshot.
11868 */
11869 State?: FastSnapshotRestoreStateCode;
11870 /**
11871 * The reason for the state transition. The possible values are as follows: Client.UserInitiated - The state successfully transitioned to enabling or disabling. Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.
11872 */
11873 StateTransitionReason?: String;
11874 /**
11875 * The ID of the AWS account that owns the snapshot.
11876 */
11877 OwnerId?: String;
11878 /**
11879 * The alias of the snapshot owner.
11880 */
11881 OwnerAlias?: String;
11882 /**
11883 * The time at which fast snapshot restores entered the enabling state.
11884 */
11885 EnablingTime?: MillisecondDateTime;
11886 /**
11887 * The time at which fast snapshot restores entered the optimizing state.
11888 */
11889 OptimizingTime?: MillisecondDateTime;
11890 /**
11891 * The time at which fast snapshot restores entered the enabled state.
11892 */
11893 EnabledTime?: MillisecondDateTime;
11894 /**
11895 * The time at which fast snapshot restores entered the disabling state.
11896 */
11897 DisablingTime?: MillisecondDateTime;
11898 /**
11899 * The time at which fast snapshot restores entered the disabled state.
11900 */
11901 DisabledTime?: MillisecondDateTime;
11902 }
11903 export type DisableFastSnapshotRestoreSuccessSet = DisableFastSnapshotRestoreSuccessItem[];
11904 export interface DisableFastSnapshotRestoresRequest {
11905 /**
11906 * One or more Availability Zones. For example, us-east-2a.
11907 */
11908 AvailabilityZones: AvailabilityZoneStringList;
11909 /**
11910 * The IDs of one or more snapshots. For example, snap-1234567890abcdef0.
11911 */
11912 SourceSnapshotIds: SnapshotIdStringList;
11913 /**
11914 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11915 */
11916 DryRun?: Boolean;
11917 }
11918 export interface DisableFastSnapshotRestoresResult {
11919 /**
11920 * Information about the snapshots for which fast snapshot restores were successfully disabled.
11921 */
11922 Successful?: DisableFastSnapshotRestoreSuccessSet;
11923 /**
11924 * Information about the snapshots for which fast snapshot restores could not be disabled.
11925 */
11926 Unsuccessful?: DisableFastSnapshotRestoreErrorSet;
11927 }
11928 export interface DisableTransitGatewayRouteTablePropagationRequest {
11929 /**
11930 * The ID of the propagation route table.
11931 */
11932 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
11933 /**
11934 * The ID of the attachment.
11935 */
11936 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
11937 /**
11938 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11939 */
11940 DryRun?: Boolean;
11941 }
11942 export interface DisableTransitGatewayRouteTablePropagationResult {
11943 /**
11944 * Information about route propagation.
11945 */
11946 Propagation?: TransitGatewayPropagation;
11947 }
11948 export interface DisableVgwRoutePropagationRequest {
11949 /**
11950 * The ID of the virtual private gateway.
11951 */
11952 GatewayId: VpnGatewayId;
11953 /**
11954 * The ID of the route table.
11955 */
11956 RouteTableId: RouteTableId;
11957 /**
11958 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11959 */
11960 DryRun?: Boolean;
11961 }
11962 export interface DisableVpcClassicLinkDnsSupportRequest {
11963 /**
11964 * The ID of the VPC.
11965 */
11966 VpcId?: VpcId;
11967 }
11968 export interface DisableVpcClassicLinkDnsSupportResult {
11969 /**
11970 * Returns true if the request succeeds; otherwise, it returns an error.
11971 */
11972 Return?: Boolean;
11973 }
11974 export interface DisableVpcClassicLinkRequest {
11975 /**
11976 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
11977 */
11978 DryRun?: Boolean;
11979 /**
11980 * The ID of the VPC.
11981 */
11982 VpcId: VpcId;
11983 }
11984 export interface DisableVpcClassicLinkResult {
11985 /**
11986 * Returns true if the request succeeds; otherwise, it returns an error.
11987 */
11988 Return?: Boolean;
11989 }
11990 export interface DisassociateAddressRequest {
11991 /**
11992 * [EC2-VPC] The association ID. Required for EC2-VPC.
11993 */
11994 AssociationId?: ElasticIpAssociationId;
11995 /**
11996 * [EC2-Classic] The Elastic IP address. Required for EC2-Classic.
11997 */
11998 PublicIp?: String;
11999 /**
12000 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12001 */
12002 DryRun?: Boolean;
12003 }
12004 export interface DisassociateClientVpnTargetNetworkRequest {
12005 /**
12006 * The ID of the Client VPN endpoint from which to disassociate the target network.
12007 */
12008 ClientVpnEndpointId: ClientVpnEndpointId;
12009 /**
12010 * The ID of the target network association.
12011 */
12012 AssociationId: ClientVpnAssociationId;
12013 /**
12014 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12015 */
12016 DryRun?: Boolean;
12017 }
12018 export interface DisassociateClientVpnTargetNetworkResult {
12019 /**
12020 * The ID of the target network association.
12021 */
12022 AssociationId?: String;
12023 /**
12024 * The current state of the target network association.
12025 */
12026 Status?: AssociationStatus;
12027 }
12028 export interface DisassociateIamInstanceProfileRequest {
12029 /**
12030 * The ID of the IAM instance profile association.
12031 */
12032 AssociationId: IamInstanceProfileAssociationId;
12033 }
12034 export interface DisassociateIamInstanceProfileResult {
12035 /**
12036 * Information about the IAM instance profile association.
12037 */
12038 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
12039 }
12040 export interface DisassociateRouteTableRequest {
12041 /**
12042 * The association ID representing the current association between the route table and subnet.
12043 */
12044 AssociationId: RouteTableAssociationId;
12045 /**
12046 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12047 */
12048 DryRun?: Boolean;
12049 }
12050 export interface DisassociateSubnetCidrBlockRequest {
12051 /**
12052 * The association ID for the CIDR block.
12053 */
12054 AssociationId: SubnetCidrAssociationId;
12055 }
12056 export interface DisassociateSubnetCidrBlockResult {
12057 /**
12058 * Information about the IPv6 CIDR block association.
12059 */
12060 Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation;
12061 /**
12062 * The ID of the subnet.
12063 */
12064 SubnetId?: String;
12065 }
12066 export interface DisassociateTransitGatewayMulticastDomainRequest {
12067 /**
12068 * The ID of the transit gateway multicast domain.
12069 */
12070 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
12071 /**
12072 * The ID of the attachment.
12073 */
12074 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
12075 /**
12076 * The IDs of the subnets;
12077 */
12078 SubnetIds?: ValueStringList;
12079 /**
12080 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12081 */
12082 DryRun?: Boolean;
12083 }
12084 export interface DisassociateTransitGatewayMulticastDomainResult {
12085 /**
12086 * Information about the association.
12087 */
12088 Associations?: TransitGatewayMulticastDomainAssociations;
12089 }
12090 export interface DisassociateTransitGatewayRouteTableRequest {
12091 /**
12092 * The ID of the transit gateway route table.
12093 */
12094 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
12095 /**
12096 * The ID of the attachment.
12097 */
12098 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
12099 /**
12100 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12101 */
12102 DryRun?: Boolean;
12103 }
12104 export interface DisassociateTransitGatewayRouteTableResult {
12105 /**
12106 * Information about the association.
12107 */
12108 Association?: TransitGatewayAssociation;
12109 }
12110 export interface DisassociateVpcCidrBlockRequest {
12111 /**
12112 * The association ID for the CIDR block.
12113 */
12114 AssociationId: VpcCidrAssociationId;
12115 }
12116 export interface DisassociateVpcCidrBlockResult {
12117 /**
12118 * Information about the IPv6 CIDR block association.
12119 */
12120 Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation;
12121 /**
12122 * Information about the IPv4 CIDR block association.
12123 */
12124 CidrBlockAssociation?: VpcCidrBlockAssociation;
12125 /**
12126 * The ID of the VPC.
12127 */
12128 VpcId?: String;
12129 }
12130 export type DiskCount = number;
12131 export interface DiskImage {
12132 /**
12133 * A description of the disk image.
12134 */
12135 Description?: String;
12136 /**
12137 * Information about the disk image.
12138 */
12139 Image?: DiskImageDetail;
12140 /**
12141 * Information about the volume.
12142 */
12143 Volume?: VolumeDetail;
12144 }
12145 export interface DiskImageDescription {
12146 /**
12147 * The checksum computed for the disk image.
12148 */
12149 Checksum?: String;
12150 /**
12151 * The disk image format.
12152 */
12153 Format?: DiskImageFormat;
12154 /**
12155 * 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.
12156 */
12157 ImportManifestUrl?: String;
12158 /**
12159 * The size of the disk image, in GiB.
12160 */
12161 Size?: Long;
12162 }
12163 export interface DiskImageDetail {
12164 /**
12165 * The size of the disk image, in GiB.
12166 */
12167 Bytes: Long;
12168 /**
12169 * The disk image format.
12170 */
12171 Format: DiskImageFormat;
12172 /**
12173 * 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.
12174 */
12175 ImportManifestUrl: String;
12176 }
12177 export type DiskImageFormat = "VMDK"|"RAW"|"VHD"|string;
12178 export type DiskImageList = DiskImage[];
12179 export interface DiskImageVolumeDescription {
12180 /**
12181 * The volume identifier.
12182 */
12183 Id?: String;
12184 /**
12185 * The size of the volume, in GiB.
12186 */
12187 Size?: Long;
12188 }
12189 export interface DiskInfo {
12190 /**
12191 * The size of the disk in GB.
12192 */
12193 SizeInGB?: DiskSize;
12194 /**
12195 * The number of disks with this configuration.
12196 */
12197 Count?: DiskCount;
12198 /**
12199 * The type of disk.
12200 */
12201 Type?: DiskType;
12202 }
12203 export type DiskInfoList = DiskInfo[];
12204 export type DiskSize = number;
12205 export type DiskType = "hdd"|"ssd"|string;
12206 export interface DnsEntry {
12207 /**
12208 * The DNS name.
12209 */
12210 DnsName?: String;
12211 /**
12212 * The ID of the private hosted zone.
12213 */
12214 HostedZoneId?: String;
12215 }
12216 export type DnsEntrySet = DnsEntry[];
12217 export type DnsNameState = "pendingVerification"|"verified"|"failed"|string;
12218 export interface DnsServersOptionsModifyStructure {
12219 /**
12220 * 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.
12221 */
12222 CustomDnsServers?: ValueStringList;
12223 /**
12224 * Indicates whether DNS servers should be used. Specify False to delete the existing DNS servers.
12225 */
12226 Enabled?: Boolean;
12227 }
12228 export type DnsSupportValue = "enable"|"disable"|string;
12229 export type DomainType = "vpc"|"standard"|string;
12230 export type Double = number;
12231 export interface EbsBlockDevice {
12232 /**
12233 * Indicates whether the EBS volume is deleted on instance termination. For more information, see Preserving Amazon EBS Volumes on Instance Termination in the Amazon Elastic Compute Cloud User Guide.
12234 */
12235 DeleteOnTermination?: Boolean;
12236 /**
12237 * 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. Maximum io1 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. 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.
12238 */
12239 Iops?: Integer;
12240 /**
12241 * The ID of the snapshot.
12242 */
12243 SnapshotId?: String;
12244 /**
12245 * 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. 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.
12246 */
12247 VolumeSize?: Integer;
12248 /**
12249 * The volume type. If you set the type to io1, you must also specify the Iops parameter. If you set the type to gp2, st1, sc1, or standard, you must omit the Iops parameter. Default: gp2
12250 */
12251 VolumeType?: VolumeType;
12252 /**
12253 * Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer managed CMK under which the EBS volume is encrypted. This parameter is only supported on BlockDeviceMapping objects called by RunInstances, RequestSpotFleet, and RequestSpotInstances.
12254 */
12255 KmsKeyId?: String;
12256 /**
12257 * Indicates whether the encryption state of an EBS volume is changed while being restored from a backing snapshot. The effect of setting the encryption state to true depends on the volume origin (new or from a snapshot), starting encryption state, ownership, and whether encryption by default is enabled. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. In no case can you remove encryption from an encrypted volume. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. For more information, see Supported Instance Types. This parameter is not returned by .
12258 */
12259 Encrypted?: Boolean;
12260 }
12261 export type EbsEncryptionSupport = "unsupported"|"supported"|string;
12262 export interface EbsInfo {
12263 /**
12264 * Indicates that the instance type is Amazon EBS-optimized. For more information, see Amazon EBS-Optimized Instances in Amazon EC2 User Guide for Linux Instances.
12265 */
12266 EbsOptimizedSupport?: EbsOptimizedSupport;
12267 /**
12268 * Indicates whether Amazon EBS encryption is supported.
12269 */
12270 EncryptionSupport?: EbsEncryptionSupport;
12271 }
12272 export interface EbsInstanceBlockDevice {
12273 /**
12274 * The time stamp when the attachment initiated.
12275 */
12276 AttachTime?: DateTime;
12277 /**
12278 * Indicates whether the volume is deleted on instance termination.
12279 */
12280 DeleteOnTermination?: Boolean;
12281 /**
12282 * The attachment state.
12283 */
12284 Status?: AttachmentStatus;
12285 /**
12286 * The ID of the EBS volume.
12287 */
12288 VolumeId?: String;
12289 }
12290 export interface EbsInstanceBlockDeviceSpecification {
12291 /**
12292 * Indicates whether the volume is deleted on instance termination.
12293 */
12294 DeleteOnTermination?: Boolean;
12295 /**
12296 * The ID of the EBS volume.
12297 */
12298 VolumeId?: VolumeId;
12299 }
12300 export type EbsOptimizedSupport = "unsupported"|"supported"|"default"|string;
12301 export interface EgressOnlyInternetGateway {
12302 /**
12303 * Information about the attachment of the egress-only internet gateway.
12304 */
12305 Attachments?: InternetGatewayAttachmentList;
12306 /**
12307 * The ID of the egress-only internet gateway.
12308 */
12309 EgressOnlyInternetGatewayId?: EgressOnlyInternetGatewayId;
12310 /**
12311 * The tags assigned to the egress-only internet gateway.
12312 */
12313 Tags?: TagList;
12314 }
12315 export type EgressOnlyInternetGatewayId = string;
12316 export type EgressOnlyInternetGatewayIdList = EgressOnlyInternetGatewayId[];
12317 export type EgressOnlyInternetGatewayList = EgressOnlyInternetGateway[];
12318 export interface ElasticGpuAssociation {
12319 /**
12320 * The ID of the Elastic Graphics accelerator.
12321 */
12322 ElasticGpuId?: String;
12323 /**
12324 * The ID of the association.
12325 */
12326 ElasticGpuAssociationId?: String;
12327 /**
12328 * The state of the association between the instance and the Elastic Graphics accelerator.
12329 */
12330 ElasticGpuAssociationState?: String;
12331 /**
12332 * The time the Elastic Graphics accelerator was associated with the instance.
12333 */
12334 ElasticGpuAssociationTime?: String;
12335 }
12336 export type ElasticGpuAssociationList = ElasticGpuAssociation[];
12337 export interface ElasticGpuHealth {
12338 /**
12339 * The health status.
12340 */
12341 Status?: ElasticGpuStatus;
12342 }
12343 export type ElasticGpuId = string;
12344 export type ElasticGpuIdSet = ElasticGpuId[];
12345 export type ElasticGpuSet = ElasticGpus[];
12346 export interface ElasticGpuSpecification {
12347 /**
12348 * The type of Elastic Graphics accelerator. For more information about the values to specify for Type, see Elastic Graphics Basics, specifically the Elastic Graphics accelerator column, in the Amazon Elastic Compute Cloud User Guide for Windows Instances.
12349 */
12350 Type: String;
12351 }
12352 export type ElasticGpuSpecificationList = ElasticGpuSpecification[];
12353 export interface ElasticGpuSpecificationResponse {
12354 /**
12355 * The elastic GPU type.
12356 */
12357 Type?: String;
12358 }
12359 export type ElasticGpuSpecificationResponseList = ElasticGpuSpecificationResponse[];
12360 export type ElasticGpuSpecifications = ElasticGpuSpecification[];
12361 export type ElasticGpuState = "ATTACHED"|string;
12362 export type ElasticGpuStatus = "OK"|"IMPAIRED"|string;
12363 export interface ElasticGpus {
12364 /**
12365 * The ID of the Elastic Graphics accelerator.
12366 */
12367 ElasticGpuId?: String;
12368 /**
12369 * The Availability Zone in the which the Elastic Graphics accelerator resides.
12370 */
12371 AvailabilityZone?: String;
12372 /**
12373 * The type of Elastic Graphics accelerator.
12374 */
12375 ElasticGpuType?: String;
12376 /**
12377 * The status of the Elastic Graphics accelerator.
12378 */
12379 ElasticGpuHealth?: ElasticGpuHealth;
12380 /**
12381 * The state of the Elastic Graphics accelerator.
12382 */
12383 ElasticGpuState?: ElasticGpuState;
12384 /**
12385 * The ID of the instance to which the Elastic Graphics accelerator is attached.
12386 */
12387 InstanceId?: String;
12388 /**
12389 * The tags assigned to the Elastic Graphics accelerator.
12390 */
12391 Tags?: TagList;
12392 }
12393 export interface ElasticInferenceAccelerator {
12394 /**
12395 * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
12396 */
12397 Type: String;
12398 /**
12399 * The number of elastic inference accelerators to attach to the instance. Default: 1
12400 */
12401 Count?: ElasticInferenceAcceleratorCount;
12402 }
12403 export interface ElasticInferenceAcceleratorAssociation {
12404 /**
12405 * The Amazon Resource Name (ARN) of the elastic inference accelerator.
12406 */
12407 ElasticInferenceAcceleratorArn?: String;
12408 /**
12409 * The ID of the association.
12410 */
12411 ElasticInferenceAcceleratorAssociationId?: String;
12412 /**
12413 * The state of the elastic inference accelerator.
12414 */
12415 ElasticInferenceAcceleratorAssociationState?: String;
12416 /**
12417 * The time at which the elastic inference accelerator is associated with an instance.
12418 */
12419 ElasticInferenceAcceleratorAssociationTime?: DateTime;
12420 }
12421 export type ElasticInferenceAcceleratorAssociationList = ElasticInferenceAcceleratorAssociation[];
12422 export type ElasticInferenceAcceleratorCount = number;
12423 export type ElasticInferenceAccelerators = ElasticInferenceAccelerator[];
12424 export type ElasticIpAssociationId = string;
12425 export type EnaSupport = "unsupported"|"supported"|"required"|string;
12426 export interface EnableEbsEncryptionByDefaultRequest {
12427 /**
12428 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12429 */
12430 DryRun?: Boolean;
12431 }
12432 export interface EnableEbsEncryptionByDefaultResult {
12433 /**
12434 * The updated status of encryption by default.
12435 */
12436 EbsEncryptionByDefault?: Boolean;
12437 }
12438 export interface EnableFastSnapshotRestoreErrorItem {
12439 /**
12440 * The ID of the snapshot.
12441 */
12442 SnapshotId?: String;
12443 /**
12444 * The errors.
12445 */
12446 FastSnapshotRestoreStateErrors?: EnableFastSnapshotRestoreStateErrorSet;
12447 }
12448 export type EnableFastSnapshotRestoreErrorSet = EnableFastSnapshotRestoreErrorItem[];
12449 export interface EnableFastSnapshotRestoreStateError {
12450 /**
12451 * The error code.
12452 */
12453 Code?: String;
12454 /**
12455 * The error message.
12456 */
12457 Message?: String;
12458 }
12459 export interface EnableFastSnapshotRestoreStateErrorItem {
12460 /**
12461 * The Availability Zone.
12462 */
12463 AvailabilityZone?: String;
12464 /**
12465 * The error.
12466 */
12467 Error?: EnableFastSnapshotRestoreStateError;
12468 }
12469 export type EnableFastSnapshotRestoreStateErrorSet = EnableFastSnapshotRestoreStateErrorItem[];
12470 export interface EnableFastSnapshotRestoreSuccessItem {
12471 /**
12472 * The ID of the snapshot.
12473 */
12474 SnapshotId?: String;
12475 /**
12476 * The Availability Zone.
12477 */
12478 AvailabilityZone?: String;
12479 /**
12480 * The state of fast snapshot restores.
12481 */
12482 State?: FastSnapshotRestoreStateCode;
12483 /**
12484 * The reason for the state transition. The possible values are as follows: Client.UserInitiated - The state successfully transitioned to enabling or disabling. Client.UserInitiated - Lifecycle state transition - The state successfully transitioned to optimizing, enabled, or disabled.
12485 */
12486 StateTransitionReason?: String;
12487 /**
12488 * The ID of the AWS account that owns the snapshot.
12489 */
12490 OwnerId?: String;
12491 /**
12492 * The alias of the snapshot owner.
12493 */
12494 OwnerAlias?: String;
12495 /**
12496 * The time at which fast snapshot restores entered the enabling state.
12497 */
12498 EnablingTime?: MillisecondDateTime;
12499 /**
12500 * The time at which fast snapshot restores entered the optimizing state.
12501 */
12502 OptimizingTime?: MillisecondDateTime;
12503 /**
12504 * The time at which fast snapshot restores entered the enabled state.
12505 */
12506 EnabledTime?: MillisecondDateTime;
12507 /**
12508 * The time at which fast snapshot restores entered the disabling state.
12509 */
12510 DisablingTime?: MillisecondDateTime;
12511 /**
12512 * The time at which fast snapshot restores entered the disabled state.
12513 */
12514 DisabledTime?: MillisecondDateTime;
12515 }
12516 export type EnableFastSnapshotRestoreSuccessSet = EnableFastSnapshotRestoreSuccessItem[];
12517 export interface EnableFastSnapshotRestoresRequest {
12518 /**
12519 * One or more Availability Zones. For example, us-east-2a.
12520 */
12521 AvailabilityZones: AvailabilityZoneStringList;
12522 /**
12523 * The IDs of one or more snapshots. For example, snap-1234567890abcdef0. You can specify a snapshot that was shared with you from another AWS account.
12524 */
12525 SourceSnapshotIds: SnapshotIdStringList;
12526 /**
12527 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12528 */
12529 DryRun?: Boolean;
12530 }
12531 export interface EnableFastSnapshotRestoresResult {
12532 /**
12533 * Information about the snapshots for which fast snapshot restores were successfully enabled.
12534 */
12535 Successful?: EnableFastSnapshotRestoreSuccessSet;
12536 /**
12537 * Information about the snapshots for which fast snapshot restores could not be enabled.
12538 */
12539 Unsuccessful?: EnableFastSnapshotRestoreErrorSet;
12540 }
12541 export interface EnableTransitGatewayRouteTablePropagationRequest {
12542 /**
12543 * The ID of the propagation route table.
12544 */
12545 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
12546 /**
12547 * The ID of the attachment.
12548 */
12549 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
12550 /**
12551 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12552 */
12553 DryRun?: Boolean;
12554 }
12555 export interface EnableTransitGatewayRouteTablePropagationResult {
12556 /**
12557 * Information about route propagation.
12558 */
12559 Propagation?: TransitGatewayPropagation;
12560 }
12561 export interface EnableVgwRoutePropagationRequest {
12562 /**
12563 * The ID of the virtual private gateway that is attached to a VPC. The virtual private gateway must be attached to the same VPC that the routing tables are associated with.
12564 */
12565 GatewayId: VpnGatewayId;
12566 /**
12567 * The ID of the route table. The routing table must be associated with the same VPC that the virtual private gateway is attached to.
12568 */
12569 RouteTableId: RouteTableId;
12570 /**
12571 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12572 */
12573 DryRun?: Boolean;
12574 }
12575 export interface EnableVolumeIORequest {
12576 /**
12577 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12578 */
12579 DryRun?: Boolean;
12580 /**
12581 * The ID of the volume.
12582 */
12583 VolumeId: VolumeId;
12584 }
12585 export interface EnableVpcClassicLinkDnsSupportRequest {
12586 /**
12587 * The ID of the VPC.
12588 */
12589 VpcId?: VpcId;
12590 }
12591 export interface EnableVpcClassicLinkDnsSupportResult {
12592 /**
12593 * Returns true if the request succeeds; otherwise, it returns an error.
12594 */
12595 Return?: Boolean;
12596 }
12597 export interface EnableVpcClassicLinkRequest {
12598 /**
12599 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12600 */
12601 DryRun?: Boolean;
12602 /**
12603 * The ID of the VPC.
12604 */
12605 VpcId: VpcId;
12606 }
12607 export interface EnableVpcClassicLinkResult {
12608 /**
12609 * Returns true if the request succeeds; otherwise, it returns an error.
12610 */
12611 Return?: Boolean;
12612 }
12613 export type EndDateType = "unlimited"|"limited"|string;
12614 export type EndpointSet = ClientVpnEndpoint[];
12615 export type EventCode = "instance-reboot"|"system-reboot"|"system-maintenance"|"instance-retirement"|"instance-stop"|string;
12616 export interface EventInformation {
12617 /**
12618 * The description of the event.
12619 */
12620 EventDescription?: String;
12621 /**
12622 * The event. The following are the error events: iamFleetRoleInvalid - The EC2 Fleet or 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 EC2 Fleet or Spot Fleet request has been validated and Amazon EC2 is attempting to maintain the target number of running Spot Instances. cancelled - The EC2 Fleet or Spot Fleet request is canceled and has no running Spot Instances. The EC2 Fleet or Spot Fleet will be deleted two days after its instances were terminated. cancelled_running - The EC2 Fleet or Spot Fleet request is canceled and does not launch additional Spot Instances. Existing Spot Instances continue to run until they are interrupted or terminated. cancelled_terminating - The EC2 Fleet or Spot Fleet request is canceled and its Spot Instances are terminating. expired - The EC2 Fleet or 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 EC2 Fleet or Spot Fleet request was accepted and is in progress. modify_successful - The EC2 Fleet or 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 EC2 Fleet or 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.
12623 */
12624 EventSubType?: String;
12625 /**
12626 * The ID of the instance. This information is available only for instanceChange events.
12627 */
12628 InstanceId?: String;
12629 }
12630 export type EventType = "instanceChange"|"fleetRequestChange"|"error"|"information"|string;
12631 export type ExcessCapacityTerminationPolicy = "noTermination"|"default"|string;
12632 export type ExecutableByStringList = String[];
12633 export interface ExportClientVpnClientCertificateRevocationListRequest {
12634 /**
12635 * The ID of the Client VPN endpoint.
12636 */
12637 ClientVpnEndpointId: ClientVpnEndpointId;
12638 /**
12639 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12640 */
12641 DryRun?: Boolean;
12642 }
12643 export interface ExportClientVpnClientCertificateRevocationListResult {
12644 /**
12645 * Information about the client certificate revocation list.
12646 */
12647 CertificateRevocationList?: String;
12648 /**
12649 * The current state of the client certificate revocation list.
12650 */
12651 Status?: ClientCertificateRevocationListStatus;
12652 }
12653 export interface ExportClientVpnClientConfigurationRequest {
12654 /**
12655 * The ID of the Client VPN endpoint.
12656 */
12657 ClientVpnEndpointId: ClientVpnEndpointId;
12658 /**
12659 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12660 */
12661 DryRun?: Boolean;
12662 }
12663 export interface ExportClientVpnClientConfigurationResult {
12664 /**
12665 * The contents of the Client VPN endpoint configuration file.
12666 */
12667 ClientConfiguration?: String;
12668 }
12669 export type ExportEnvironment = "citrix"|"vmware"|"microsoft"|string;
12670 export interface ExportImageRequest {
12671 /**
12672 * Token to enable idempotency for export image requests.
12673 */
12674 ClientToken?: String;
12675 /**
12676 * A description of the image being exported. The maximum length is 255 bytes.
12677 */
12678 Description?: String;
12679 /**
12680 * The disk image format.
12681 */
12682 DiskImageFormat: DiskImageFormat;
12683 /**
12684 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12685 */
12686 DryRun?: Boolean;
12687 /**
12688 * The ID of the image.
12689 */
12690 ImageId: ImageId;
12691 /**
12692 * Information about the destination S3 bucket. The bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.
12693 */
12694 S3ExportLocation: ExportTaskS3LocationRequest;
12695 /**
12696 * The name of the role that grants VM Import/Export permission to export images to your S3 bucket. If this parameter is not specified, the default role is named 'vmimport'.
12697 */
12698 RoleName?: String;
12699 }
12700 export interface ExportImageResult {
12701 /**
12702 * A description of the image being exported.
12703 */
12704 Description?: String;
12705 /**
12706 * The disk image format for the exported image.
12707 */
12708 DiskImageFormat?: DiskImageFormat;
12709 /**
12710 * The ID of the export image task.
12711 */
12712 ExportImageTaskId?: String;
12713 /**
12714 * The ID of the image.
12715 */
12716 ImageId?: String;
12717 /**
12718 * The name of the role that grants VM Import/Export permission to export images to your S3 bucket.
12719 */
12720 RoleName?: String;
12721 /**
12722 * The percent complete of the export image task.
12723 */
12724 Progress?: String;
12725 /**
12726 * Information about the destination S3 bucket.
12727 */
12728 S3ExportLocation?: ExportTaskS3Location;
12729 /**
12730 * The status of the export image task. The possible values are active, completed, deleting, and deleted.
12731 */
12732 Status?: String;
12733 /**
12734 * The status message for the export image task.
12735 */
12736 StatusMessage?: String;
12737 }
12738 export interface ExportImageTask {
12739 /**
12740 * A description of the image being exported.
12741 */
12742 Description?: String;
12743 /**
12744 * The ID of the export image task.
12745 */
12746 ExportImageTaskId?: String;
12747 /**
12748 * The ID of the image.
12749 */
12750 ImageId?: String;
12751 /**
12752 * The percent complete of the export image task.
12753 */
12754 Progress?: String;
12755 /**
12756 * Information about the destination S3 bucket.
12757 */
12758 S3ExportLocation?: ExportTaskS3Location;
12759 /**
12760 * The status of the export image task. The possible values are active, completed, deleting, and deleted.
12761 */
12762 Status?: String;
12763 /**
12764 * The status message for the export image task.
12765 */
12766 StatusMessage?: String;
12767 }
12768 export type ExportImageTaskId = string;
12769 export type ExportImageTaskIdList = ExportImageTaskId[];
12770 export type ExportImageTaskList = ExportImageTask[];
12771 export interface ExportTask {
12772 /**
12773 * A description of the resource being exported.
12774 */
12775 Description?: String;
12776 /**
12777 * The ID of the export task.
12778 */
12779 ExportTaskId?: String;
12780 /**
12781 * Information about the export task.
12782 */
12783 ExportToS3Task?: ExportToS3Task;
12784 /**
12785 * Information about the instance to export.
12786 */
12787 InstanceExportDetails?: InstanceExportDetails;
12788 /**
12789 * The state of the export task.
12790 */
12791 State?: ExportTaskState;
12792 /**
12793 * The status message related to the export task.
12794 */
12795 StatusMessage?: String;
12796 /**
12797 * The tags for the export task.
12798 */
12799 Tags?: TagList;
12800 }
12801 export type ExportTaskId = string;
12802 export type ExportTaskIdStringList = ExportTaskId[];
12803 export type ExportTaskList = ExportTask[];
12804 export interface ExportTaskS3Location {
12805 /**
12806 * The destination S3 bucket.
12807 */
12808 S3Bucket?: String;
12809 /**
12810 * The prefix (logical hierarchy) in the bucket.
12811 */
12812 S3Prefix?: String;
12813 }
12814 export interface ExportTaskS3LocationRequest {
12815 /**
12816 * The destination S3 bucket.
12817 */
12818 S3Bucket: String;
12819 /**
12820 * The prefix (logical hierarchy) in the bucket.
12821 */
12822 S3Prefix?: String;
12823 }
12824 export type ExportTaskState = "active"|"cancelling"|"cancelled"|"completed"|string;
12825 export interface ExportToS3Task {
12826 /**
12827 * The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.
12828 */
12829 ContainerFormat?: ContainerFormat;
12830 /**
12831 * The format for the exported image.
12832 */
12833 DiskImageFormat?: DiskImageFormat;
12834 /**
12835 * 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.
12836 */
12837 S3Bucket?: String;
12838 /**
12839 * The encryption key for your S3 bucket.
12840 */
12841 S3Key?: String;
12842 }
12843 export interface ExportToS3TaskSpecification {
12844 /**
12845 * The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.
12846 */
12847 ContainerFormat?: ContainerFormat;
12848 /**
12849 * The format for the exported image.
12850 */
12851 DiskImageFormat?: DiskImageFormat;
12852 /**
12853 * 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.
12854 */
12855 S3Bucket?: String;
12856 /**
12857 * The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.
12858 */
12859 S3Prefix?: String;
12860 }
12861 export interface ExportTransitGatewayRoutesRequest {
12862 /**
12863 * The ID of the route table.
12864 */
12865 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
12866 /**
12867 * 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 route (active | blackhole).
12868 */
12869 Filters?: FilterList;
12870 /**
12871 * The name of the S3 bucket.
12872 */
12873 S3Bucket: String;
12874 /**
12875 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
12876 */
12877 DryRun?: Boolean;
12878 }
12879 export interface ExportTransitGatewayRoutesResult {
12880 /**
12881 * The URL of the exported file in Amazon S3. For example, s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.
12882 */
12883 S3Location?: String;
12884 }
12885 export type ExportVmTaskId = string;
12886 export interface FailedQueuedPurchaseDeletion {
12887 /**
12888 * The error.
12889 */
12890 Error?: DeleteQueuedReservedInstancesError;
12891 /**
12892 * The ID of the Reserved Instance.
12893 */
12894 ReservedInstancesId?: String;
12895 }
12896 export type FailedQueuedPurchaseDeletionSet = FailedQueuedPurchaseDeletion[];
12897 export type FastSnapshotRestoreStateCode = "enabling"|"optimizing"|"enabled"|"disabling"|"disabled"|string;
12898 export interface Filter {
12899 /**
12900 * The name of the filter. Filter names are case-sensitive.
12901 */
12902 Name?: String;
12903 /**
12904 * The filter values. Filter values are case-sensitive.
12905 */
12906 Values?: ValueStringList;
12907 }
12908 export type FilterList = Filter[];
12909 export type FleetActivityStatus = "error"|"pending_fulfillment"|"pending_termination"|"fulfilled"|string;
12910 export type FleetCapacityReservationUsageStrategy = "use-capacity-reservations-first"|string;
12911 export interface FleetData {
12912 /**
12913 * 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.
12914 */
12915 ActivityStatus?: FleetActivityStatus;
12916 /**
12917 * The creation date and time of the EC2 Fleet.
12918 */
12919 CreateTime?: DateTime;
12920 /**
12921 * The ID of the EC2 Fleet.
12922 */
12923 FleetId?: FleetId;
12924 /**
12925 * The state of the EC2 Fleet.
12926 */
12927 FleetState?: FleetStateCode;
12928 /**
12929 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraints: Maximum 64 ASCII characters
12930 */
12931 ClientToken?: String;
12932 /**
12933 * 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.
12934 */
12935 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
12936 /**
12937 * The number of units fulfilled by this request compared to the set target capacity.
12938 */
12939 FulfilledCapacity?: Double;
12940 /**
12941 * The number of units fulfilled by this request compared to the set target On-Demand capacity.
12942 */
12943 FulfilledOnDemandCapacity?: Double;
12944 /**
12945 * The launch template and overrides.
12946 */
12947 LaunchTemplateConfigs?: FleetLaunchTemplateConfigList;
12948 /**
12949 * 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.
12950 */
12951 TargetCapacitySpecification?: TargetCapacitySpecification;
12952 /**
12953 * Indicates whether running instances should be terminated when the EC2 Fleet expires.
12954 */
12955 TerminateInstancesWithExpiration?: Boolean;
12956 /**
12957 * 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 it 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.
12958 */
12959 Type?: FleetType;
12960 /**
12961 * 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.
12962 */
12963 ValidFrom?: DateTime;
12964 /**
12965 * 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.
12966 */
12967 ValidUntil?: DateTime;
12968 /**
12969 * Indicates whether EC2 Fleet should replace unhealthy instances.
12970 */
12971 ReplaceUnhealthyInstances?: Boolean;
12972 /**
12973 * The configuration of Spot Instances in an EC2 Fleet.
12974 */
12975 SpotOptions?: SpotOptions;
12976 /**
12977 * The allocation strategy of On-Demand Instances in an EC2 Fleet.
12978 */
12979 OnDemandOptions?: OnDemandOptions;
12980 /**
12981 * The tags for an EC2 Fleet resource.
12982 */
12983 Tags?: TagList;
12984 /**
12985 * Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.
12986 */
12987 Errors?: DescribeFleetsErrorSet;
12988 /**
12989 * Information about the instances that were launched by the fleet. Valid only when Type is set to instant.
12990 */
12991 Instances?: DescribeFleetsInstancesSet;
12992 }
12993 export type FleetEventType = "instance-change"|"fleet-change"|"service-error"|string;
12994 export type FleetExcessCapacityTerminationPolicy = "no-termination"|"termination"|string;
12995 export type FleetId = string;
12996 export type FleetIdSet = FleetId[];
12997 export interface FleetLaunchTemplateConfig {
12998 /**
12999 * The launch template.
13000 */
13001 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
13002 /**
13003 * Any parameters that you specify override the same parameters in the launch template.
13004 */
13005 Overrides?: FleetLaunchTemplateOverridesList;
13006 }
13007 export type FleetLaunchTemplateConfigList = FleetLaunchTemplateConfig[];
13008 export type FleetLaunchTemplateConfigListRequest = FleetLaunchTemplateConfigRequest[];
13009 export interface FleetLaunchTemplateConfigRequest {
13010 /**
13011 * The launch template to use. You must specify either the launch template ID or launch template name in the request.
13012 */
13013 LaunchTemplateSpecification?: FleetLaunchTemplateSpecificationRequest;
13014 /**
13015 * Any parameters that you specify override the same parameters in the launch template.
13016 */
13017 Overrides?: FleetLaunchTemplateOverridesListRequest;
13018 }
13019 export interface FleetLaunchTemplateOverrides {
13020 /**
13021 * The instance type.
13022 */
13023 InstanceType?: InstanceType;
13024 /**
13025 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
13026 */
13027 MaxPrice?: String;
13028 /**
13029 * The ID of the subnet in which to launch the instances.
13030 */
13031 SubnetId?: String;
13032 /**
13033 * The Availability Zone in which to launch the instances.
13034 */
13035 AvailabilityZone?: String;
13036 /**
13037 * The number of units provided by the specified instance type.
13038 */
13039 WeightedCapacity?: Double;
13040 /**
13041 * 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.
13042 */
13043 Priority?: Double;
13044 /**
13045 * The location where the instance launched, if applicable.
13046 */
13047 Placement?: PlacementResponse;
13048 }
13049 export type FleetLaunchTemplateOverridesList = FleetLaunchTemplateOverrides[];
13050 export type FleetLaunchTemplateOverridesListRequest = FleetLaunchTemplateOverridesRequest[];
13051 export interface FleetLaunchTemplateOverridesRequest {
13052 /**
13053 * The instance type.
13054 */
13055 InstanceType?: InstanceType;
13056 /**
13057 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
13058 */
13059 MaxPrice?: String;
13060 /**
13061 * The IDs of the subnets in which to launch the instances. Separate multiple subnet IDs using commas (for example, subnet-1234abcdeexample1, subnet-0987cdef6example2). A request of type instant can have only one subnet ID.
13062 */
13063 SubnetId?: SubnetId;
13064 /**
13065 * The Availability Zone in which to launch the instances.
13066 */
13067 AvailabilityZone?: String;
13068 /**
13069 * The number of units provided by the specified instance type.
13070 */
13071 WeightedCapacity?: Double;
13072 /**
13073 * 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.
13074 */
13075 Priority?: Double;
13076 /**
13077 * The location where the instance launched, if applicable.
13078 */
13079 Placement?: Placement;
13080 }
13081 export interface FleetLaunchTemplateSpecification {
13082 /**
13083 * The ID of the launch template. You must specify either a template ID or a template name.
13084 */
13085 LaunchTemplateId?: String;
13086 /**
13087 * The name of the launch template. You must specify either a template name or a template ID.
13088 */
13089 LaunchTemplateName?: LaunchTemplateName;
13090 /**
13091 * The version number of the launch template. You must specify a version number.
13092 */
13093 Version?: String;
13094 }
13095 export interface FleetLaunchTemplateSpecificationRequest {
13096 /**
13097 * The ID of the launch template.
13098 */
13099 LaunchTemplateId?: LaunchTemplateId;
13100 /**
13101 * The name of the launch template.
13102 */
13103 LaunchTemplateName?: LaunchTemplateName;
13104 /**
13105 * The version number of the launch template. Note: This is a required parameter and will be updated soon.
13106 */
13107 Version?: String;
13108 }
13109 export type FleetOnDemandAllocationStrategy = "lowest-price"|"prioritized"|string;
13110 export type FleetSet = FleetData[];
13111 export type FleetStateCode = "submitted"|"active"|"deleted"|"failed"|"deleted_running"|"deleted_terminating"|"modifying"|string;
13112 export type FleetType = "request"|"maintain"|"instant"|string;
13113 export type Float = number;
13114 export interface FlowLog {
13115 /**
13116 * The date and time the flow log was created.
13117 */
13118 CreationTime?: MillisecondDateTime;
13119 /**
13120 * 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.
13121 */
13122 DeliverLogsErrorMessage?: String;
13123 /**
13124 * The ARN of the IAM role that posts logs to CloudWatch Logs.
13125 */
13126 DeliverLogsPermissionArn?: String;
13127 /**
13128 * The status of the logs delivery (SUCCESS | FAILED).
13129 */
13130 DeliverLogsStatus?: String;
13131 /**
13132 * The flow log ID.
13133 */
13134 FlowLogId?: String;
13135 /**
13136 * The status of the flow log (ACTIVE).
13137 */
13138 FlowLogStatus?: String;
13139 /**
13140 * The name of the flow log group.
13141 */
13142 LogGroupName?: String;
13143 /**
13144 * The ID of the resource on which the flow log was created.
13145 */
13146 ResourceId?: String;
13147 /**
13148 * The type of traffic captured for the flow log.
13149 */
13150 TrafficType?: TrafficType;
13151 /**
13152 * 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.
13153 */
13154 LogDestinationType?: LogDestinationType;
13155 /**
13156 * 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.
13157 */
13158 LogDestination?: String;
13159 /**
13160 * The format of the flow log record.
13161 */
13162 LogFormat?: String;
13163 /**
13164 * The tags for the flow log.
13165 */
13166 Tags?: TagList;
13167 /**
13168 * The maximum interval of time, in seconds, during which a flow of packets is captured and aggregated into a flow log record. When a network interface is attached to a Nitro-based instance, the aggregation interval is always 60 seconds (1 minute) or less, regardless of the specified value. Valid Values: 60 | 600
13169 */
13170 MaxAggregationInterval?: Integer;
13171 }
13172 export type FlowLogIdList = VpcFlowLogId[];
13173 export type FlowLogResourceId = string;
13174 export type FlowLogResourceIds = FlowLogResourceId[];
13175 export type FlowLogSet = FlowLog[];
13176 export type FlowLogsResourceType = "VPC"|"Subnet"|"NetworkInterface"|string;
13177 export type FpgaDeviceCount = number;
13178 export interface FpgaDeviceInfo {
13179 /**
13180 * The name of the FPGA accelerator.
13181 */
13182 Name?: FpgaDeviceName;
13183 /**
13184 * The manufacturer of the FPGA accelerator.
13185 */
13186 Manufacturer?: FpgaDeviceManufacturerName;
13187 /**
13188 * The count of FPGA accelerators for the instance type.
13189 */
13190 Count?: FpgaDeviceCount;
13191 /**
13192 * Describes the memory for the FPGA accelerator for the instance type.
13193 */
13194 MemoryInfo?: FpgaDeviceMemoryInfo;
13195 }
13196 export type FpgaDeviceInfoList = FpgaDeviceInfo[];
13197 export type FpgaDeviceManufacturerName = string;
13198 export interface FpgaDeviceMemoryInfo {
13199 /**
13200 * The size (in MiB) for the memory available to the FPGA accelerator.
13201 */
13202 SizeInMiB?: FpgaDeviceMemorySize;
13203 }
13204 export type FpgaDeviceMemorySize = number;
13205 export type FpgaDeviceName = string;
13206 export interface FpgaImage {
13207 /**
13208 * The FPGA image identifier (AFI ID).
13209 */
13210 FpgaImageId?: String;
13211 /**
13212 * The global FPGA image identifier (AGFI ID).
13213 */
13214 FpgaImageGlobalId?: String;
13215 /**
13216 * The name of the AFI.
13217 */
13218 Name?: String;
13219 /**
13220 * The description of the AFI.
13221 */
13222 Description?: String;
13223 /**
13224 * The version of the AWS Shell that was used to create the bitstream.
13225 */
13226 ShellVersion?: String;
13227 /**
13228 * Information about the PCI bus.
13229 */
13230 PciId?: PciId;
13231 /**
13232 * Information about the state of the AFI.
13233 */
13234 State?: FpgaImageState;
13235 /**
13236 * The date and time the AFI was created.
13237 */
13238 CreateTime?: DateTime;
13239 /**
13240 * The time of the most recent update to the AFI.
13241 */
13242 UpdateTime?: DateTime;
13243 /**
13244 * The AWS account ID of the AFI owner.
13245 */
13246 OwnerId?: String;
13247 /**
13248 * The alias of the AFI owner. Possible values include self, amazon, and aws-marketplace.
13249 */
13250 OwnerAlias?: String;
13251 /**
13252 * The product codes for the AFI.
13253 */
13254 ProductCodes?: ProductCodeList;
13255 /**
13256 * Any tags assigned to the AFI.
13257 */
13258 Tags?: TagList;
13259 /**
13260 * Indicates whether the AFI is public.
13261 */
13262 Public?: Boolean;
13263 /**
13264 * Indicates whether data retention support is enabled for the AFI.
13265 */
13266 DataRetentionSupport?: Boolean;
13267 }
13268 export interface FpgaImageAttribute {
13269 /**
13270 * The ID of the AFI.
13271 */
13272 FpgaImageId?: String;
13273 /**
13274 * The name of the AFI.
13275 */
13276 Name?: String;
13277 /**
13278 * The description of the AFI.
13279 */
13280 Description?: String;
13281 /**
13282 * The load permissions.
13283 */
13284 LoadPermissions?: LoadPermissionList;
13285 /**
13286 * The product codes.
13287 */
13288 ProductCodes?: ProductCodeList;
13289 }
13290 export type FpgaImageAttributeName = "description"|"name"|"loadPermission"|"productCodes"|string;
13291 export type FpgaImageId = string;
13292 export type FpgaImageIdList = FpgaImageId[];
13293 export type FpgaImageList = FpgaImage[];
13294 export interface FpgaImageState {
13295 /**
13296 * 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.
13297 */
13298 Code?: FpgaImageStateCode;
13299 /**
13300 * If the state is failed, this is the error message.
13301 */
13302 Message?: String;
13303 }
13304 export type FpgaImageStateCode = "pending"|"failed"|"available"|"unavailable"|string;
13305 export interface FpgaInfo {
13306 /**
13307 * Describes the FPGAs for the instance type.
13308 */
13309 Fpgas?: FpgaDeviceInfoList;
13310 /**
13311 * The total memory of all FPGA accelerators for the instance type.
13312 */
13313 TotalFpgaMemoryInMiB?: totalFpgaMemory;
13314 }
13315 export type FreeTierEligibleFlag = boolean;
13316 export type GatewayType = "ipsec.1"|string;
13317 export interface GetAssociatedIpv6PoolCidrsRequest {
13318 /**
13319 * The ID of the IPv6 address pool.
13320 */
13321 PoolId: Ipv6PoolEc2Id;
13322 /**
13323 * The token for the next page of results.
13324 */
13325 NextToken?: NextToken;
13326 /**
13327 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13328 */
13329 MaxResults?: Ipv6PoolMaxResults;
13330 /**
13331 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13332 */
13333 DryRun?: Boolean;
13334 }
13335 export interface GetAssociatedIpv6PoolCidrsResult {
13336 /**
13337 * Information about the IPv6 CIDR block associations.
13338 */
13339 Ipv6CidrAssociations?: Ipv6CidrAssociationSet;
13340 /**
13341 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13342 */
13343 NextToken?: String;
13344 }
13345 export interface GetCapacityReservationUsageRequest {
13346 /**
13347 * The ID of the Capacity Reservation.
13348 */
13349 CapacityReservationId: CapacityReservationId;
13350 /**
13351 * The token to retrieve the next page of results.
13352 */
13353 NextToken?: String;
13354 /**
13355 * 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. Valid range: Minimum value of 1. Maximum value of 1000.
13356 */
13357 MaxResults?: GetCapacityReservationUsageRequestMaxResults;
13358 /**
13359 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13360 */
13361 DryRun?: Boolean;
13362 }
13363 export type GetCapacityReservationUsageRequestMaxResults = number;
13364 export interface GetCapacityReservationUsageResult {
13365 /**
13366 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13367 */
13368 NextToken?: String;
13369 /**
13370 * The ID of the Capacity Reservation.
13371 */
13372 CapacityReservationId?: String;
13373 /**
13374 * The type of instance for which the Capacity Reservation reserves capacity.
13375 */
13376 InstanceType?: String;
13377 /**
13378 * The number of instances for which the Capacity Reservation reserves capacity.
13379 */
13380 TotalInstanceCount?: Integer;
13381 /**
13382 * The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
13383 */
13384 AvailableInstanceCount?: Integer;
13385 /**
13386 * 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. expired - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use. cancelled - 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.
13387 */
13388 State?: CapacityReservationState;
13389 /**
13390 * Information about the Capacity Reservation usage.
13391 */
13392 InstanceUsages?: InstanceUsageSet;
13393 }
13394 export interface GetCoipPoolUsageRequest {
13395 /**
13396 * The ID of the address pool.
13397 */
13398 PoolId: CoipPoolId;
13399 /**
13400 * The filters. The following are the possible values: coip-address-usage.allocation-id coip-address-usage.aws-account-id coip-address-usage.aws-service coip-address-usage.co-ip
13401 */
13402 Filters?: FilterList;
13403 /**
13404 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13405 */
13406 MaxResults?: CoipPoolMaxResults;
13407 /**
13408 * The token for the next page of results.
13409 */
13410 NextToken?: String;
13411 /**
13412 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13413 */
13414 DryRun?: Boolean;
13415 }
13416 export interface GetCoipPoolUsageResult {
13417 /**
13418 * The ID of the customer-owned address pool.
13419 */
13420 CoipPoolId?: String;
13421 /**
13422 * Information about the address usage.
13423 */
13424 CoipAddressUsages?: CoipAddressUsageSet;
13425 /**
13426 * The ID of the local gateway route table.
13427 */
13428 LocalGatewayRouteTableId?: String;
13429 }
13430 export interface GetConsoleOutputRequest {
13431 /**
13432 * The ID of the instance.
13433 */
13434 InstanceId: InstanceId;
13435 /**
13436 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13437 */
13438 DryRun?: Boolean;
13439 /**
13440 * When enabled, retrieves the latest console output for the instance. Default: disabled (false)
13441 */
13442 Latest?: Boolean;
13443 }
13444 export interface GetConsoleOutputResult {
13445 /**
13446 * The ID of the instance.
13447 */
13448 InstanceId?: String;
13449 /**
13450 * The console output, base64-encoded. If you are using a command line tool, the tool decodes the output for you.
13451 */
13452 Output?: String;
13453 /**
13454 * The time at which the output was last updated.
13455 */
13456 Timestamp?: DateTime;
13457 }
13458 export interface GetConsoleScreenshotRequest {
13459 /**
13460 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13461 */
13462 DryRun?: Boolean;
13463 /**
13464 * The ID of the instance.
13465 */
13466 InstanceId: InstanceId;
13467 /**
13468 * When set to true, acts as keystroke input and wakes up an instance that's in standby or "sleep" mode.
13469 */
13470 WakeUp?: Boolean;
13471 }
13472 export interface GetConsoleScreenshotResult {
13473 /**
13474 * The data that comprises the image.
13475 */
13476 ImageData?: String;
13477 /**
13478 * The ID of the instance.
13479 */
13480 InstanceId?: String;
13481 }
13482 export interface GetDefaultCreditSpecificationRequest {
13483 /**
13484 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13485 */
13486 DryRun?: Boolean;
13487 /**
13488 * The instance family.
13489 */
13490 InstanceFamily: UnlimitedSupportedInstanceFamily;
13491 }
13492 export interface GetDefaultCreditSpecificationResult {
13493 /**
13494 * The default credit option for CPU usage of the instance family.
13495 */
13496 InstanceFamilyCreditSpecification?: InstanceFamilyCreditSpecification;
13497 }
13498 export interface GetEbsDefaultKmsKeyIdRequest {
13499 /**
13500 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13501 */
13502 DryRun?: Boolean;
13503 }
13504 export interface GetEbsDefaultKmsKeyIdResult {
13505 /**
13506 * The Amazon Resource Name (ARN) of the default CMK for encryption by default.
13507 */
13508 KmsKeyId?: String;
13509 }
13510 export interface GetEbsEncryptionByDefaultRequest {
13511 /**
13512 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13513 */
13514 DryRun?: Boolean;
13515 }
13516 export interface GetEbsEncryptionByDefaultResult {
13517 /**
13518 * Indicates whether encryption by default is enabled.
13519 */
13520 EbsEncryptionByDefault?: Boolean;
13521 }
13522 export interface GetHostReservationPurchasePreviewRequest {
13523 /**
13524 * The IDs of the Dedicated Hosts with which the reservation is associated.
13525 */
13526 HostIdSet: RequestHostIdSet;
13527 /**
13528 * The offering ID of the reservation.
13529 */
13530 OfferingId: OfferingId;
13531 }
13532 export interface GetHostReservationPurchasePreviewResult {
13533 /**
13534 * The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
13535 */
13536 CurrencyCode?: CurrencyCodeValues;
13537 /**
13538 * The purchase information of the Dedicated Host reservation and the Dedicated Hosts associated with it.
13539 */
13540 Purchase?: PurchaseSet;
13541 /**
13542 * The potential total hourly price of the reservation per hour.
13543 */
13544 TotalHourlyPrice?: String;
13545 /**
13546 * The potential total upfront price. This is billed immediately.
13547 */
13548 TotalUpfrontPrice?: String;
13549 }
13550 export interface GetLaunchTemplateDataRequest {
13551 /**
13552 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13553 */
13554 DryRun?: Boolean;
13555 /**
13556 * The ID of the instance.
13557 */
13558 InstanceId: InstanceId;
13559 }
13560 export interface GetLaunchTemplateDataResult {
13561 /**
13562 * The instance data.
13563 */
13564 LaunchTemplateData?: ResponseLaunchTemplateData;
13565 }
13566 export interface GetPasswordDataRequest {
13567 /**
13568 * The ID of the Windows instance.
13569 */
13570 InstanceId: InstanceId;
13571 /**
13572 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13573 */
13574 DryRun?: Boolean;
13575 }
13576 export interface GetPasswordDataResult {
13577 /**
13578 * The ID of the Windows instance.
13579 */
13580 InstanceId?: String;
13581 /**
13582 * The password of the instance. Returns an empty string if the password is not available.
13583 */
13584 PasswordData?: String;
13585 /**
13586 * The time the data was last updated.
13587 */
13588 Timestamp?: DateTime;
13589 }
13590 export interface GetReservedInstancesExchangeQuoteRequest {
13591 /**
13592 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13593 */
13594 DryRun?: Boolean;
13595 /**
13596 * The IDs of the Convertible Reserved Instances to exchange.
13597 */
13598 ReservedInstanceIds: ReservedInstanceIdSet;
13599 /**
13600 * The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.
13601 */
13602 TargetConfigurations?: TargetConfigurationRequestSet;
13603 }
13604 export interface GetReservedInstancesExchangeQuoteResult {
13605 /**
13606 * The currency of the transaction.
13607 */
13608 CurrencyCode?: String;
13609 /**
13610 * If true, the exchange is valid. If false, the exchange cannot be completed.
13611 */
13612 IsValidExchange?: Boolean;
13613 /**
13614 * The new end date of the reservation term.
13615 */
13616 OutputReservedInstancesWillExpireAt?: DateTime;
13617 /**
13618 * The total true upfront charge for the exchange.
13619 */
13620 PaymentDue?: String;
13621 /**
13622 * The cost associated with the Reserved Instance.
13623 */
13624 ReservedInstanceValueRollup?: ReservationValue;
13625 /**
13626 * The configuration of your Convertible Reserved Instances.
13627 */
13628 ReservedInstanceValueSet?: ReservedInstanceReservationValueSet;
13629 /**
13630 * The cost associated with the Reserved Instance.
13631 */
13632 TargetConfigurationValueRollup?: ReservationValue;
13633 /**
13634 * The values of the target Convertible Reserved Instances.
13635 */
13636 TargetConfigurationValueSet?: TargetReservationValueSet;
13637 /**
13638 * Describes the reason why the exchange cannot be completed.
13639 */
13640 ValidationFailureReason?: String;
13641 }
13642 export interface GetTransitGatewayAttachmentPropagationsRequest {
13643 /**
13644 * The ID of the attachment.
13645 */
13646 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
13647 /**
13648 * One or more filters. The possible values are: transit-gateway-route-table-id - The ID of the transit gateway route table.
13649 */
13650 Filters?: FilterList;
13651 /**
13652 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13653 */
13654 MaxResults?: TransitGatewayMaxResults;
13655 /**
13656 * The token for the next page of results.
13657 */
13658 NextToken?: String;
13659 /**
13660 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13661 */
13662 DryRun?: Boolean;
13663 }
13664 export interface GetTransitGatewayAttachmentPropagationsResult {
13665 /**
13666 * Information about the propagation route tables.
13667 */
13668 TransitGatewayAttachmentPropagations?: TransitGatewayAttachmentPropagationList;
13669 /**
13670 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13671 */
13672 NextToken?: String;
13673 }
13674 export interface GetTransitGatewayMulticastDomainAssociationsRequest {
13675 /**
13676 * The ID of the transit gateway multicast domain.
13677 */
13678 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
13679 /**
13680 * One or more filters. The possible values are: resource-id - The ID of the resource. resource-type - The type of resource. The valid value is: vpc. state - The state of the subnet association. Valid values are associated | associating | disassociated | disassociating. subnet-id - The ID of the subnet. transit-gateway-attachment-id - The id of the transit gateway attachment.
13681 */
13682 Filters?: FilterList;
13683 /**
13684 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13685 */
13686 MaxResults?: TransitGatewayMaxResults;
13687 /**
13688 * The token for the next page of results.
13689 */
13690 NextToken?: String;
13691 /**
13692 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13693 */
13694 DryRun?: Boolean;
13695 }
13696 export interface GetTransitGatewayMulticastDomainAssociationsResult {
13697 /**
13698 * Information about the multicast domain associations.
13699 */
13700 MulticastDomainAssociations?: TransitGatewayMulticastDomainAssociationList;
13701 /**
13702 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13703 */
13704 NextToken?: String;
13705 }
13706 export interface GetTransitGatewayRouteTableAssociationsRequest {
13707 /**
13708 * The ID of the transit gateway route table.
13709 */
13710 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
13711 /**
13712 * 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.
13713 */
13714 Filters?: FilterList;
13715 /**
13716 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13717 */
13718 MaxResults?: TransitGatewayMaxResults;
13719 /**
13720 * The token for the next page of results.
13721 */
13722 NextToken?: String;
13723 /**
13724 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13725 */
13726 DryRun?: Boolean;
13727 }
13728 export interface GetTransitGatewayRouteTableAssociationsResult {
13729 /**
13730 * Information about the associations.
13731 */
13732 Associations?: TransitGatewayRouteTableAssociationList;
13733 /**
13734 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13735 */
13736 NextToken?: String;
13737 }
13738 export interface GetTransitGatewayRouteTablePropagationsRequest {
13739 /**
13740 * The ID of the transit gateway route table.
13741 */
13742 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
13743 /**
13744 * 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.
13745 */
13746 Filters?: FilterList;
13747 /**
13748 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
13749 */
13750 MaxResults?: TransitGatewayMaxResults;
13751 /**
13752 * The token for the next page of results.
13753 */
13754 NextToken?: String;
13755 /**
13756 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
13757 */
13758 DryRun?: Boolean;
13759 }
13760 export interface GetTransitGatewayRouteTablePropagationsResult {
13761 /**
13762 * Information about the route table propagations.
13763 */
13764 TransitGatewayRouteTablePropagations?: TransitGatewayRouteTablePropagationList;
13765 /**
13766 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
13767 */
13768 NextToken?: String;
13769 }
13770 export type GpuDeviceCount = number;
13771 export interface GpuDeviceInfo {
13772 /**
13773 * The name of the GPU accelerator.
13774 */
13775 Name?: GpuDeviceName;
13776 /**
13777 * The manufacturer of the GPU accelerator.
13778 */
13779 Manufacturer?: GpuDeviceManufacturerName;
13780 /**
13781 * The number of GPUs for the instance type.
13782 */
13783 Count?: GpuDeviceCount;
13784 /**
13785 * Describes the memory available to the GPU accelerator.
13786 */
13787 MemoryInfo?: GpuDeviceMemoryInfo;
13788 }
13789 export type GpuDeviceInfoList = GpuDeviceInfo[];
13790 export type GpuDeviceManufacturerName = string;
13791 export interface GpuDeviceMemoryInfo {
13792 /**
13793 * The size (in MiB) for the memory available to the GPU accelerator.
13794 */
13795 SizeInMiB?: GpuDeviceMemorySize;
13796 }
13797 export type GpuDeviceMemorySize = number;
13798 export type GpuDeviceName = string;
13799 export interface GpuInfo {
13800 /**
13801 * Describes the GPU accelerators for the instance type.
13802 */
13803 Gpus?: GpuDeviceInfoList;
13804 /**
13805 * The total size of the memory for the GPU accelerators for the instance type.
13806 */
13807 TotalGpuMemoryInMiB?: totalGpuMemory;
13808 }
13809 export type GroupIdStringList = String[];
13810 export interface GroupIdentifier {
13811 /**
13812 * The name of the security group.
13813 */
13814 GroupName?: String;
13815 /**
13816 * The ID of the security group.
13817 */
13818 GroupId?: String;
13819 }
13820 export type GroupIdentifierList = GroupIdentifier[];
13821 export type GroupIdentifierSet = SecurityGroupIdentifier[];
13822 export type GroupIds = SecurityGroupId[];
13823 export type GroupNameStringList = SecurityGroupName[];
13824 export type HibernationFlag = boolean;
13825 export interface HibernationOptions {
13826 /**
13827 * If this parameter is set to true, your instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
13828 */
13829 Configured?: Boolean;
13830 }
13831 export interface HibernationOptionsRequest {
13832 /**
13833 * If you set this parameter to true, your instance is enabled for hibernation. Default: false
13834 */
13835 Configured?: Boolean;
13836 }
13837 export interface HistoryRecord {
13838 /**
13839 * Information about the event.
13840 */
13841 EventInformation?: EventInformation;
13842 /**
13843 * 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.
13844 */
13845 EventType?: EventType;
13846 /**
13847 * The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
13848 */
13849 Timestamp?: DateTime;
13850 }
13851 export interface HistoryRecordEntry {
13852 /**
13853 * Information about the event.
13854 */
13855 EventInformation?: EventInformation;
13856 /**
13857 * The event type.
13858 */
13859 EventType?: FleetEventType;
13860 /**
13861 * The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
13862 */
13863 Timestamp?: DateTime;
13864 }
13865 export type HistoryRecordSet = HistoryRecordEntry[];
13866 export type HistoryRecords = HistoryRecord[];
13867 export interface Host {
13868 /**
13869 * Whether auto-placement is on or off.
13870 */
13871 AutoPlacement?: AutoPlacement;
13872 /**
13873 * The Availability Zone of the Dedicated Host.
13874 */
13875 AvailabilityZone?: String;
13876 /**
13877 * Information about the instances running on the Dedicated Host.
13878 */
13879 AvailableCapacity?: AvailableCapacity;
13880 /**
13881 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
13882 */
13883 ClientToken?: String;
13884 /**
13885 * The ID of the Dedicated Host.
13886 */
13887 HostId?: String;
13888 /**
13889 * The hardware specifications of the Dedicated Host.
13890 */
13891 HostProperties?: HostProperties;
13892 /**
13893 * The reservation ID of the Dedicated Host. This returns a null response if the Dedicated Host doesn't have an associated reservation.
13894 */
13895 HostReservationId?: String;
13896 /**
13897 * The IDs and instance type that are currently running on the Dedicated Host.
13898 */
13899 Instances?: HostInstanceList;
13900 /**
13901 * The Dedicated Host's state.
13902 */
13903 State?: AllocationState;
13904 /**
13905 * The time that the Dedicated Host was allocated.
13906 */
13907 AllocationTime?: DateTime;
13908 /**
13909 * The time that the Dedicated Host was released.
13910 */
13911 ReleaseTime?: DateTime;
13912 /**
13913 * Any tags assigned to the Dedicated Host.
13914 */
13915 Tags?: TagList;
13916 /**
13917 * Indicates whether host recovery is enabled or disabled for the Dedicated Host.
13918 */
13919 HostRecovery?: HostRecovery;
13920 /**
13921 * Indicates whether the Dedicated Host supports multiple instance types of the same instance family, or a specific instance type only. one indicates that the Dedicated Host supports multiple instance types in the instance family. off indicates that the Dedicated Host supports a single instance type only.
13922 */
13923 AllowsMultipleInstanceTypes?: AllowsMultipleInstanceTypes;
13924 /**
13925 * The ID of the AWS account that owns the Dedicated Host.
13926 */
13927 OwnerId?: String;
13928 /**
13929 * The ID of the Availability Zone in which the Dedicated Host is allocated.
13930 */
13931 AvailabilityZoneId?: String;
13932 /**
13933 * Indicates whether the Dedicated Host is in a host resource group. If memberOfServiceLinkedResourceGroup is true, the host is in a host resource group; otherwise, it is not.
13934 */
13935 MemberOfServiceLinkedResourceGroup?: Boolean;
13936 }
13937 export interface HostInstance {
13938 /**
13939 * The ID of instance that is running on the Dedicated Host.
13940 */
13941 InstanceId?: String;
13942 /**
13943 * The instance type (for example, m3.medium) of the running instance.
13944 */
13945 InstanceType?: String;
13946 /**
13947 * The ID of the AWS account that owns the instance.
13948 */
13949 OwnerId?: String;
13950 }
13951 export type HostInstanceList = HostInstance[];
13952 export type HostList = Host[];
13953 export interface HostOffering {
13954 /**
13955 * The currency of the offering.
13956 */
13957 CurrencyCode?: CurrencyCodeValues;
13958 /**
13959 * The duration of the offering (in seconds).
13960 */
13961 Duration?: Integer;
13962 /**
13963 * The hourly price of the offering.
13964 */
13965 HourlyPrice?: String;
13966 /**
13967 * The instance family of the offering.
13968 */
13969 InstanceFamily?: String;
13970 /**
13971 * The ID of the offering.
13972 */
13973 OfferingId?: String;
13974 /**
13975 * The available payment option.
13976 */
13977 PaymentOption?: PaymentOption;
13978 /**
13979 * The upfront price of the offering. Does not apply to No Upfront offerings.
13980 */
13981 UpfrontPrice?: String;
13982 }
13983 export type HostOfferingSet = HostOffering[];
13984 export interface HostProperties {
13985 /**
13986 * The number of cores on the Dedicated Host.
13987 */
13988 Cores?: Integer;
13989 /**
13990 * The instance type supported by the Dedicated Host. For example, m5.large. If the host supports multiple instance types, no instanceType is returned.
13991 */
13992 InstanceType?: String;
13993 /**
13994 * The instance family supported by the Dedicated Host. For example, m5.
13995 */
13996 InstanceFamily?: String;
13997 /**
13998 * The number of sockets on the Dedicated Host.
13999 */
14000 Sockets?: Integer;
14001 /**
14002 * The total number of vCPUs on the Dedicated Host.
14003 */
14004 TotalVCpus?: Integer;
14005 }
14006 export type HostRecovery = "on"|"off"|string;
14007 export interface HostReservation {
14008 /**
14009 * The number of Dedicated Hosts the reservation is associated with.
14010 */
14011 Count?: Integer;
14012 /**
14013 * The currency in which the upfrontPrice and hourlyPrice amounts are specified. At this time, the only supported currency is USD.
14014 */
14015 CurrencyCode?: CurrencyCodeValues;
14016 /**
14017 * The length of the reservation's term, specified in seconds. Can be 31536000 (1 year) | 94608000 (3 years).
14018 */
14019 Duration?: Integer;
14020 /**
14021 * The date and time that the reservation ends.
14022 */
14023 End?: DateTime;
14024 /**
14025 * The IDs of the Dedicated Hosts associated with the reservation.
14026 */
14027 HostIdSet?: ResponseHostIdSet;
14028 /**
14029 * The ID of the reservation that specifies the associated Dedicated Hosts.
14030 */
14031 HostReservationId?: String;
14032 /**
14033 * The hourly price of the reservation.
14034 */
14035 HourlyPrice?: String;
14036 /**
14037 * 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.
14038 */
14039 InstanceFamily?: String;
14040 /**
14041 * The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.
14042 */
14043 OfferingId?: String;
14044 /**
14045 * The payment option selected for this reservation.
14046 */
14047 PaymentOption?: PaymentOption;
14048 /**
14049 * The date and time that the reservation started.
14050 */
14051 Start?: DateTime;
14052 /**
14053 * The state of the reservation.
14054 */
14055 State?: ReservationState;
14056 /**
14057 * The upfront price of the reservation.
14058 */
14059 UpfrontPrice?: String;
14060 /**
14061 * Any tags assigned to the Dedicated Host Reservation.
14062 */
14063 Tags?: TagList;
14064 }
14065 export type HostReservationId = string;
14066 export type HostReservationIdSet = HostReservationId[];
14067 export type HostReservationSet = HostReservation[];
14068 export type HostTenancy = "dedicated"|"host"|string;
14069 export type HttpTokensState = "optional"|"required"|string;
14070 export type HypervisorType = "ovm"|"xen"|string;
14071 export type IKEVersionsList = IKEVersionsListValue[];
14072 export interface IKEVersionsListValue {
14073 /**
14074 * The IKE version.
14075 */
14076 Value?: String;
14077 }
14078 export type IKEVersionsRequestList = IKEVersionsRequestListValue[];
14079 export interface IKEVersionsRequestListValue {
14080 /**
14081 * The IKE version.
14082 */
14083 Value?: String;
14084 }
14085 export interface IamInstanceProfile {
14086 /**
14087 * The Amazon Resource Name (ARN) of the instance profile.
14088 */
14089 Arn?: String;
14090 /**
14091 * The ID of the instance profile.
14092 */
14093 Id?: String;
14094 }
14095 export interface IamInstanceProfileAssociation {
14096 /**
14097 * The ID of the association.
14098 */
14099 AssociationId?: String;
14100 /**
14101 * The ID of the instance.
14102 */
14103 InstanceId?: String;
14104 /**
14105 * The IAM instance profile.
14106 */
14107 IamInstanceProfile?: IamInstanceProfile;
14108 /**
14109 * The state of the association.
14110 */
14111 State?: IamInstanceProfileAssociationState;
14112 /**
14113 * The time the IAM instance profile was associated with the instance.
14114 */
14115 Timestamp?: DateTime;
14116 }
14117 export type IamInstanceProfileAssociationId = string;
14118 export type IamInstanceProfileAssociationSet = IamInstanceProfileAssociation[];
14119 export type IamInstanceProfileAssociationState = "associating"|"associated"|"disassociating"|"disassociated"|string;
14120 export interface IamInstanceProfileSpecification {
14121 /**
14122 * The Amazon Resource Name (ARN) of the instance profile.
14123 */
14124 Arn?: String;
14125 /**
14126 * The name of the instance profile.
14127 */
14128 Name?: String;
14129 }
14130 export interface IcmpTypeCode {
14131 /**
14132 * The ICMP code. A value of -1 means all codes for the specified ICMP type.
14133 */
14134 Code?: Integer;
14135 /**
14136 * The ICMP type. A value of -1 means all types.
14137 */
14138 Type?: Integer;
14139 }
14140 export interface IdFormat {
14141 /**
14142 * 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.
14143 */
14144 Deadline?: DateTime;
14145 /**
14146 * The type of resource.
14147 */
14148 Resource?: String;
14149 /**
14150 * Indicates whether longer IDs (17-character IDs) are enabled for the resource.
14151 */
14152 UseLongIds?: Boolean;
14153 }
14154 export type IdFormatList = IdFormat[];
14155 export interface Image {
14156 /**
14157 * The architecture of the image.
14158 */
14159 Architecture?: ArchitectureValues;
14160 /**
14161 * The date and time the image was created.
14162 */
14163 CreationDate?: String;
14164 /**
14165 * The ID of the AMI.
14166 */
14167 ImageId?: String;
14168 /**
14169 * The location of the AMI.
14170 */
14171 ImageLocation?: String;
14172 /**
14173 * The type of image.
14174 */
14175 ImageType?: ImageTypeValues;
14176 /**
14177 * 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.
14178 */
14179 Public?: Boolean;
14180 /**
14181 * The kernel associated with the image, if any. Only applicable for machine images.
14182 */
14183 KernelId?: String;
14184 /**
14185 * The AWS account ID of the image owner.
14186 */
14187 OwnerId?: String;
14188 /**
14189 * This value is set to windows for Windows AMIs; otherwise, it is blank.
14190 */
14191 Platform?: PlatformValues;
14192 /**
14193 * The platform details associated with the billing code of the AMI. For more information, see Obtaining Billing Information in the Amazon Elastic Compute Cloud User Guide.
14194 */
14195 PlatformDetails?: String;
14196 /**
14197 * The operation of the Amazon EC2 instance and the billing code that is associated with the AMI. usageOperation corresponds to the lineitem/Operation column on your AWS Cost and Usage Report and in the AWS Price List API. For the list of UsageOperation codes, see Platform Details and Usage Operation Billing Codes in the Amazon Elastic Compute Cloud User Guide.
14198 */
14199 UsageOperation?: String;
14200 /**
14201 * Any product codes associated with the AMI.
14202 */
14203 ProductCodes?: ProductCodeList;
14204 /**
14205 * The RAM disk associated with the image, if any. Only applicable for machine images.
14206 */
14207 RamdiskId?: String;
14208 /**
14209 * The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
14210 */
14211 State?: ImageState;
14212 /**
14213 * Any block device mapping entries.
14214 */
14215 BlockDeviceMappings?: BlockDeviceMappingList;
14216 /**
14217 * The description of the AMI that was provided during image creation.
14218 */
14219 Description?: String;
14220 /**
14221 * Specifies whether enhanced networking with ENA is enabled.
14222 */
14223 EnaSupport?: Boolean;
14224 /**
14225 * The hypervisor type of the image.
14226 */
14227 Hypervisor?: HypervisorType;
14228 /**
14229 * The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
14230 */
14231 ImageOwnerAlias?: String;
14232 /**
14233 * The name of the AMI that was provided during image creation.
14234 */
14235 Name?: String;
14236 /**
14237 * The device name of the root device volume (for example, /dev/sda1).
14238 */
14239 RootDeviceName?: String;
14240 /**
14241 * The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.
14242 */
14243 RootDeviceType?: DeviceType;
14244 /**
14245 * Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
14246 */
14247 SriovNetSupport?: String;
14248 /**
14249 * The reason for the state change.
14250 */
14251 StateReason?: StateReason;
14252 /**
14253 * Any tags assigned to the image.
14254 */
14255 Tags?: TagList;
14256 /**
14257 * The type of virtualization of the AMI.
14258 */
14259 VirtualizationType?: VirtualizationType;
14260 }
14261 export interface ImageAttribute {
14262 /**
14263 * The block device mapping entries.
14264 */
14265 BlockDeviceMappings?: BlockDeviceMappingList;
14266 /**
14267 * The ID of the AMI.
14268 */
14269 ImageId?: String;
14270 /**
14271 * The launch permissions.
14272 */
14273 LaunchPermissions?: LaunchPermissionList;
14274 /**
14275 * The product codes.
14276 */
14277 ProductCodes?: ProductCodeList;
14278 /**
14279 * A description for the AMI.
14280 */
14281 Description?: AttributeValue;
14282 /**
14283 * The kernel ID.
14284 */
14285 KernelId?: AttributeValue;
14286 /**
14287 * The RAM disk ID.
14288 */
14289 RamdiskId?: AttributeValue;
14290 /**
14291 * Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
14292 */
14293 SriovNetSupport?: AttributeValue;
14294 }
14295 export type ImageAttributeName = "description"|"kernel"|"ramdisk"|"launchPermission"|"productCodes"|"blockDeviceMapping"|"sriovNetSupport"|string;
14296 export interface ImageDiskContainer {
14297 /**
14298 * The description of the disk image.
14299 */
14300 Description?: String;
14301 /**
14302 * The block device mapping for the disk.
14303 */
14304 DeviceName?: String;
14305 /**
14306 * The format of the disk image being imported. Valid values: VHD | VMDK | OVA
14307 */
14308 Format?: String;
14309 /**
14310 * The ID of the EBS snapshot to be used for importing the snapshot.
14311 */
14312 SnapshotId?: SnapshotId;
14313 /**
14314 * 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://..)
14315 */
14316 Url?: String;
14317 /**
14318 * The S3 bucket for the disk image.
14319 */
14320 UserBucket?: UserBucket;
14321 }
14322 export type ImageDiskContainerList = ImageDiskContainer[];
14323 export type ImageId = string;
14324 export type ImageIdStringList = ImageId[];
14325 export type ImageList = Image[];
14326 export type ImageState = "pending"|"available"|"invalid"|"deregistered"|"transient"|"failed"|"error"|string;
14327 export type ImageTypeValues = "machine"|"kernel"|"ramdisk"|string;
14328 export interface ImportClientVpnClientCertificateRevocationListRequest {
14329 /**
14330 * The ID of the Client VPN endpoint to which the client certificate revocation list applies.
14331 */
14332 ClientVpnEndpointId: ClientVpnEndpointId;
14333 /**
14334 * The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the AWS Client VPN Administrator Guide.
14335 */
14336 CertificateRevocationList: String;
14337 /**
14338 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14339 */
14340 DryRun?: Boolean;
14341 }
14342 export interface ImportClientVpnClientCertificateRevocationListResult {
14343 /**
14344 * Returns true if the request succeeds; otherwise, it returns an error.
14345 */
14346 Return?: Boolean;
14347 }
14348 export interface ImportImageLicenseConfigurationRequest {
14349 /**
14350 * The ARN of a license configuration.
14351 */
14352 LicenseConfigurationArn?: String;
14353 }
14354 export interface ImportImageLicenseConfigurationResponse {
14355 /**
14356 * The ARN of a license configuration.
14357 */
14358 LicenseConfigurationArn?: String;
14359 }
14360 export type ImportImageLicenseSpecificationListRequest = ImportImageLicenseConfigurationRequest[];
14361 export type ImportImageLicenseSpecificationListResponse = ImportImageLicenseConfigurationResponse[];
14362 export interface ImportImageRequest {
14363 /**
14364 * The architecture of the virtual machine. Valid values: i386 | x86_64 | arm64
14365 */
14366 Architecture?: String;
14367 /**
14368 * The client-specific data.
14369 */
14370 ClientData?: ClientData;
14371 /**
14372 * The token to enable idempotency for VM import requests.
14373 */
14374 ClientToken?: String;
14375 /**
14376 * A description string for the import image task.
14377 */
14378 Description?: String;
14379 /**
14380 * Information about the disk containers.
14381 */
14382 DiskContainers?: ImageDiskContainerList;
14383 /**
14384 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14385 */
14386 DryRun?: Boolean;
14387 /**
14388 * 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.
14389 */
14390 Encrypted?: Boolean;
14391 /**
14392 * The target hypervisor platform. Valid values: xen
14393 */
14394 Hypervisor?: String;
14395 /**
14396 * An identifier for the symmetric 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. 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. 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. Amazon EBS does not support asymmetric CMKs.
14397 */
14398 KmsKeyId?: KmsKeyId;
14399 /**
14400 * The license type to be used for the Amazon Machine Image (AMI) after importing. By default, we detect the source-system operating system (OS) and apply the appropriate license. Specify AWS to replace the source-system license with an AWS license, if appropriate. Specify BYOL to retain the source-system license, if appropriate. To use BYOL, you must have existing licenses with rights to use these licenses in a third party cloud, such as AWS. For more information, see Prerequisites in the VM Import/Export User Guide.
14401 */
14402 LicenseType?: String;
14403 /**
14404 * The operating system of the virtual machine. Valid values: Windows | Linux
14405 */
14406 Platform?: String;
14407 /**
14408 * The name of the role to use when not using the default role, 'vmimport'.
14409 */
14410 RoleName?: String;
14411 /**
14412 * The ARNs of the license configurations.
14413 */
14414 LicenseSpecifications?: ImportImageLicenseSpecificationListRequest;
14415 }
14416 export interface ImportImageResult {
14417 /**
14418 * The architecture of the virtual machine.
14419 */
14420 Architecture?: String;
14421 /**
14422 * A description of the import task.
14423 */
14424 Description?: String;
14425 /**
14426 * Indicates whether the AMI is encypted.
14427 */
14428 Encrypted?: Boolean;
14429 /**
14430 * The target hypervisor of the import task.
14431 */
14432 Hypervisor?: String;
14433 /**
14434 * The ID of the Amazon Machine Image (AMI) created by the import task.
14435 */
14436 ImageId?: String;
14437 /**
14438 * The task ID of the import image task.
14439 */
14440 ImportTaskId?: String;
14441 /**
14442 * The identifier for the symmetric AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted AMI.
14443 */
14444 KmsKeyId?: String;
14445 /**
14446 * The license type of the virtual machine.
14447 */
14448 LicenseType?: String;
14449 /**
14450 * The operating system of the virtual machine.
14451 */
14452 Platform?: String;
14453 /**
14454 * The progress of the task.
14455 */
14456 Progress?: String;
14457 /**
14458 * Information about the snapshots.
14459 */
14460 SnapshotDetails?: SnapshotDetailList;
14461 /**
14462 * A brief status of the task.
14463 */
14464 Status?: String;
14465 /**
14466 * A detailed status message of the import task.
14467 */
14468 StatusMessage?: String;
14469 /**
14470 * The ARNs of the license configurations.
14471 */
14472 LicenseSpecifications?: ImportImageLicenseSpecificationListResponse;
14473 }
14474 export interface ImportImageTask {
14475 /**
14476 * The architecture of the virtual machine. Valid values: i386 | x86_64 | arm64
14477 */
14478 Architecture?: String;
14479 /**
14480 * A description of the import task.
14481 */
14482 Description?: String;
14483 /**
14484 * Indicates whether the image is encrypted.
14485 */
14486 Encrypted?: Boolean;
14487 /**
14488 * The target hypervisor for the import task. Valid values: xen
14489 */
14490 Hypervisor?: String;
14491 /**
14492 * The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
14493 */
14494 ImageId?: String;
14495 /**
14496 * The ID of the import image task.
14497 */
14498 ImportTaskId?: String;
14499 /**
14500 * The identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted image.
14501 */
14502 KmsKeyId?: String;
14503 /**
14504 * The license type of the virtual machine.
14505 */
14506 LicenseType?: String;
14507 /**
14508 * The description string for the import image task.
14509 */
14510 Platform?: String;
14511 /**
14512 * The percentage of progress of the import image task.
14513 */
14514 Progress?: String;
14515 /**
14516 * Information about the snapshots.
14517 */
14518 SnapshotDetails?: SnapshotDetailList;
14519 /**
14520 * A brief status for the import image task.
14521 */
14522 Status?: String;
14523 /**
14524 * A descriptive status message for the import image task.
14525 */
14526 StatusMessage?: String;
14527 /**
14528 * The tags for the import image task.
14529 */
14530 Tags?: TagList;
14531 /**
14532 * The ARNs of the license configurations that are associated with the import image task.
14533 */
14534 LicenseSpecifications?: ImportImageLicenseSpecificationListResponse;
14535 }
14536 export type ImportImageTaskId = string;
14537 export type ImportImageTaskList = ImportImageTask[];
14538 export interface ImportInstanceLaunchSpecification {
14539 /**
14540 * Reserved.
14541 */
14542 AdditionalInfo?: String;
14543 /**
14544 * The architecture of the instance.
14545 */
14546 Architecture?: ArchitectureValues;
14547 /**
14548 * The security group IDs.
14549 */
14550 GroupIds?: SecurityGroupIdStringList;
14551 /**
14552 * The security group names.
14553 */
14554 GroupNames?: SecurityGroupStringList;
14555 /**
14556 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
14557 */
14558 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
14559 /**
14560 * The instance type. For more information about the instance types that you can import, see Instance Types in the VM Import/Export User Guide.
14561 */
14562 InstanceType?: InstanceType;
14563 /**
14564 * Indicates whether monitoring is enabled.
14565 */
14566 Monitoring?: Boolean;
14567 /**
14568 * The placement information for the instance.
14569 */
14570 Placement?: Placement;
14571 /**
14572 * [EC2-VPC] An available IP address from the IP address range of the subnet.
14573 */
14574 PrivateIpAddress?: String;
14575 /**
14576 * [EC2-VPC] The ID of the subnet in which to launch the instance.
14577 */
14578 SubnetId?: SubnetId;
14579 /**
14580 * The Base64-encoded user data to make available to the instance.
14581 */
14582 UserData?: UserData;
14583 }
14584 export interface ImportInstanceRequest {
14585 /**
14586 * A description for the instance being imported.
14587 */
14588 Description?: String;
14589 /**
14590 * The disk image.
14591 */
14592 DiskImages?: DiskImageList;
14593 /**
14594 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14595 */
14596 DryRun?: Boolean;
14597 /**
14598 * The launch specification.
14599 */
14600 LaunchSpecification?: ImportInstanceLaunchSpecification;
14601 /**
14602 * The instance operating system.
14603 */
14604 Platform: PlatformValues;
14605 }
14606 export interface ImportInstanceResult {
14607 /**
14608 * Information about the conversion task.
14609 */
14610 ConversionTask?: ConversionTask;
14611 }
14612 export interface ImportInstanceTaskDetails {
14613 /**
14614 * A description of the task.
14615 */
14616 Description?: String;
14617 /**
14618 * The ID of the instance.
14619 */
14620 InstanceId?: String;
14621 /**
14622 * The instance operating system.
14623 */
14624 Platform?: PlatformValues;
14625 /**
14626 * The volumes.
14627 */
14628 Volumes?: ImportInstanceVolumeDetailSet;
14629 }
14630 export interface ImportInstanceVolumeDetailItem {
14631 /**
14632 * The Availability Zone where the resulting instance will reside.
14633 */
14634 AvailabilityZone?: String;
14635 /**
14636 * The number of bytes converted so far.
14637 */
14638 BytesConverted?: Long;
14639 /**
14640 * A description of the task.
14641 */
14642 Description?: String;
14643 /**
14644 * The image.
14645 */
14646 Image?: DiskImageDescription;
14647 /**
14648 * The status of the import of this particular disk image.
14649 */
14650 Status?: String;
14651 /**
14652 * The status information or errors related to the disk image.
14653 */
14654 StatusMessage?: String;
14655 /**
14656 * The volume.
14657 */
14658 Volume?: DiskImageVolumeDescription;
14659 }
14660 export type ImportInstanceVolumeDetailSet = ImportInstanceVolumeDetailItem[];
14661 export interface ImportKeyPairRequest {
14662 /**
14663 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14664 */
14665 DryRun?: Boolean;
14666 /**
14667 * A unique name for the key pair.
14668 */
14669 KeyName: String;
14670 /**
14671 * The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.
14672 */
14673 PublicKeyMaterial: _Blob;
14674 }
14675 export interface ImportKeyPairResult {
14676 /**
14677 * The MD5 public key fingerprint as specified in section 4 of RFC 4716.
14678 */
14679 KeyFingerprint?: String;
14680 /**
14681 * The key pair name you provided.
14682 */
14683 KeyName?: String;
14684 }
14685 export interface ImportSnapshotRequest {
14686 /**
14687 * The client-specific data.
14688 */
14689 ClientData?: ClientData;
14690 /**
14691 * Token to enable idempotency for VM import requests.
14692 */
14693 ClientToken?: String;
14694 /**
14695 * The description string for the import snapshot task.
14696 */
14697 Description?: String;
14698 /**
14699 * Information about the disk container.
14700 */
14701 DiskContainer?: SnapshotDiskContainer;
14702 /**
14703 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14704 */
14705 DryRun?: Boolean;
14706 /**
14707 * 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.
14708 */
14709 Encrypted?: Boolean;
14710 /**
14711 * An identifier for the symmetric 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. 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. 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. Amazon EBS does not support asymmetric CMKs.
14712 */
14713 KmsKeyId?: KmsKeyId;
14714 /**
14715 * The name of the role to use when not using the default role, 'vmimport'.
14716 */
14717 RoleName?: String;
14718 }
14719 export interface ImportSnapshotResult {
14720 /**
14721 * A description of the import snapshot task.
14722 */
14723 Description?: String;
14724 /**
14725 * The ID of the import snapshot task.
14726 */
14727 ImportTaskId?: String;
14728 /**
14729 * Information about the import snapshot task.
14730 */
14731 SnapshotTaskDetail?: SnapshotTaskDetail;
14732 }
14733 export interface ImportSnapshotTask {
14734 /**
14735 * A description of the import snapshot task.
14736 */
14737 Description?: String;
14738 /**
14739 * The ID of the import snapshot task.
14740 */
14741 ImportTaskId?: String;
14742 /**
14743 * Describes an import snapshot task.
14744 */
14745 SnapshotTaskDetail?: SnapshotTaskDetail;
14746 /**
14747 * The tags for the import snapshot task.
14748 */
14749 Tags?: TagList;
14750 }
14751 export type ImportSnapshotTaskId = string;
14752 export type ImportSnapshotTaskIdList = ImportSnapshotTaskId[];
14753 export type ImportSnapshotTaskList = ImportSnapshotTask[];
14754 export type ImportTaskId = string;
14755 export type ImportTaskIdList = ImportImageTaskId[];
14756 export interface ImportVolumeRequest {
14757 /**
14758 * The Availability Zone for the resulting EBS volume.
14759 */
14760 AvailabilityZone: String;
14761 /**
14762 * A description of the volume.
14763 */
14764 Description?: String;
14765 /**
14766 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
14767 */
14768 DryRun?: Boolean;
14769 /**
14770 * The disk image.
14771 */
14772 Image: DiskImageDetail;
14773 /**
14774 * The volume size.
14775 */
14776 Volume: VolumeDetail;
14777 }
14778 export interface ImportVolumeResult {
14779 /**
14780 * Information about the conversion task.
14781 */
14782 ConversionTask?: ConversionTask;
14783 }
14784 export interface ImportVolumeTaskDetails {
14785 /**
14786 * The Availability Zone where the resulting volume will reside.
14787 */
14788 AvailabilityZone?: String;
14789 /**
14790 * The number of bytes converted so far.
14791 */
14792 BytesConverted?: Long;
14793 /**
14794 * The description you provided when starting the import volume task.
14795 */
14796 Description?: String;
14797 /**
14798 * The image.
14799 */
14800 Image?: DiskImageDescription;
14801 /**
14802 * The volume.
14803 */
14804 Volume?: DiskImageVolumeDescription;
14805 }
14806 export interface InferenceAcceleratorInfo {
14807 /**
14808 * Describes the Inference accelerators for the instance type.
14809 */
14810 Accelerators?: InferenceDeviceInfoList;
14811 }
14812 export type InferenceDeviceCount = number;
14813 export interface InferenceDeviceInfo {
14814 /**
14815 * The number of Inference accelerators for the instance type.
14816 */
14817 Count?: InferenceDeviceCount;
14818 /**
14819 * The name of the Inference accelerator.
14820 */
14821 Name?: InferenceDeviceName;
14822 /**
14823 * The manufacturer of the Inference accelerator.
14824 */
14825 Manufacturer?: InferenceDeviceManufacturerName;
14826 }
14827 export type InferenceDeviceInfoList = InferenceDeviceInfo[];
14828 export type InferenceDeviceManufacturerName = string;
14829 export type InferenceDeviceName = string;
14830 export interface Instance {
14831 /**
14832 * The AMI launch index, which can be used to find this instance in the launch group.
14833 */
14834 AmiLaunchIndex?: Integer;
14835 /**
14836 * The ID of the AMI used to launch the instance.
14837 */
14838 ImageId?: String;
14839 /**
14840 * The ID of the instance.
14841 */
14842 InstanceId?: String;
14843 /**
14844 * The instance type.
14845 */
14846 InstanceType?: InstanceType;
14847 /**
14848 * The kernel associated with this instance, if applicable.
14849 */
14850 KernelId?: String;
14851 /**
14852 * The name of the key pair, if this instance was launched with an associated key pair.
14853 */
14854 KeyName?: String;
14855 /**
14856 * The time the instance was launched.
14857 */
14858 LaunchTime?: DateTime;
14859 /**
14860 * The monitoring for the instance.
14861 */
14862 Monitoring?: Monitoring;
14863 /**
14864 * The location where the instance launched, if applicable.
14865 */
14866 Placement?: Placement;
14867 /**
14868 * The value is Windows for Windows instances; otherwise blank.
14869 */
14870 Platform?: PlatformValues;
14871 /**
14872 * (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.
14873 */
14874 PrivateDnsName?: String;
14875 /**
14876 * The private IPv4 address assigned to the instance.
14877 */
14878 PrivateIpAddress?: String;
14879 /**
14880 * The product codes attached to this instance, if applicable.
14881 */
14882 ProductCodes?: ProductCodeList;
14883 /**
14884 * (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.
14885 */
14886 PublicDnsName?: String;
14887 /**
14888 * The public IPv4 address assigned to the instance, if applicable.
14889 */
14890 PublicIpAddress?: String;
14891 /**
14892 * The RAM disk associated with this instance, if applicable.
14893 */
14894 RamdiskId?: String;
14895 /**
14896 * The current state of the instance.
14897 */
14898 State?: InstanceState;
14899 /**
14900 * The reason for the most recent state transition. This might be an empty string.
14901 */
14902 StateTransitionReason?: String;
14903 /**
14904 * [EC2-VPC] The ID of the subnet in which the instance is running.
14905 */
14906 SubnetId?: String;
14907 /**
14908 * [EC2-VPC] The ID of the VPC in which the instance is running.
14909 */
14910 VpcId?: String;
14911 /**
14912 * The architecture of the image.
14913 */
14914 Architecture?: ArchitectureValues;
14915 /**
14916 * Any block device mapping entries for the instance.
14917 */
14918 BlockDeviceMappings?: InstanceBlockDeviceMappingList;
14919 /**
14920 * The idempotency token you provided when you launched the instance, if applicable.
14921 */
14922 ClientToken?: String;
14923 /**
14924 * 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.
14925 */
14926 EbsOptimized?: Boolean;
14927 /**
14928 * Specifies whether enhanced networking with ENA is enabled.
14929 */
14930 EnaSupport?: Boolean;
14931 /**
14932 * The hypervisor type of the instance. The value xen is used for both Xen and Nitro hypervisors.
14933 */
14934 Hypervisor?: HypervisorType;
14935 /**
14936 * The IAM instance profile associated with the instance, if applicable.
14937 */
14938 IamInstanceProfile?: IamInstanceProfile;
14939 /**
14940 * Indicates whether this is a Spot Instance or a Scheduled Instance.
14941 */
14942 InstanceLifecycle?: InstanceLifecycleType;
14943 /**
14944 * The Elastic GPU associated with the instance.
14945 */
14946 ElasticGpuAssociations?: ElasticGpuAssociationList;
14947 /**
14948 * The elastic inference accelerator associated with the instance.
14949 */
14950 ElasticInferenceAcceleratorAssociations?: ElasticInferenceAcceleratorAssociationList;
14951 /**
14952 * [EC2-VPC] The network interfaces for the instance.
14953 */
14954 NetworkInterfaces?: InstanceNetworkInterfaceList;
14955 /**
14956 * The Amazon Resource Name (ARN) of the Outpost.
14957 */
14958 OutpostArn?: String;
14959 /**
14960 * The device name of the root device volume (for example, /dev/sda1).
14961 */
14962 RootDeviceName?: String;
14963 /**
14964 * The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.
14965 */
14966 RootDeviceType?: DeviceType;
14967 /**
14968 * The security groups for the instance.
14969 */
14970 SecurityGroups?: GroupIdentifierList;
14971 /**
14972 * 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.
14973 */
14974 SourceDestCheck?: Boolean;
14975 /**
14976 * If the request is a Spot Instance request, the ID of the request.
14977 */
14978 SpotInstanceRequestId?: String;
14979 /**
14980 * Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
14981 */
14982 SriovNetSupport?: String;
14983 /**
14984 * The reason for the most recent state transition.
14985 */
14986 StateReason?: StateReason;
14987 /**
14988 * Any tags assigned to the instance.
14989 */
14990 Tags?: TagList;
14991 /**
14992 * The virtualization type of the instance.
14993 */
14994 VirtualizationType?: VirtualizationType;
14995 /**
14996 * The CPU options for the instance.
14997 */
14998 CpuOptions?: CpuOptions;
14999 /**
15000 * The ID of the Capacity Reservation.
15001 */
15002 CapacityReservationId?: String;
15003 /**
15004 * Information about the Capacity Reservation targeting option.
15005 */
15006 CapacityReservationSpecification?: CapacityReservationSpecificationResponse;
15007 /**
15008 * Indicates whether the instance is enabled for hibernation.
15009 */
15010 HibernationOptions?: HibernationOptions;
15011 /**
15012 * The license configurations.
15013 */
15014 Licenses?: LicenseList;
15015 /**
15016 * The metadata options for the instance.
15017 */
15018 MetadataOptions?: InstanceMetadataOptionsResponse;
15019 }
15020 export interface InstanceAttribute {
15021 /**
15022 * The security groups associated with the instance.
15023 */
15024 Groups?: GroupIdentifierList;
15025 /**
15026 * The block device mapping of the instance.
15027 */
15028 BlockDeviceMappings?: InstanceBlockDeviceMappingList;
15029 /**
15030 * If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.
15031 */
15032 DisableApiTermination?: AttributeBooleanValue;
15033 /**
15034 * Indicates whether enhanced networking with ENA is enabled.
15035 */
15036 EnaSupport?: AttributeBooleanValue;
15037 /**
15038 * Indicates whether the instance is optimized for Amazon EBS I/O.
15039 */
15040 EbsOptimized?: AttributeBooleanValue;
15041 /**
15042 * The ID of the instance.
15043 */
15044 InstanceId?: String;
15045 /**
15046 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
15047 */
15048 InstanceInitiatedShutdownBehavior?: AttributeValue;
15049 /**
15050 * The instance type.
15051 */
15052 InstanceType?: AttributeValue;
15053 /**
15054 * The kernel ID.
15055 */
15056 KernelId?: AttributeValue;
15057 /**
15058 * A list of product codes.
15059 */
15060 ProductCodes?: ProductCodeList;
15061 /**
15062 * The RAM disk ID.
15063 */
15064 RamdiskId?: AttributeValue;
15065 /**
15066 * The device name of the root device volume (for example, /dev/sda1).
15067 */
15068 RootDeviceName?: AttributeValue;
15069 /**
15070 * 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.
15071 */
15072 SourceDestCheck?: AttributeBooleanValue;
15073 /**
15074 * Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
15075 */
15076 SriovNetSupport?: AttributeValue;
15077 /**
15078 * The user data.
15079 */
15080 UserData?: AttributeValue;
15081 }
15082 export type InstanceAttributeName = "instanceType"|"kernel"|"ramdisk"|"userData"|"disableApiTermination"|"instanceInitiatedShutdownBehavior"|"rootDeviceName"|"blockDeviceMapping"|"productCodes"|"sourceDestCheck"|"groupSet"|"ebsOptimized"|"sriovNetSupport"|"enaSupport"|string;
15083 export interface InstanceBlockDeviceMapping {
15084 /**
15085 * The device name (for example, /dev/sdh or xvdh).
15086 */
15087 DeviceName?: String;
15088 /**
15089 * Parameters used to automatically set up EBS volumes when the instance is launched.
15090 */
15091 Ebs?: EbsInstanceBlockDevice;
15092 }
15093 export type InstanceBlockDeviceMappingList = InstanceBlockDeviceMapping[];
15094 export interface InstanceBlockDeviceMappingSpecification {
15095 /**
15096 * The device name (for example, /dev/sdh or xvdh).
15097 */
15098 DeviceName?: String;
15099 /**
15100 * Parameters used to automatically set up EBS volumes when the instance is launched.
15101 */
15102 Ebs?: EbsInstanceBlockDeviceSpecification;
15103 /**
15104 * suppress the specified device included in the block device mapping.
15105 */
15106 NoDevice?: String;
15107 /**
15108 * The virtual device name.
15109 */
15110 VirtualName?: String;
15111 }
15112 export type InstanceBlockDeviceMappingSpecificationList = InstanceBlockDeviceMappingSpecification[];
15113 export interface InstanceCapacity {
15114 /**
15115 * The number of instances that can be launched onto the Dedicated Host based on the host's available capacity.
15116 */
15117 AvailableCapacity?: Integer;
15118 /**
15119 * The instance type supported by the Dedicated Host.
15120 */
15121 InstanceType?: String;
15122 /**
15123 * The total number of instances that can be launched onto the Dedicated Host if there are no instances running on it.
15124 */
15125 TotalCapacity?: Integer;
15126 }
15127 export interface InstanceCount {
15128 /**
15129 * The number of listed Reserved Instances in the state specified by the state.
15130 */
15131 InstanceCount?: Integer;
15132 /**
15133 * The states of the listed Reserved Instances.
15134 */
15135 State?: ListingState;
15136 }
15137 export type InstanceCountList = InstanceCount[];
15138 export interface InstanceCreditSpecification {
15139 /**
15140 * The ID of the instance.
15141 */
15142 InstanceId?: String;
15143 /**
15144 * The credit option for CPU usage of the instance. Valid values are standard and unlimited.
15145 */
15146 CpuCredits?: String;
15147 }
15148 export type InstanceCreditSpecificationList = InstanceCreditSpecification[];
15149 export type InstanceCreditSpecificationListRequest = InstanceCreditSpecificationRequest[];
15150 export interface InstanceCreditSpecificationRequest {
15151 /**
15152 * The ID of the instance.
15153 */
15154 InstanceId?: InstanceId;
15155 /**
15156 * The credit option for CPU usage of the instance. Valid values are standard and unlimited.
15157 */
15158 CpuCredits?: String;
15159 }
15160 export type InstanceEventId = string;
15161 export interface InstanceExportDetails {
15162 /**
15163 * The ID of the resource being exported.
15164 */
15165 InstanceId?: String;
15166 /**
15167 * The target virtualization environment.
15168 */
15169 TargetEnvironment?: ExportEnvironment;
15170 }
15171 export interface InstanceFamilyCreditSpecification {
15172 /**
15173 * The instance family.
15174 */
15175 InstanceFamily?: UnlimitedSupportedInstanceFamily;
15176 /**
15177 * The default credit option for CPU usage of the instance family. Valid values are standard and unlimited.
15178 */
15179 CpuCredits?: String;
15180 }
15181 export type InstanceHealthStatus = "healthy"|"unhealthy"|string;
15182 export type InstanceId = string;
15183 export type InstanceIdSet = String[];
15184 export type InstanceIdStringList = InstanceId[];
15185 export type InstanceIdsSet = InstanceId[];
15186 export type InstanceInterruptionBehavior = "hibernate"|"stop"|"terminate"|string;
15187 export interface InstanceIpv6Address {
15188 /**
15189 * The IPv6 address.
15190 */
15191 Ipv6Address?: String;
15192 }
15193 export type InstanceIpv6AddressList = InstanceIpv6Address[];
15194 export type InstanceIpv6AddressListRequest = InstanceIpv6AddressRequest[];
15195 export interface InstanceIpv6AddressRequest {
15196 /**
15197 * The IPv6 address.
15198 */
15199 Ipv6Address?: String;
15200 }
15201 export type InstanceLifecycle = "spot"|"on-demand"|string;
15202 export type InstanceLifecycleType = "spot"|"scheduled"|string;
15203 export type InstanceList = Instance[];
15204 export interface InstanceMarketOptionsRequest {
15205 /**
15206 * The market type.
15207 */
15208 MarketType?: MarketType;
15209 /**
15210 * The options for Spot Instances.
15211 */
15212 SpotOptions?: SpotMarketOptions;
15213 }
15214 export type InstanceMatchCriteria = "open"|"targeted"|string;
15215 export type InstanceMetadataEndpointState = "disabled"|"enabled"|string;
15216 export interface InstanceMetadataOptionsRequest {
15217 /**
15218 * The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
15219 */
15220 HttpTokens?: HttpTokensState;
15221 /**
15222 * The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
15223 */
15224 HttpPutResponseHopLimit?: Integer;
15225 /**
15226 * This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
15227 */
15228 HttpEndpoint?: InstanceMetadataEndpointState;
15229 }
15230 export interface InstanceMetadataOptionsResponse {
15231 /**
15232 * The state of the metadata option changes. pending - The metadata options are being updated and the instance is not ready to process metadata traffic with the new selection. applied - The metadata options have been successfully applied on the instance.
15233 */
15234 State?: InstanceMetadataOptionsState;
15235 /**
15236 * The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credential always returns the version 2.0 credentials; the version 1.0 credentials are not available.
15237 */
15238 HttpTokens?: HttpTokensState;
15239 /**
15240 * The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
15241 */
15242 HttpPutResponseHopLimit?: Integer;
15243 /**
15244 * This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
15245 */
15246 HttpEndpoint?: InstanceMetadataEndpointState;
15247 }
15248 export type InstanceMetadataOptionsState = "pending"|"applied"|string;
15249 export interface InstanceMonitoring {
15250 /**
15251 * The ID of the instance.
15252 */
15253 InstanceId?: String;
15254 /**
15255 * The monitoring for the instance.
15256 */
15257 Monitoring?: Monitoring;
15258 }
15259 export type InstanceMonitoringList = InstanceMonitoring[];
15260 export interface InstanceNetworkInterface {
15261 /**
15262 * The association information for an Elastic IPv4 associated with the network interface.
15263 */
15264 Association?: InstanceNetworkInterfaceAssociation;
15265 /**
15266 * The network interface attachment.
15267 */
15268 Attachment?: InstanceNetworkInterfaceAttachment;
15269 /**
15270 * The description.
15271 */
15272 Description?: String;
15273 /**
15274 * One or more security groups.
15275 */
15276 Groups?: GroupIdentifierList;
15277 /**
15278 * One or more IPv6 addresses associated with the network interface.
15279 */
15280 Ipv6Addresses?: InstanceIpv6AddressList;
15281 /**
15282 * The MAC address.
15283 */
15284 MacAddress?: String;
15285 /**
15286 * The ID of the network interface.
15287 */
15288 NetworkInterfaceId?: String;
15289 /**
15290 * The ID of the AWS account that created the network interface.
15291 */
15292 OwnerId?: String;
15293 /**
15294 * The private DNS name.
15295 */
15296 PrivateDnsName?: String;
15297 /**
15298 * The IPv4 address of the network interface within the subnet.
15299 */
15300 PrivateIpAddress?: String;
15301 /**
15302 * One or more private IPv4 addresses associated with the network interface.
15303 */
15304 PrivateIpAddresses?: InstancePrivateIpAddressList;
15305 /**
15306 * Indicates whether to validate network traffic to or from this network interface.
15307 */
15308 SourceDestCheck?: Boolean;
15309 /**
15310 * The status of the network interface.
15311 */
15312 Status?: NetworkInterfaceStatus;
15313 /**
15314 * The ID of the subnet.
15315 */
15316 SubnetId?: String;
15317 /**
15318 * The ID of the VPC.
15319 */
15320 VpcId?: String;
15321 /**
15322 * Describes the type of network interface. Valid values: interface | efa
15323 */
15324 InterfaceType?: String;
15325 }
15326 export interface InstanceNetworkInterfaceAssociation {
15327 /**
15328 * The ID of the owner of the Elastic IP address.
15329 */
15330 IpOwnerId?: String;
15331 /**
15332 * The public DNS name.
15333 */
15334 PublicDnsName?: String;
15335 /**
15336 * The public IP address or Elastic IP address bound to the network interface.
15337 */
15338 PublicIp?: String;
15339 }
15340 export interface InstanceNetworkInterfaceAttachment {
15341 /**
15342 * The time stamp when the attachment initiated.
15343 */
15344 AttachTime?: DateTime;
15345 /**
15346 * The ID of the network interface attachment.
15347 */
15348 AttachmentId?: String;
15349 /**
15350 * Indicates whether the network interface is deleted when the instance is terminated.
15351 */
15352 DeleteOnTermination?: Boolean;
15353 /**
15354 * The index of the device on the instance for the network interface attachment.
15355 */
15356 DeviceIndex?: Integer;
15357 /**
15358 * The attachment state.
15359 */
15360 Status?: AttachmentStatus;
15361 }
15362 export type InstanceNetworkInterfaceList = InstanceNetworkInterface[];
15363 export interface InstanceNetworkInterfaceSpecification {
15364 /**
15365 * 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.
15366 */
15367 AssociatePublicIpAddress?: Boolean;
15368 /**
15369 * 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.
15370 */
15371 DeleteOnTermination?: Boolean;
15372 /**
15373 * The description of the network interface. Applies only if creating a network interface when launching an instance.
15374 */
15375 Description?: String;
15376 /**
15377 * The position of the network interface in the attachment order. A primary network interface has a device index of 0. If you specify a network interface when launching an instance, you must specify the device index.
15378 */
15379 DeviceIndex?: Integer;
15380 /**
15381 * The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
15382 */
15383 Groups?: SecurityGroupIdStringList;
15384 /**
15385 * 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.
15386 */
15387 Ipv6AddressCount?: Integer;
15388 /**
15389 * 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.
15390 */
15391 Ipv6Addresses?: InstanceIpv6AddressList;
15392 /**
15393 * The ID of the network interface. If you are creating a Spot Fleet, omit this parameter because you can’t specify a network interface ID in a launch specification.
15394 */
15395 NetworkInterfaceId?: String;
15396 /**
15397 * 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.
15398 */
15399 PrivateIpAddress?: String;
15400 /**
15401 * 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.
15402 */
15403 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
15404 /**
15405 * 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.
15406 */
15407 SecondaryPrivateIpAddressCount?: Integer;
15408 /**
15409 * The ID of the subnet associated with the network interface. Applies only if creating a network interface when launching an instance.
15410 */
15411 SubnetId?: String;
15412 /**
15413 * The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
15414 */
15415 InterfaceType?: String;
15416 }
15417 export type InstanceNetworkInterfaceSpecificationList = InstanceNetworkInterfaceSpecification[];
15418 export interface InstancePrivateIpAddress {
15419 /**
15420 * The association information for an Elastic IP address for the network interface.
15421 */
15422 Association?: InstanceNetworkInterfaceAssociation;
15423 /**
15424 * Indicates whether this IPv4 address is the primary private IP address of the network interface.
15425 */
15426 Primary?: Boolean;
15427 /**
15428 * The private IPv4 DNS name.
15429 */
15430 PrivateDnsName?: String;
15431 /**
15432 * The private IPv4 address of the network interface.
15433 */
15434 PrivateIpAddress?: String;
15435 }
15436 export type InstancePrivateIpAddressList = InstancePrivateIpAddress[];
15437 export interface InstanceSpecification {
15438 /**
15439 * The instance to specify which volumes should be snapshotted.
15440 */
15441 InstanceId?: InstanceId;
15442 /**
15443 * Excludes the root volume from being snapshotted.
15444 */
15445 ExcludeBootVolume?: Boolean;
15446 }
15447 export interface InstanceState {
15448 /**
15449 * 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.
15450 */
15451 Code?: Integer;
15452 /**
15453 * The current state of the instance.
15454 */
15455 Name?: InstanceStateName;
15456 }
15457 export interface InstanceStateChange {
15458 /**
15459 * The current state of the instance.
15460 */
15461 CurrentState?: InstanceState;
15462 /**
15463 * The ID of the instance.
15464 */
15465 InstanceId?: String;
15466 /**
15467 * The previous state of the instance.
15468 */
15469 PreviousState?: InstanceState;
15470 }
15471 export type InstanceStateChangeList = InstanceStateChange[];
15472 export type InstanceStateName = "pending"|"running"|"shutting-down"|"terminated"|"stopping"|"stopped"|string;
15473 export interface InstanceStatus {
15474 /**
15475 * The Availability Zone of the instance.
15476 */
15477 AvailabilityZone?: String;
15478 /**
15479 * The Amazon Resource Name (ARN) of the Outpost.
15480 */
15481 OutpostArn?: String;
15482 /**
15483 * Any scheduled events associated with the instance.
15484 */
15485 Events?: InstanceStatusEventList;
15486 /**
15487 * The ID of the instance.
15488 */
15489 InstanceId?: String;
15490 /**
15491 * The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.
15492 */
15493 InstanceState?: InstanceState;
15494 /**
15495 * Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.
15496 */
15497 InstanceStatus?: InstanceStatusSummary;
15498 /**
15499 * Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.
15500 */
15501 SystemStatus?: InstanceStatusSummary;
15502 }
15503 export interface InstanceStatusDetails {
15504 /**
15505 * The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.
15506 */
15507 ImpairedSince?: DateTime;
15508 /**
15509 * The type of instance status.
15510 */
15511 Name?: StatusName;
15512 /**
15513 * The status.
15514 */
15515 Status?: StatusType;
15516 }
15517 export type InstanceStatusDetailsList = InstanceStatusDetails[];
15518 export interface InstanceStatusEvent {
15519 /**
15520 * The ID of the event.
15521 */
15522 InstanceEventId?: InstanceEventId;
15523 /**
15524 * The event code.
15525 */
15526 Code?: EventCode;
15527 /**
15528 * 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].
15529 */
15530 Description?: String;
15531 /**
15532 * The latest scheduled end time for the event.
15533 */
15534 NotAfter?: DateTime;
15535 /**
15536 * The earliest scheduled start time for the event.
15537 */
15538 NotBefore?: DateTime;
15539 /**
15540 * The deadline for starting the event.
15541 */
15542 NotBeforeDeadline?: DateTime;
15543 }
15544 export type InstanceStatusEventList = InstanceStatusEvent[];
15545 export type InstanceStatusList = InstanceStatus[];
15546 export interface InstanceStatusSummary {
15547 /**
15548 * The system instance health or application instance health.
15549 */
15550 Details?: InstanceStatusDetailsList;
15551 /**
15552 * The status.
15553 */
15554 Status?: SummaryStatus;
15555 }
15556 export type InstanceStorageFlag = boolean;
15557 export interface InstanceStorageInfo {
15558 /**
15559 * The total size of the disks, in GB.
15560 */
15561 TotalSizeInGB?: DiskSize;
15562 /**
15563 * Array describing the disks that are available for the instance type.
15564 */
15565 Disks?: DiskInfoList;
15566 }
15567 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"|"t3a.nano"|"t3a.micro"|"t3a.small"|"t3a.medium"|"t3a.large"|"t3a.xlarge"|"t3a.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.8xlarge"|"r5.12xlarge"|"r5.16xlarge"|"r5.24xlarge"|"r5.metal"|"r5a.large"|"r5a.xlarge"|"r5a.2xlarge"|"r5a.4xlarge"|"r5a.8xlarge"|"r5a.12xlarge"|"r5a.16xlarge"|"r5a.24xlarge"|"r5d.large"|"r5d.xlarge"|"r5d.2xlarge"|"r5d.4xlarge"|"r5d.8xlarge"|"r5d.12xlarge"|"r5d.16xlarge"|"r5d.24xlarge"|"r5d.metal"|"r5ad.large"|"r5ad.xlarge"|"r5ad.2xlarge"|"r5ad.4xlarge"|"r5ad.8xlarge"|"r5ad.12xlarge"|"r5ad.16xlarge"|"r5ad.24xlarge"|"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"|"i3en.large"|"i3en.xlarge"|"i3en.2xlarge"|"i3en.3xlarge"|"i3en.6xlarge"|"i3en.12xlarge"|"i3en.24xlarge"|"i3en.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.12xlarge"|"c5.18xlarge"|"c5.24xlarge"|"c5.metal"|"c5d.large"|"c5d.xlarge"|"c5d.2xlarge"|"c5d.4xlarge"|"c5d.9xlarge"|"c5d.12xlarge"|"c5d.18xlarge"|"c5d.24xlarge"|"c5d.metal"|"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"|"g4dn.xlarge"|"g4dn.2xlarge"|"g4dn.4xlarge"|"g4dn.8xlarge"|"g4dn.12xlarge"|"g4dn.16xlarge"|"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.8xlarge"|"m5.12xlarge"|"m5.16xlarge"|"m5.24xlarge"|"m5.metal"|"m5a.large"|"m5a.xlarge"|"m5a.2xlarge"|"m5a.4xlarge"|"m5a.8xlarge"|"m5a.12xlarge"|"m5a.16xlarge"|"m5a.24xlarge"|"m5d.large"|"m5d.xlarge"|"m5d.2xlarge"|"m5d.4xlarge"|"m5d.8xlarge"|"m5d.12xlarge"|"m5d.16xlarge"|"m5d.24xlarge"|"m5d.metal"|"m5ad.large"|"m5ad.xlarge"|"m5ad.2xlarge"|"m5ad.4xlarge"|"m5ad.8xlarge"|"m5ad.12xlarge"|"m5ad.16xlarge"|"m5ad.24xlarge"|"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"|"u-18tb1.metal"|"u-24tb1.metal"|"a1.medium"|"a1.large"|"a1.xlarge"|"a1.2xlarge"|"a1.4xlarge"|"a1.metal"|"m5dn.large"|"m5dn.xlarge"|"m5dn.2xlarge"|"m5dn.4xlarge"|"m5dn.8xlarge"|"m5dn.12xlarge"|"m5dn.16xlarge"|"m5dn.24xlarge"|"m5n.large"|"m5n.xlarge"|"m5n.2xlarge"|"m5n.4xlarge"|"m5n.8xlarge"|"m5n.12xlarge"|"m5n.16xlarge"|"m5n.24xlarge"|"r5dn.large"|"r5dn.xlarge"|"r5dn.2xlarge"|"r5dn.4xlarge"|"r5dn.8xlarge"|"r5dn.12xlarge"|"r5dn.16xlarge"|"r5dn.24xlarge"|"r5n.large"|"r5n.xlarge"|"r5n.2xlarge"|"r5n.4xlarge"|"r5n.8xlarge"|"r5n.12xlarge"|"r5n.16xlarge"|"r5n.24xlarge"|"inf1.xlarge"|"inf1.2xlarge"|"inf1.6xlarge"|"inf1.24xlarge"|string;
15568 export type InstanceTypeHypervisor = "nitro"|"xen"|string;
15569 export interface InstanceTypeInfo {
15570 /**
15571 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
15572 */
15573 InstanceType?: InstanceType;
15574 /**
15575 * Indicates whether the instance type is a current generation.
15576 */
15577 CurrentGeneration?: CurrentGenerationFlag;
15578 /**
15579 * Indicates whether the instance type is eligible for the free tier.
15580 */
15581 FreeTierEligible?: FreeTierEligibleFlag;
15582 /**
15583 * Indicates whether the instance type is offered for spot or On-Demand.
15584 */
15585 SupportedUsageClasses?: UsageClassTypeList;
15586 /**
15587 * Indicates the supported root device types.
15588 */
15589 SupportedRootDeviceTypes?: RootDeviceTypeList;
15590 /**
15591 * Indicates whether the instance is bare metal.
15592 */
15593 BareMetal?: BareMetalFlag;
15594 /**
15595 * Indicates the hypervisor used for the instance type.
15596 */
15597 Hypervisor?: InstanceTypeHypervisor;
15598 /**
15599 * Describes the processor.
15600 */
15601 ProcessorInfo?: ProcessorInfo;
15602 /**
15603 * Describes the vCPU configurations for the instance type.
15604 */
15605 VCpuInfo?: VCpuInfo;
15606 /**
15607 * Describes the memory for the instance type.
15608 */
15609 MemoryInfo?: MemoryInfo;
15610 /**
15611 * Indicates whether instance storage is supported.
15612 */
15613 InstanceStorageSupported?: InstanceStorageFlag;
15614 /**
15615 * Describes the disks for the instance type.
15616 */
15617 InstanceStorageInfo?: InstanceStorageInfo;
15618 /**
15619 * Describes the Amazon EBS settings for the instance type.
15620 */
15621 EbsInfo?: EbsInfo;
15622 /**
15623 * Describes the network settings for the instance type.
15624 */
15625 NetworkInfo?: NetworkInfo;
15626 /**
15627 * Describes the GPU accelerator settings for the instance type.
15628 */
15629 GpuInfo?: GpuInfo;
15630 /**
15631 * Describes the FPGA accelerator settings for the instance type.
15632 */
15633 FpgaInfo?: FpgaInfo;
15634 /**
15635 * Describes the placement group settings for the instance type.
15636 */
15637 PlacementGroupInfo?: PlacementGroupInfo;
15638 /**
15639 * Describes the Inference accelerator settings for the instance type.
15640 */
15641 InferenceAcceleratorInfo?: InferenceAcceleratorInfo;
15642 /**
15643 * Indicates whether On-Demand hibernation is supported.
15644 */
15645 HibernationSupported?: HibernationFlag;
15646 /**
15647 * Indicates whether the instance type is a burstable performance instance type.
15648 */
15649 BurstablePerformanceSupported?: BurstablePerformanceFlag;
15650 /**
15651 * Indicates whether Dedicated Hosts are supported on the instance type.
15652 */
15653 DedicatedHostsSupported?: DedicatedHostFlag;
15654 /**
15655 * Indicates whether auto recovery is supported.
15656 */
15657 AutoRecoverySupported?: AutoRecoveryFlag;
15658 }
15659 export type InstanceTypeInfoList = InstanceTypeInfo[];
15660 export type InstanceTypeList = InstanceType[];
15661 export interface InstanceTypeOffering {
15662 /**
15663 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
15664 */
15665 InstanceType?: InstanceType;
15666 /**
15667 * The location type.
15668 */
15669 LocationType?: LocationType;
15670 /**
15671 * The identifier for the location. This depends on the location type. For example, if the location type is region, the location is the Region code (for example, us-east-2.)
15672 */
15673 Location?: Location;
15674 }
15675 export type InstanceTypeOfferingsList = InstanceTypeOffering[];
15676 export interface InstanceUsage {
15677 /**
15678 * The ID of the AWS account that is making use of the Capacity Reservation.
15679 */
15680 AccountId?: String;
15681 /**
15682 * The number of instances the AWS account currently has in the Capacity Reservation.
15683 */
15684 UsedInstanceCount?: Integer;
15685 }
15686 export type InstanceUsageSet = InstanceUsage[];
15687 export type Integer = number;
15688 export type InterfacePermissionType = "INSTANCE-ATTACH"|"EIP-ASSOCIATE"|string;
15689 export interface InternetGateway {
15690 /**
15691 * Any VPCs attached to the internet gateway.
15692 */
15693 Attachments?: InternetGatewayAttachmentList;
15694 /**
15695 * The ID of the internet gateway.
15696 */
15697 InternetGatewayId?: String;
15698 /**
15699 * The ID of the AWS account that owns the internet gateway.
15700 */
15701 OwnerId?: String;
15702 /**
15703 * Any tags assigned to the internet gateway.
15704 */
15705 Tags?: TagList;
15706 }
15707 export interface InternetGatewayAttachment {
15708 /**
15709 * 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.
15710 */
15711 State?: AttachmentStatus;
15712 /**
15713 * The ID of the VPC.
15714 */
15715 VpcId?: String;
15716 }
15717 export type InternetGatewayAttachmentList = InternetGatewayAttachment[];
15718 export type InternetGatewayId = string;
15719 export type InternetGatewayIdList = InternetGatewayId[];
15720 export type InternetGatewayList = InternetGateway[];
15721 export interface IpPermission {
15722 /**
15723 * 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.
15724 */
15725 FromPort?: Integer;
15726 /**
15727 * The IP protocol name (tcp, udp, icmp, icmpv6) or number (see Protocol Numbers). [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 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 icmpv6, the port range is optional; if you omit the port range, traffic for all types and codes is allowed.
15728 */
15729 IpProtocol?: String;
15730 /**
15731 * The IPv4 ranges.
15732 */
15733 IpRanges?: IpRangeList;
15734 /**
15735 * [VPC only] The IPv6 ranges.
15736 */
15737 Ipv6Ranges?: Ipv6RangeList;
15738 /**
15739 * [VPC only] The prefix list IDs for an AWS service. With outbound rules, this is the AWS service to access through a VPC endpoint from instances associated with the security group.
15740 */
15741 PrefixListIds?: PrefixListIdList;
15742 /**
15743 * 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. If you specify all ICMP/ICMPv6 types, you must specify all codes.
15744 */
15745 ToPort?: Integer;
15746 /**
15747 * The security group and AWS account ID pairs.
15748 */
15749 UserIdGroupPairs?: UserIdGroupPairList;
15750 }
15751 export type IpPermissionList = IpPermission[];
15752 export interface IpRange {
15753 /**
15754 * 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.
15755 */
15756 CidrIp?: String;
15757 /**
15758 * 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 ._-:/()#,@[]+=&amp;;{}!$*
15759 */
15760 Description?: String;
15761 }
15762 export type IpRangeList = IpRange[];
15763 export type IpRanges = String[];
15764 export type Ipv4PoolEc2Id = string;
15765 export type Ipv6Address = string;
15766 export type Ipv6AddressList = String[];
15767 export interface Ipv6CidrAssociation {
15768 /**
15769 * The IPv6 CIDR block.
15770 */
15771 Ipv6Cidr?: String;
15772 /**
15773 * The resource that's associated with the IPv6 CIDR block.
15774 */
15775 AssociatedResource?: String;
15776 }
15777 export type Ipv6CidrAssociationSet = Ipv6CidrAssociation[];
15778 export interface Ipv6CidrBlock {
15779 /**
15780 * The IPv6 CIDR block.
15781 */
15782 Ipv6CidrBlock?: String;
15783 }
15784 export type Ipv6CidrBlockSet = Ipv6CidrBlock[];
15785 export type Ipv6Flag = boolean;
15786 export interface Ipv6Pool {
15787 /**
15788 * The ID of the address pool.
15789 */
15790 PoolId?: String;
15791 /**
15792 * The description for the address pool.
15793 */
15794 Description?: String;
15795 /**
15796 * The CIDR blocks for the address pool.
15797 */
15798 PoolCidrBlocks?: PoolCidrBlocksSet;
15799 /**
15800 * Any tags for the address pool.
15801 */
15802 Tags?: TagList;
15803 }
15804 export type Ipv6PoolEc2Id = string;
15805 export type Ipv6PoolIdList = Ipv6PoolEc2Id[];
15806 export type Ipv6PoolMaxResults = number;
15807 export type Ipv6PoolSet = Ipv6Pool[];
15808 export interface Ipv6Range {
15809 /**
15810 * 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.
15811 */
15812 CidrIpv6?: String;
15813 /**
15814 * 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 ._-:/()#,@[]+=&amp;;{}!$*
15815 */
15816 Description?: String;
15817 }
15818 export type Ipv6RangeList = Ipv6Range[];
15819 export type Ipv6SupportValue = "enable"|"disable"|string;
15820 export type KernelId = string;
15821 export type KeyNameStringList = KeyPairName[];
15822 export interface KeyPair {
15823 /**
15824 * The SHA-1 digest of the DER encoded private key.
15825 */
15826 KeyFingerprint?: String;
15827 /**
15828 * An unencrypted PEM encoded RSA private key.
15829 */
15830 KeyMaterial?: SensitiveUserData;
15831 /**
15832 * The name of the key pair.
15833 */
15834 KeyName?: String;
15835 /**
15836 * The ID of the key pair.
15837 */
15838 KeyPairId?: String;
15839 }
15840 export type KeyPairId = string;
15841 export type KeyPairIdStringList = KeyPairId[];
15842 export interface KeyPairInfo {
15843 /**
15844 * The ID of the key pair.
15845 */
15846 KeyPairId?: String;
15847 /**
15848 * 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.
15849 */
15850 KeyFingerprint?: String;
15851 /**
15852 * The name of the key pair.
15853 */
15854 KeyName?: String;
15855 /**
15856 * Any tags applied to the key pair.
15857 */
15858 Tags?: TagList;
15859 }
15860 export type KeyPairList = KeyPairInfo[];
15861 export type KeyPairName = string;
15862 export type KmsKeyId = string;
15863 export interface LastError {
15864 /**
15865 * The error message for the VPC endpoint error.
15866 */
15867 Message?: String;
15868 /**
15869 * The error code for the VPC endpoint error.
15870 */
15871 Code?: String;
15872 }
15873 export interface LaunchPermission {
15874 /**
15875 * The name of the group.
15876 */
15877 Group?: PermissionGroup;
15878 /**
15879 * The AWS account ID.
15880 */
15881 UserId?: String;
15882 }
15883 export type LaunchPermissionList = LaunchPermission[];
15884 export interface LaunchPermissionModifications {
15885 /**
15886 * The AWS account ID to add to the list of launch permissions for the AMI.
15887 */
15888 Add?: LaunchPermissionList;
15889 /**
15890 * The AWS account ID to remove from the list of launch permissions for the AMI.
15891 */
15892 Remove?: LaunchPermissionList;
15893 }
15894 export interface LaunchSpecification {
15895 /**
15896 * The Base64-encoded user data for the instance.
15897 */
15898 UserData?: String;
15899 /**
15900 * 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.
15901 */
15902 SecurityGroups?: GroupIdentifierList;
15903 /**
15904 * Deprecated.
15905 */
15906 AddressingType?: String;
15907 /**
15908 * One or more block device mapping entries.
15909 */
15910 BlockDeviceMappings?: BlockDeviceMappingList;
15911 /**
15912 * 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
15913 */
15914 EbsOptimized?: Boolean;
15915 /**
15916 * The IAM instance profile.
15917 */
15918 IamInstanceProfile?: IamInstanceProfileSpecification;
15919 /**
15920 * The ID of the AMI.
15921 */
15922 ImageId?: String;
15923 /**
15924 * The instance type.
15925 */
15926 InstanceType?: InstanceType;
15927 /**
15928 * The ID of the kernel.
15929 */
15930 KernelId?: String;
15931 /**
15932 * The name of the key pair.
15933 */
15934 KeyName?: String;
15935 /**
15936 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
15937 */
15938 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
15939 /**
15940 * The placement information for the instance.
15941 */
15942 Placement?: SpotPlacement;
15943 /**
15944 * The ID of the RAM disk.
15945 */
15946 RamdiskId?: String;
15947 /**
15948 * The ID of the subnet in which to launch the instance.
15949 */
15950 SubnetId?: String;
15951 Monitoring?: RunInstancesMonitoringEnabled;
15952 }
15953 export type LaunchSpecsList = SpotFleetLaunchSpecification[];
15954 export interface LaunchTemplate {
15955 /**
15956 * The ID of the launch template.
15957 */
15958 LaunchTemplateId?: String;
15959 /**
15960 * The name of the launch template.
15961 */
15962 LaunchTemplateName?: LaunchTemplateName;
15963 /**
15964 * The time launch template was created.
15965 */
15966 CreateTime?: DateTime;
15967 /**
15968 * The principal that created the launch template.
15969 */
15970 CreatedBy?: String;
15971 /**
15972 * The version number of the default version of the launch template.
15973 */
15974 DefaultVersionNumber?: Long;
15975 /**
15976 * The version number of the latest version of the launch template.
15977 */
15978 LatestVersionNumber?: Long;
15979 /**
15980 * The tags for the launch template.
15981 */
15982 Tags?: TagList;
15983 }
15984 export interface LaunchTemplateAndOverridesResponse {
15985 /**
15986 * The launch template.
15987 */
15988 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
15989 /**
15990 * Any parameters that you specify override the same parameters in the launch template.
15991 */
15992 Overrides?: FleetLaunchTemplateOverrides;
15993 }
15994 export interface LaunchTemplateBlockDeviceMapping {
15995 /**
15996 * The device name.
15997 */
15998 DeviceName?: String;
15999 /**
16000 * The virtual device name (ephemeralN).
16001 */
16002 VirtualName?: String;
16003 /**
16004 * Information about the block device for an EBS volume.
16005 */
16006 Ebs?: LaunchTemplateEbsBlockDevice;
16007 /**
16008 * Suppresses the specified device included in the block device mapping of the AMI.
16009 */
16010 NoDevice?: String;
16011 }
16012 export type LaunchTemplateBlockDeviceMappingList = LaunchTemplateBlockDeviceMapping[];
16013 export interface LaunchTemplateBlockDeviceMappingRequest {
16014 /**
16015 * The device name (for example, /dev/sdh or xvdh).
16016 */
16017 DeviceName?: String;
16018 /**
16019 * 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.
16020 */
16021 VirtualName?: String;
16022 /**
16023 * Parameters used to automatically set up EBS volumes when the instance is launched.
16024 */
16025 Ebs?: LaunchTemplateEbsBlockDeviceRequest;
16026 /**
16027 * Suppresses the specified device included in the block device mapping of the AMI.
16028 */
16029 NoDevice?: String;
16030 }
16031 export type LaunchTemplateBlockDeviceMappingRequestList = LaunchTemplateBlockDeviceMappingRequest[];
16032 export interface LaunchTemplateCapacityReservationSpecificationRequest {
16033 /**
16034 * 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.
16035 */
16036 CapacityReservationPreference?: CapacityReservationPreference;
16037 /**
16038 * Information about the target Capacity Reservation.
16039 */
16040 CapacityReservationTarget?: CapacityReservationTarget;
16041 }
16042 export interface LaunchTemplateCapacityReservationSpecificationResponse {
16043 /**
16044 * 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.
16045 */
16046 CapacityReservationPreference?: CapacityReservationPreference;
16047 /**
16048 * Information about the target Capacity Reservation.
16049 */
16050 CapacityReservationTarget?: CapacityReservationTargetResponse;
16051 }
16052 export interface LaunchTemplateConfig {
16053 /**
16054 * The launch template.
16055 */
16056 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
16057 /**
16058 * Any parameters that you specify override the same parameters in the launch template.
16059 */
16060 Overrides?: LaunchTemplateOverridesList;
16061 }
16062 export type LaunchTemplateConfigList = LaunchTemplateConfig[];
16063 export interface LaunchTemplateCpuOptions {
16064 /**
16065 * The number of CPU cores for the instance.
16066 */
16067 CoreCount?: Integer;
16068 /**
16069 * The number of threads per CPU core.
16070 */
16071 ThreadsPerCore?: Integer;
16072 }
16073 export interface LaunchTemplateCpuOptionsRequest {
16074 /**
16075 * The number of CPU cores for the instance.
16076 */
16077 CoreCount?: Integer;
16078 /**
16079 * The number of threads per CPU core. To disable multithreading for the instance, specify a value of 1. Otherwise, specify the default value of 2.
16080 */
16081 ThreadsPerCore?: Integer;
16082 }
16083 export interface LaunchTemplateEbsBlockDevice {
16084 /**
16085 * Indicates whether the EBS volume is encrypted.
16086 */
16087 Encrypted?: Boolean;
16088 /**
16089 * Indicates whether the EBS volume is deleted on instance termination.
16090 */
16091 DeleteOnTermination?: Boolean;
16092 /**
16093 * The number of I/O operations per second (IOPS) that the volume supports.
16094 */
16095 Iops?: Integer;
16096 /**
16097 * The ARN of the AWS Key Management Service (AWS KMS) CMK used for encryption.
16098 */
16099 KmsKeyId?: KmsKeyId;
16100 /**
16101 * The ID of the snapshot.
16102 */
16103 SnapshotId?: SnapshotId;
16104 /**
16105 * The size of the volume, in GiB.
16106 */
16107 VolumeSize?: Integer;
16108 /**
16109 * The volume type.
16110 */
16111 VolumeType?: VolumeType;
16112 }
16113 export interface LaunchTemplateEbsBlockDeviceRequest {
16114 /**
16115 * 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.
16116 */
16117 Encrypted?: Boolean;
16118 /**
16119 * Indicates whether the EBS volume is deleted on instance termination.
16120 */
16121 DeleteOnTermination?: Boolean;
16122 /**
16123 * 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.
16124 */
16125 Iops?: Integer;
16126 /**
16127 * The ARN of the symmetric AWS Key Management Service (AWS KMS) CMK used for encryption.
16128 */
16129 KmsKeyId?: KmsKeyId;
16130 /**
16131 * The ID of the snapshot.
16132 */
16133 SnapshotId?: SnapshotId;
16134 /**
16135 * 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.
16136 */
16137 VolumeSize?: Integer;
16138 /**
16139 * The volume type.
16140 */
16141 VolumeType?: VolumeType;
16142 }
16143 export interface LaunchTemplateElasticInferenceAccelerator {
16144 /**
16145 * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
16146 */
16147 Type: String;
16148 /**
16149 * The number of elastic inference accelerators to attach to the instance. Default: 1
16150 */
16151 Count?: LaunchTemplateElasticInferenceAcceleratorCount;
16152 }
16153 export type LaunchTemplateElasticInferenceAcceleratorCount = number;
16154 export type LaunchTemplateElasticInferenceAcceleratorList = LaunchTemplateElasticInferenceAccelerator[];
16155 export interface LaunchTemplateElasticInferenceAcceleratorResponse {
16156 /**
16157 * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
16158 */
16159 Type?: String;
16160 /**
16161 * The number of elastic inference accelerators to attach to the instance. Default: 1
16162 */
16163 Count?: Integer;
16164 }
16165 export type LaunchTemplateElasticInferenceAcceleratorResponseList = LaunchTemplateElasticInferenceAcceleratorResponse[];
16166 export type LaunchTemplateErrorCode = "launchTemplateIdDoesNotExist"|"launchTemplateIdMalformed"|"launchTemplateNameDoesNotExist"|"launchTemplateNameMalformed"|"launchTemplateVersionDoesNotExist"|"unexpectedError"|string;
16167 export interface LaunchTemplateHibernationOptions {
16168 /**
16169 * If this parameter is set to true, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
16170 */
16171 Configured?: Boolean;
16172 }
16173 export interface LaunchTemplateHibernationOptionsRequest {
16174 /**
16175 * If you set this parameter to true, the instance is enabled for hibernation. Default: false
16176 */
16177 Configured?: Boolean;
16178 }
16179 export type LaunchTemplateHttpTokensState = "optional"|"required"|string;
16180 export interface LaunchTemplateIamInstanceProfileSpecification {
16181 /**
16182 * The Amazon Resource Name (ARN) of the instance profile.
16183 */
16184 Arn?: String;
16185 /**
16186 * The name of the instance profile.
16187 */
16188 Name?: String;
16189 }
16190 export interface LaunchTemplateIamInstanceProfileSpecificationRequest {
16191 /**
16192 * The Amazon Resource Name (ARN) of the instance profile.
16193 */
16194 Arn?: String;
16195 /**
16196 * The name of the instance profile.
16197 */
16198 Name?: String;
16199 }
16200 export type LaunchTemplateId = string;
16201 export type LaunchTemplateIdStringList = LaunchTemplateId[];
16202 export interface LaunchTemplateInstanceMarketOptions {
16203 /**
16204 * The market type.
16205 */
16206 MarketType?: MarketType;
16207 /**
16208 * The options for Spot Instances.
16209 */
16210 SpotOptions?: LaunchTemplateSpotMarketOptions;
16211 }
16212 export interface LaunchTemplateInstanceMarketOptionsRequest {
16213 /**
16214 * The market type.
16215 */
16216 MarketType?: MarketType;
16217 /**
16218 * The options for Spot Instances.
16219 */
16220 SpotOptions?: LaunchTemplateSpotMarketOptionsRequest;
16221 }
16222 export type LaunchTemplateInstanceMetadataEndpointState = "disabled"|"enabled"|string;
16223 export interface LaunchTemplateInstanceMetadataOptions {
16224 /**
16225 * The state of the metadata option changes. pending - The metadata options are being updated and the instance is not ready to process metadata traffic with the new selection. applied - The metadata options have been successfully applied on the instance.
16226 */
16227 State?: LaunchTemplateInstanceMetadataOptionsState;
16228 /**
16229 * The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
16230 */
16231 HttpTokens?: LaunchTemplateHttpTokensState;
16232 /**
16233 * The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
16234 */
16235 HttpPutResponseHopLimit?: Integer;
16236 /**
16237 * This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
16238 */
16239 HttpEndpoint?: LaunchTemplateInstanceMetadataEndpointState;
16240 }
16241 export interface LaunchTemplateInstanceMetadataOptionsRequest {
16242 /**
16243 * The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.
16244 */
16245 HttpTokens?: LaunchTemplateHttpTokensState;
16246 /**
16247 * The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. Default: 1 Possible values: Integers from 1 to 64
16248 */
16249 HttpPutResponseHopLimit?: Integer;
16250 /**
16251 * This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the default state is enabled. If you specify a value of disabled, you will not be able to access your instance metadata.
16252 */
16253 HttpEndpoint?: LaunchTemplateInstanceMetadataEndpointState;
16254 }
16255 export type LaunchTemplateInstanceMetadataOptionsState = "pending"|"applied"|string;
16256 export interface LaunchTemplateInstanceNetworkInterfaceSpecification {
16257 /**
16258 * Indicates whether to associate a public IPv4 address with eth0 for a new network interface.
16259 */
16260 AssociatePublicIpAddress?: Boolean;
16261 /**
16262 * Indicates whether the network interface is deleted when the instance is terminated.
16263 */
16264 DeleteOnTermination?: Boolean;
16265 /**
16266 * A description for the network interface.
16267 */
16268 Description?: String;
16269 /**
16270 * The device index for the network interface attachment.
16271 */
16272 DeviceIndex?: Integer;
16273 /**
16274 * The IDs of one or more security groups.
16275 */
16276 Groups?: GroupIdStringList;
16277 /**
16278 * The type of network interface.
16279 */
16280 InterfaceType?: String;
16281 /**
16282 * The number of IPv6 addresses for the network interface.
16283 */
16284 Ipv6AddressCount?: Integer;
16285 /**
16286 * The IPv6 addresses for the network interface.
16287 */
16288 Ipv6Addresses?: InstanceIpv6AddressList;
16289 /**
16290 * The ID of the network interface.
16291 */
16292 NetworkInterfaceId?: NetworkInterfaceId;
16293 /**
16294 * The primary private IPv4 address of the network interface.
16295 */
16296 PrivateIpAddress?: String;
16297 /**
16298 * One or more private IPv4 addresses.
16299 */
16300 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
16301 /**
16302 * The number of secondary private IPv4 addresses for the network interface.
16303 */
16304 SecondaryPrivateIpAddressCount?: Integer;
16305 /**
16306 * The ID of the subnet for the network interface.
16307 */
16308 SubnetId?: SubnetId;
16309 }
16310 export type LaunchTemplateInstanceNetworkInterfaceSpecificationList = LaunchTemplateInstanceNetworkInterfaceSpecification[];
16311 export interface LaunchTemplateInstanceNetworkInterfaceSpecificationRequest {
16312 /**
16313 * Associates a public IPv4 address with eth0 for a new network interface.
16314 */
16315 AssociatePublicIpAddress?: Boolean;
16316 /**
16317 * Indicates whether the network interface is deleted when the instance is terminated.
16318 */
16319 DeleteOnTermination?: Boolean;
16320 /**
16321 * A description for the network interface.
16322 */
16323 Description?: String;
16324 /**
16325 * The device index for the network interface attachment.
16326 */
16327 DeviceIndex?: Integer;
16328 /**
16329 * The IDs of one or more security groups.
16330 */
16331 Groups?: SecurityGroupIdStringList;
16332 /**
16333 * The type of network interface. To create an Elastic Fabric Adapter (EFA), specify efa. For more information, see Elastic Fabric Adapter in the Amazon Elastic Compute Cloud User Guide. If you are not creating an EFA, specify interface or omit this parameter. Valid values: interface | efa
16334 */
16335 InterfaceType?: String;
16336 /**
16337 * 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.
16338 */
16339 Ipv6AddressCount?: Integer;
16340 /**
16341 * 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.
16342 */
16343 Ipv6Addresses?: InstanceIpv6AddressListRequest;
16344 /**
16345 * The ID of the network interface.
16346 */
16347 NetworkInterfaceId?: NetworkInterfaceId;
16348 /**
16349 * The primary private IPv4 address of the network interface.
16350 */
16351 PrivateIpAddress?: String;
16352 /**
16353 * One or more private IPv4 addresses.
16354 */
16355 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
16356 /**
16357 * The number of secondary private IPv4 addresses to assign to a network interface.
16358 */
16359 SecondaryPrivateIpAddressCount?: Integer;
16360 /**
16361 * The ID of the subnet for the network interface.
16362 */
16363 SubnetId?: SubnetId;
16364 }
16365 export type LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList = LaunchTemplateInstanceNetworkInterfaceSpecificationRequest[];
16366 export interface LaunchTemplateLicenseConfiguration {
16367 /**
16368 * The Amazon Resource Name (ARN) of the license configuration.
16369 */
16370 LicenseConfigurationArn?: String;
16371 }
16372 export interface LaunchTemplateLicenseConfigurationRequest {
16373 /**
16374 * The Amazon Resource Name (ARN) of the license configuration.
16375 */
16376 LicenseConfigurationArn?: String;
16377 }
16378 export type LaunchTemplateLicenseList = LaunchTemplateLicenseConfiguration[];
16379 export type LaunchTemplateLicenseSpecificationListRequest = LaunchTemplateLicenseConfigurationRequest[];
16380 export type LaunchTemplateName = string;
16381 export type LaunchTemplateNameStringList = LaunchTemplateName[];
16382 export interface LaunchTemplateOverrides {
16383 /**
16384 * The instance type.
16385 */
16386 InstanceType?: InstanceType;
16387 /**
16388 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
16389 */
16390 SpotPrice?: String;
16391 /**
16392 * The ID of the subnet in which to launch the instances.
16393 */
16394 SubnetId?: String;
16395 /**
16396 * The Availability Zone in which to launch the instances.
16397 */
16398 AvailabilityZone?: String;
16399 /**
16400 * The number of units provided by the specified instance type.
16401 */
16402 WeightedCapacity?: Double;
16403 /**
16404 * 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.
16405 */
16406 Priority?: Double;
16407 }
16408 export type LaunchTemplateOverridesList = LaunchTemplateOverrides[];
16409 export interface LaunchTemplatePlacement {
16410 /**
16411 * The Availability Zone of the instance.
16412 */
16413 AvailabilityZone?: String;
16414 /**
16415 * The affinity setting for the instance on the Dedicated Host.
16416 */
16417 Affinity?: String;
16418 /**
16419 * The name of the placement group for the instance.
16420 */
16421 GroupName?: String;
16422 /**
16423 * The ID of the Dedicated Host for the instance.
16424 */
16425 HostId?: String;
16426 /**
16427 * 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.
16428 */
16429 Tenancy?: Tenancy;
16430 /**
16431 * Reserved for future use.
16432 */
16433 SpreadDomain?: String;
16434 /**
16435 * The ARN of the host resource group in which to launch the instances.
16436 */
16437 HostResourceGroupArn?: String;
16438 /**
16439 * The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
16440 */
16441 PartitionNumber?: Integer;
16442 }
16443 export interface LaunchTemplatePlacementRequest {
16444 /**
16445 * The Availability Zone for the instance.
16446 */
16447 AvailabilityZone?: String;
16448 /**
16449 * The affinity setting for an instance on a Dedicated Host.
16450 */
16451 Affinity?: String;
16452 /**
16453 * The name of the placement group for the instance.
16454 */
16455 GroupName?: PlacementGroupName;
16456 /**
16457 * The ID of the Dedicated Host for the instance.
16458 */
16459 HostId?: DedicatedHostId;
16460 /**
16461 * 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.
16462 */
16463 Tenancy?: Tenancy;
16464 /**
16465 * Reserved for future use.
16466 */
16467 SpreadDomain?: String;
16468 /**
16469 * The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host.
16470 */
16471 HostResourceGroupArn?: String;
16472 /**
16473 * The number of the partition the instance should launch in. Valid only if the placement group strategy is set to partition.
16474 */
16475 PartitionNumber?: Integer;
16476 }
16477 export type LaunchTemplateSet = LaunchTemplate[];
16478 export interface LaunchTemplateSpecification {
16479 /**
16480 * The ID of the launch template.
16481 */
16482 LaunchTemplateId?: LaunchTemplateId;
16483 /**
16484 * The name of the launch template.
16485 */
16486 LaunchTemplateName?: String;
16487 /**
16488 * The version number of the launch template. Default: The default version for the launch template.
16489 */
16490 Version?: String;
16491 }
16492 export interface LaunchTemplateSpotMarketOptions {
16493 /**
16494 * The maximum hourly price you're willing to pay for the Spot Instances.
16495 */
16496 MaxPrice?: String;
16497 /**
16498 * The Spot Instance request type.
16499 */
16500 SpotInstanceType?: SpotInstanceType;
16501 /**
16502 * 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).
16503 */
16504 BlockDurationMinutes?: Integer;
16505 /**
16506 * 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.
16507 */
16508 ValidUntil?: DateTime;
16509 /**
16510 * The behavior when a Spot Instance is interrupted.
16511 */
16512 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
16513 }
16514 export interface LaunchTemplateSpotMarketOptionsRequest {
16515 /**
16516 * The maximum hourly price you're willing to pay for the Spot Instances.
16517 */
16518 MaxPrice?: String;
16519 /**
16520 * The Spot Instance request type.
16521 */
16522 SpotInstanceType?: SpotInstanceType;
16523 /**
16524 * 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).
16525 */
16526 BlockDurationMinutes?: Integer;
16527 /**
16528 * 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.
16529 */
16530 ValidUntil?: DateTime;
16531 /**
16532 * The behavior when a Spot Instance is interrupted. The default is terminate.
16533 */
16534 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
16535 }
16536 export interface LaunchTemplateTagSpecification {
16537 /**
16538 * The type of resource.
16539 */
16540 ResourceType?: ResourceType;
16541 /**
16542 * The tags for the resource.
16543 */
16544 Tags?: TagList;
16545 }
16546 export type LaunchTemplateTagSpecificationList = LaunchTemplateTagSpecification[];
16547 export interface LaunchTemplateTagSpecificationRequest {
16548 /**
16549 * 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.
16550 */
16551 ResourceType?: ResourceType;
16552 /**
16553 * The tags to apply to the resource.
16554 */
16555 Tags?: TagList;
16556 }
16557 export type LaunchTemplateTagSpecificationRequestList = LaunchTemplateTagSpecificationRequest[];
16558 export interface LaunchTemplateVersion {
16559 /**
16560 * The ID of the launch template.
16561 */
16562 LaunchTemplateId?: String;
16563 /**
16564 * The name of the launch template.
16565 */
16566 LaunchTemplateName?: LaunchTemplateName;
16567 /**
16568 * The version number.
16569 */
16570 VersionNumber?: Long;
16571 /**
16572 * The description for the version.
16573 */
16574 VersionDescription?: VersionDescription;
16575 /**
16576 * The time the version was created.
16577 */
16578 CreateTime?: DateTime;
16579 /**
16580 * The principal that created the version.
16581 */
16582 CreatedBy?: String;
16583 /**
16584 * Indicates whether the version is the default version.
16585 */
16586 DefaultVersion?: Boolean;
16587 /**
16588 * Information about the launch template.
16589 */
16590 LaunchTemplateData?: ResponseLaunchTemplateData;
16591 }
16592 export type LaunchTemplateVersionSet = LaunchTemplateVersion[];
16593 export interface LaunchTemplatesMonitoring {
16594 /**
16595 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
16596 */
16597 Enabled?: Boolean;
16598 }
16599 export interface LaunchTemplatesMonitoringRequest {
16600 /**
16601 * Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
16602 */
16603 Enabled?: Boolean;
16604 }
16605 export interface LicenseConfiguration {
16606 /**
16607 * The Amazon Resource Name (ARN) of the license configuration.
16608 */
16609 LicenseConfigurationArn?: String;
16610 }
16611 export interface LicenseConfigurationRequest {
16612 /**
16613 * The Amazon Resource Name (ARN) of the license configuration.
16614 */
16615 LicenseConfigurationArn?: String;
16616 }
16617 export type LicenseList = LicenseConfiguration[];
16618 export type LicenseSpecificationListRequest = LicenseConfigurationRequest[];
16619 export type ListingState = "available"|"sold"|"cancelled"|"pending"|string;
16620 export type ListingStatus = "active"|"pending"|"cancelled"|"closed"|string;
16621 export interface LoadBalancersConfig {
16622 /**
16623 * The Classic Load Balancers.
16624 */
16625 ClassicLoadBalancersConfig?: ClassicLoadBalancersConfig;
16626 /**
16627 * The target groups.
16628 */
16629 TargetGroupsConfig?: TargetGroupsConfig;
16630 }
16631 export interface LoadPermission {
16632 /**
16633 * The AWS account ID.
16634 */
16635 UserId?: String;
16636 /**
16637 * The name of the group.
16638 */
16639 Group?: PermissionGroup;
16640 }
16641 export type LoadPermissionList = LoadPermission[];
16642 export type LoadPermissionListRequest = LoadPermissionRequest[];
16643 export interface LoadPermissionModifications {
16644 /**
16645 * The load permissions to add.
16646 */
16647 Add?: LoadPermissionListRequest;
16648 /**
16649 * The load permissions to remove.
16650 */
16651 Remove?: LoadPermissionListRequest;
16652 }
16653 export interface LoadPermissionRequest {
16654 /**
16655 * The name of the group.
16656 */
16657 Group?: PermissionGroup;
16658 /**
16659 * The AWS account ID.
16660 */
16661 UserId?: String;
16662 }
16663 export interface LocalGateway {
16664 /**
16665 * The ID of the local gateway.
16666 */
16667 LocalGatewayId?: LocalGatewayId;
16668 /**
16669 * The Amazon Resource Name (ARN) of the Outpost.
16670 */
16671 OutpostArn?: String;
16672 /**
16673 * The ID of the AWS account ID that owns the local gateway.
16674 */
16675 OwnerId?: String;
16676 /**
16677 * The state of the local gateway.
16678 */
16679 State?: String;
16680 /**
16681 * The tags assigned to the local gateway.
16682 */
16683 Tags?: TagList;
16684 }
16685 export type LocalGatewayId = string;
16686 export type LocalGatewayIdSet = LocalGatewayId[];
16687 export type LocalGatewayMaxResults = number;
16688 export interface LocalGatewayRoute {
16689 /**
16690 * The CIDR block used for destination matches.
16691 */
16692 DestinationCidrBlock?: String;
16693 /**
16694 * The ID of the virtual interface group.
16695 */
16696 LocalGatewayVirtualInterfaceGroupId?: LocalGatewayVirtualInterfaceGroupId;
16697 /**
16698 * The route type.
16699 */
16700 Type?: LocalGatewayRouteType;
16701 /**
16702 * The state of the route.
16703 */
16704 State?: LocalGatewayRouteState;
16705 /**
16706 * The ID of the local gateway route table.
16707 */
16708 LocalGatewayRouteTableId?: LocalGatewayRoutetableId;
16709 }
16710 export type LocalGatewayRouteList = LocalGatewayRoute[];
16711 export type LocalGatewayRouteState = "pending"|"active"|"blackhole"|"deleting"|"deleted"|string;
16712 export interface LocalGatewayRouteTable {
16713 /**
16714 * The ID of the local gateway route table.
16715 */
16716 LocalGatewayRouteTableId?: String;
16717 /**
16718 * The ID of the local gateway.
16719 */
16720 LocalGatewayId?: LocalGatewayId;
16721 /**
16722 * The Amazon Resource Name (ARN) of the Outpost.
16723 */
16724 OutpostArn?: String;
16725 /**
16726 * The state of the local gateway route table.
16727 */
16728 State?: String;
16729 /**
16730 * The tags assigned to the local gateway route table.
16731 */
16732 Tags?: TagList;
16733 }
16734 export type LocalGatewayRouteTableIdSet = LocalGatewayRoutetableId[];
16735 export type LocalGatewayRouteTableSet = LocalGatewayRouteTable[];
16736 export interface LocalGatewayRouteTableVirtualInterfaceGroupAssociation {
16737 /**
16738 * The ID of the association.
16739 */
16740 LocalGatewayRouteTableVirtualInterfaceGroupAssociationId?: LocalGatewayRouteTableVirtualInterfaceGroupAssociationId;
16741 /**
16742 * The ID of the virtual interface group.
16743 */
16744 LocalGatewayVirtualInterfaceGroupId?: LocalGatewayVirtualInterfaceGroupId;
16745 /**
16746 * The ID of the local gateway.
16747 */
16748 LocalGatewayId?: String;
16749 /**
16750 * The ID of the local gateway route table.
16751 */
16752 LocalGatewayRouteTableId?: LocalGatewayId;
16753 /**
16754 * The state of the association.
16755 */
16756 State?: String;
16757 /**
16758 * The tags assigned to the association.
16759 */
16760 Tags?: TagList;
16761 }
16762 export type LocalGatewayRouteTableVirtualInterfaceGroupAssociationId = string;
16763 export type LocalGatewayRouteTableVirtualInterfaceGroupAssociationIdSet = LocalGatewayRouteTableVirtualInterfaceGroupAssociationId[];
16764 export type LocalGatewayRouteTableVirtualInterfaceGroupAssociationSet = LocalGatewayRouteTableVirtualInterfaceGroupAssociation[];
16765 export interface LocalGatewayRouteTableVpcAssociation {
16766 /**
16767 * The ID of the association.
16768 */
16769 LocalGatewayRouteTableVpcAssociationId?: LocalGatewayRouteTableVpcAssociationId;
16770 /**
16771 * The ID of the local gateway route table.
16772 */
16773 LocalGatewayRouteTableId?: String;
16774 /**
16775 * The ID of the local gateway.
16776 */
16777 LocalGatewayId?: String;
16778 /**
16779 * The ID of the VPC.
16780 */
16781 VpcId?: String;
16782 /**
16783 * The state of the association.
16784 */
16785 State?: String;
16786 /**
16787 * The tags assigned to the association.
16788 */
16789 Tags?: TagList;
16790 }
16791 export type LocalGatewayRouteTableVpcAssociationId = string;
16792 export type LocalGatewayRouteTableVpcAssociationIdSet = LocalGatewayRouteTableVpcAssociationId[];
16793 export type LocalGatewayRouteTableVpcAssociationSet = LocalGatewayRouteTableVpcAssociation[];
16794 export type LocalGatewayRouteType = "static"|"propagated"|string;
16795 export type LocalGatewayRoutetableId = string;
16796 export type LocalGatewaySet = LocalGateway[];
16797 export interface LocalGatewayVirtualInterface {
16798 /**
16799 * The ID of the virtual interface.
16800 */
16801 LocalGatewayVirtualInterfaceId?: LocalGatewayVirtualInterfaceId;
16802 /**
16803 * The ID of the local gateway.
16804 */
16805 LocalGatewayId?: String;
16806 /**
16807 * The ID of the VLAN.
16808 */
16809 Vlan?: Integer;
16810 /**
16811 * The local address.
16812 */
16813 LocalAddress?: String;
16814 /**
16815 * The peer address.
16816 */
16817 PeerAddress?: String;
16818 /**
16819 * The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local gateway.
16820 */
16821 LocalBgpAsn?: Integer;
16822 /**
16823 * The peer BGP ASN.
16824 */
16825 PeerBgpAsn?: Integer;
16826 /**
16827 * The tags assigned to the virtual interface.
16828 */
16829 Tags?: TagList;
16830 }
16831 export interface LocalGatewayVirtualInterfaceGroup {
16832 /**
16833 * The ID of the virtual interface group.
16834 */
16835 LocalGatewayVirtualInterfaceGroupId?: LocalGatewayVirtualInterfaceGroupId;
16836 /**
16837 * The IDs of the virtual interfaces.
16838 */
16839 LocalGatewayVirtualInterfaceIds?: LocalGatewayVirtualInterfaceIdSet;
16840 /**
16841 * The ID of the local gateway.
16842 */
16843 LocalGatewayId?: String;
16844 /**
16845 * The tags assigned to the virtual interface group.
16846 */
16847 Tags?: TagList;
16848 }
16849 export type LocalGatewayVirtualInterfaceGroupId = string;
16850 export type LocalGatewayVirtualInterfaceGroupIdSet = LocalGatewayVirtualInterfaceGroupId[];
16851 export type LocalGatewayVirtualInterfaceGroupSet = LocalGatewayVirtualInterfaceGroup[];
16852 export type LocalGatewayVirtualInterfaceId = string;
16853 export type LocalGatewayVirtualInterfaceIdSet = LocalGatewayVirtualInterfaceId[];
16854 export type LocalGatewayVirtualInterfaceSet = LocalGatewayVirtualInterface[];
16855 export type Location = string;
16856 export type LocationType = "region"|"availability-zone"|"availability-zone-id"|string;
16857 export type LogDestinationType = "cloud-watch-logs"|"s3"|string;
16858 export type Long = number;
16859 export type MarketType = "spot"|string;
16860 export type MaxIpv4AddrPerInterface = number;
16861 export type MaxIpv6AddrPerInterface = number;
16862 export type MaxNetworkInterfaces = number;
16863 export type MaxResults = number;
16864 export type MembershipType = "static"|"igmp"|string;
16865 export interface MemoryInfo {
16866 /**
16867 * Size of the memory, in MiB.
16868 */
16869 SizeInMiB?: MemorySize;
16870 }
16871 export type MemorySize = number;
16872 export type MillisecondDateTime = Date;
16873 export interface ModifyAvailabilityZoneGroupRequest {
16874 /**
16875 * The name of the Availability Zone Group.
16876 */
16877 GroupName: String;
16878 /**
16879 * Indicates whether to enable or disable membership. The valid values are opted-in. You must contact AWS Support to disable an Availability Zone group.
16880 */
16881 OptInStatus: ModifyAvailabilityZoneOptInStatus;
16882 /**
16883 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
16884 */
16885 DryRun?: Boolean;
16886 }
16887 export interface ModifyAvailabilityZoneGroupResult {
16888 /**
16889 * Is true if the request succeeds, and an error otherwise.
16890 */
16891 Return?: Boolean;
16892 }
16893 export type ModifyAvailabilityZoneOptInStatus = "opted-in"|"not-opted-in"|string;
16894 export interface ModifyCapacityReservationRequest {
16895 /**
16896 * The ID of the Capacity Reservation.
16897 */
16898 CapacityReservationId: CapacityReservationId;
16899 /**
16900 * The number of instances for which to reserve capacity.
16901 */
16902 InstanceCount?: Integer;
16903 /**
16904 * 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.
16905 */
16906 EndDate?: DateTime;
16907 /**
16908 * 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.
16909 */
16910 EndDateType?: EndDateType;
16911 /**
16912 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
16913 */
16914 DryRun?: Boolean;
16915 }
16916 export interface ModifyCapacityReservationResult {
16917 /**
16918 * Returns true if the request succeeds; otherwise, it returns an error.
16919 */
16920 Return?: Boolean;
16921 }
16922 export interface ModifyClientVpnEndpointRequest {
16923 /**
16924 * The ID of the Client VPN endpoint to modify.
16925 */
16926 ClientVpnEndpointId: ClientVpnEndpointId;
16927 /**
16928 * The ARN of the server certificate to be used. The server certificate must be provisioned in AWS Certificate Manager (ACM).
16929 */
16930 ServerCertificateArn?: String;
16931 /**
16932 * 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
16933 */
16934 ConnectionLogOptions?: ConnectionLogOptions;
16935 /**
16936 * Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have up to two DNS servers.
16937 */
16938 DnsServers?: DnsServersOptionsModifyStructure;
16939 /**
16940 * The port number to assign to the Client VPN endpoint for TCP and UDP traffic. Valid Values: 443 | 1194 Default Value: 443
16941 */
16942 VpnPort?: Integer;
16943 /**
16944 * A brief description of the Client VPN endpoint.
16945 */
16946 Description?: String;
16947 /**
16948 * Indicates whether the VPN is split-tunnel. For information about split-tunnel VPN endpoints, see Split-Tunnel AWS Client VPN Endpoint in the AWS Client VPN Administrator Guide.
16949 */
16950 SplitTunnel?: Boolean;
16951 /**
16952 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
16953 */
16954 DryRun?: Boolean;
16955 /**
16956 * The IDs of one or more security groups to apply to the target network.
16957 */
16958 SecurityGroupIds?: ClientVpnSecurityGroupIdSet;
16959 /**
16960 * The ID of the VPC to associate with the Client VPN endpoint.
16961 */
16962 VpcId?: VpcId;
16963 }
16964 export interface ModifyClientVpnEndpointResult {
16965 /**
16966 * Returns true if the request succeeds; otherwise, it returns an error.
16967 */
16968 Return?: Boolean;
16969 }
16970 export interface ModifyDefaultCreditSpecificationRequest {
16971 /**
16972 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
16973 */
16974 DryRun?: Boolean;
16975 /**
16976 * The instance family.
16977 */
16978 InstanceFamily: UnlimitedSupportedInstanceFamily;
16979 /**
16980 * The credit option for CPU usage of the instance family. Valid Values: standard | unlimited
16981 */
16982 CpuCredits: String;
16983 }
16984 export interface ModifyDefaultCreditSpecificationResult {
16985 /**
16986 * The default credit option for CPU usage of the instance family.
16987 */
16988 InstanceFamilyCreditSpecification?: InstanceFamilyCreditSpecification;
16989 }
16990 export interface ModifyEbsDefaultKmsKeyIdRequest {
16991 /**
16992 * The identifier of the AWS Key Management Service (AWS KMS) customer master key (CMK) to use for Amazon EBS encryption. If this parameter is not specified, your AWS managed CMK for EBS is used. If KmsKeyId is specified, the encrypted state must be true. You can specify the CMK using any of the following: Key ID. For example, key/1234abcd-12ab-34cd-56ef-1234567890ab. Key alias. For example, alias/ExampleAlias. Key ARN. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS authenticates the CMK asynchronously. Therefore, if you specify an ID, alias, or ARN that is not valid, the action can appear to complete, but eventually fails. Amazon EBS does not support asymmetric CMKs.
16993 */
16994 KmsKeyId: KmsKeyId;
16995 /**
16996 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
16997 */
16998 DryRun?: Boolean;
16999 }
17000 export interface ModifyEbsDefaultKmsKeyIdResult {
17001 /**
17002 * The Amazon Resource Name (ARN) of the default CMK for encryption by default.
17003 */
17004 KmsKeyId?: String;
17005 }
17006 export interface ModifyFleetRequest {
17007 /**
17008 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17009 */
17010 DryRun?: Boolean;
17011 /**
17012 * 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.
17013 */
17014 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
17015 /**
17016 * The ID of the EC2 Fleet.
17017 */
17018 FleetId: FleetId;
17019 /**
17020 * The size of the EC2 Fleet.
17021 */
17022 TargetCapacitySpecification: TargetCapacitySpecificationRequest;
17023 }
17024 export interface ModifyFleetResult {
17025 /**
17026 * Is true if the request succeeds, and an error otherwise.
17027 */
17028 Return?: Boolean;
17029 }
17030 export interface ModifyFpgaImageAttributeRequest {
17031 /**
17032 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17033 */
17034 DryRun?: Boolean;
17035 /**
17036 * The ID of the AFI.
17037 */
17038 FpgaImageId: FpgaImageId;
17039 /**
17040 * The name of the attribute.
17041 */
17042 Attribute?: FpgaImageAttributeName;
17043 /**
17044 * The operation type.
17045 */
17046 OperationType?: OperationType;
17047 /**
17048 * The AWS account IDs. This parameter is valid only when modifying the loadPermission attribute.
17049 */
17050 UserIds?: UserIdStringList;
17051 /**
17052 * The user groups. This parameter is valid only when modifying the loadPermission attribute.
17053 */
17054 UserGroups?: UserGroupStringList;
17055 /**
17056 * The 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.
17057 */
17058 ProductCodes?: ProductCodeStringList;
17059 /**
17060 * The load permission for the AFI.
17061 */
17062 LoadPermission?: LoadPermissionModifications;
17063 /**
17064 * A description for the AFI.
17065 */
17066 Description?: String;
17067 /**
17068 * A name for the AFI.
17069 */
17070 Name?: String;
17071 }
17072 export interface ModifyFpgaImageAttributeResult {
17073 /**
17074 * Information about the attribute.
17075 */
17076 FpgaImageAttribute?: FpgaImageAttribute;
17077 }
17078 export interface ModifyHostsRequest {
17079 /**
17080 * Specify whether to enable or disable auto-placement.
17081 */
17082 AutoPlacement?: AutoPlacement;
17083 /**
17084 * The IDs of the Dedicated Hosts to modify.
17085 */
17086 HostIds: RequestHostIdList;
17087 /**
17088 * Indicates whether to enable or disable host recovery for the Dedicated Host. For more information, see Host Recovery in the Amazon Elastic Compute Cloud User Guide.
17089 */
17090 HostRecovery?: HostRecovery;
17091 /**
17092 * Specifies the instance type to be supported by the Dedicated Host. Specify this parameter to modify a Dedicated Host to support only a specific instance type. If you want to modify a Dedicated Host to support multiple instance types in its current instance family, omit this parameter and specify InstanceFamily instead. You cannot specify InstanceType and InstanceFamily in the same request.
17093 */
17094 InstanceType?: String;
17095 /**
17096 * Specifies the instance family to be supported by the Dedicated Host. Specify this parameter to modify a Dedicated Host to support multiple instance types within its current instance family. If you want to modify a Dedicated Host to support a specific instance type only, omit this parameter and specify InstanceType instead. You cannot specify InstanceFamily and InstanceType in the same request.
17097 */
17098 InstanceFamily?: String;
17099 }
17100 export interface ModifyHostsResult {
17101 /**
17102 * The IDs of the Dedicated Hosts that were successfully modified.
17103 */
17104 Successful?: ResponseHostIdList;
17105 /**
17106 * The IDs of the Dedicated Hosts that could not be modified. Check whether the setting you requested can be used.
17107 */
17108 Unsuccessful?: UnsuccessfulItemList;
17109 }
17110 export interface ModifyIdFormatRequest {
17111 /**
17112 * 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.
17113 */
17114 Resource: String;
17115 /**
17116 * Indicate whether the resource should use longer IDs (17-character IDs).
17117 */
17118 UseLongIds: Boolean;
17119 }
17120 export interface ModifyIdentityIdFormatRequest {
17121 /**
17122 * 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.
17123 */
17124 PrincipalArn: String;
17125 /**
17126 * 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.
17127 */
17128 Resource: String;
17129 /**
17130 * Indicates whether the resource should use longer IDs (17-character IDs)
17131 */
17132 UseLongIds: Boolean;
17133 }
17134 export interface ModifyImageAttributeRequest {
17135 /**
17136 * The name of the attribute to modify. The valid values are description, launchPermission, and productCodes.
17137 */
17138 Attribute?: String;
17139 /**
17140 * A new description for the AMI.
17141 */
17142 Description?: AttributeValue;
17143 /**
17144 * The ID of the AMI.
17145 */
17146 ImageId: ImageId;
17147 /**
17148 * A new launch permission for the AMI.
17149 */
17150 LaunchPermission?: LaunchPermissionModifications;
17151 /**
17152 * The operation type. This parameter can be used only when the Attribute parameter is launchPermission.
17153 */
17154 OperationType?: OperationType;
17155 /**
17156 * The DevPay product codes. After you add a product code to an AMI, it can't be removed.
17157 */
17158 ProductCodes?: ProductCodeStringList;
17159 /**
17160 * The user groups. This parameter can be used only when the Attribute parameter is launchPermission.
17161 */
17162 UserGroups?: UserGroupStringList;
17163 /**
17164 * The AWS account IDs. This parameter can be used only when the Attribute parameter is launchPermission.
17165 */
17166 UserIds?: UserIdStringList;
17167 /**
17168 * The value of the attribute being modified. This parameter can be used only when the Attribute parameter is description or productCodes.
17169 */
17170 Value?: String;
17171 /**
17172 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17173 */
17174 DryRun?: Boolean;
17175 }
17176 export interface ModifyInstanceAttributeRequest {
17177 /**
17178 * 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.
17179 */
17180 SourceDestCheck?: AttributeBooleanValue;
17181 /**
17182 * The name of the attribute.
17183 */
17184 Attribute?: InstanceAttributeName;
17185 /**
17186 * 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.
17187 */
17188 BlockDeviceMappings?: InstanceBlockDeviceMappingSpecificationList;
17189 /**
17190 * 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.
17191 */
17192 DisableApiTermination?: AttributeBooleanValue;
17193 /**
17194 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17195 */
17196 DryRun?: Boolean;
17197 /**
17198 * 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.
17199 */
17200 EbsOptimized?: AttributeBooleanValue;
17201 /**
17202 * 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.
17203 */
17204 EnaSupport?: AttributeBooleanValue;
17205 /**
17206 * [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.
17207 */
17208 Groups?: GroupIdStringList;
17209 /**
17210 * The ID of the instance.
17211 */
17212 InstanceId: InstanceId;
17213 /**
17214 * Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
17215 */
17216 InstanceInitiatedShutdownBehavior?: AttributeValue;
17217 /**
17218 * 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.
17219 */
17220 InstanceType?: AttributeValue;
17221 /**
17222 * 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.
17223 */
17224 Kernel?: AttributeValue;
17225 /**
17226 * 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.
17227 */
17228 Ramdisk?: AttributeValue;
17229 /**
17230 * 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.
17231 */
17232 SriovNetSupport?: AttributeValue;
17233 /**
17234 * 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.
17235 */
17236 UserData?: BlobAttributeValue;
17237 /**
17238 * A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.
17239 */
17240 Value?: String;
17241 }
17242 export interface ModifyInstanceCapacityReservationAttributesRequest {
17243 /**
17244 * The ID of the instance to be modified.
17245 */
17246 InstanceId: InstanceId;
17247 /**
17248 * Information about the Capacity Reservation targeting option.
17249 */
17250 CapacityReservationSpecification: CapacityReservationSpecification;
17251 /**
17252 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17253 */
17254 DryRun?: Boolean;
17255 }
17256 export interface ModifyInstanceCapacityReservationAttributesResult {
17257 /**
17258 * Returns true if the request succeeds; otherwise, it returns an error.
17259 */
17260 Return?: Boolean;
17261 }
17262 export interface ModifyInstanceCreditSpecificationRequest {
17263 /**
17264 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17265 */
17266 DryRun?: Boolean;
17267 /**
17268 * A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.
17269 */
17270 ClientToken?: String;
17271 /**
17272 * Information about the credit option for CPU usage.
17273 */
17274 InstanceCreditSpecifications: InstanceCreditSpecificationListRequest;
17275 }
17276 export interface ModifyInstanceCreditSpecificationResult {
17277 /**
17278 * Information about the instances whose credit option for CPU usage was successfully modified.
17279 */
17280 SuccessfulInstanceCreditSpecifications?: SuccessfulInstanceCreditSpecificationSet;
17281 /**
17282 * Information about the instances whose credit option for CPU usage was not modified.
17283 */
17284 UnsuccessfulInstanceCreditSpecifications?: UnsuccessfulInstanceCreditSpecificationSet;
17285 }
17286 export interface ModifyInstanceEventStartTimeRequest {
17287 /**
17288 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17289 */
17290 DryRun?: Boolean;
17291 /**
17292 * The ID of the instance with the scheduled event.
17293 */
17294 InstanceId: InstanceId;
17295 /**
17296 * The ID of the event whose date and time you are modifying.
17297 */
17298 InstanceEventId: String;
17299 /**
17300 * The new date and time when the event will take place.
17301 */
17302 NotBefore: DateTime;
17303 }
17304 export interface ModifyInstanceEventStartTimeResult {
17305 Event?: InstanceStatusEvent;
17306 }
17307 export interface ModifyInstanceMetadataOptionsRequest {
17308 /**
17309 * The ID of the instance.
17310 */
17311 InstanceId: InstanceId;
17312 /**
17313 * The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional. If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned. If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credential always returns the version 2.0 credentials; the version 1.0 credentials are not available.
17314 */
17315 HttpTokens?: HttpTokensState;
17316 /**
17317 * The desired HTTP PUT response hop limit for instance metadata requests. The larger the number, the further instance metadata requests can travel. If no parameter is specified, the existing state is maintained. Possible values: Integers from 1 to 64
17318 */
17319 HttpPutResponseHopLimit?: Integer;
17320 /**
17321 * This parameter enables or disables the HTTP metadata endpoint on your instances. If the parameter is not specified, the existing state is maintained. If you specify a value of disabled, you will not be able to access your instance metadata.
17322 */
17323 HttpEndpoint?: InstanceMetadataEndpointState;
17324 /**
17325 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17326 */
17327 DryRun?: Boolean;
17328 }
17329 export interface ModifyInstanceMetadataOptionsResult {
17330 /**
17331 * The ID of the instance.
17332 */
17333 InstanceId?: String;
17334 /**
17335 * The metadata options for the instance.
17336 */
17337 InstanceMetadataOptions?: InstanceMetadataOptionsResponse;
17338 }
17339 export interface ModifyInstancePlacementRequest {
17340 /**
17341 * The affinity setting for the instance.
17342 */
17343 Affinity?: Affinity;
17344 /**
17345 * 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 ("").
17346 */
17347 GroupName?: PlacementGroupName;
17348 /**
17349 * The ID of the Dedicated Host with which to associate the instance.
17350 */
17351 HostId?: DedicatedHostId;
17352 /**
17353 * The ID of the instance that you are modifying.
17354 */
17355 InstanceId: InstanceId;
17356 /**
17357 * The tenancy for the instance.
17358 */
17359 Tenancy?: HostTenancy;
17360 /**
17361 * Reserved for future use.
17362 */
17363 PartitionNumber?: Integer;
17364 /**
17365 * The ARN of the host resource group in which to place the instance.
17366 */
17367 HostResourceGroupArn?: String;
17368 }
17369 export interface ModifyInstancePlacementResult {
17370 /**
17371 * Is true if the request succeeds, and an error otherwise.
17372 */
17373 Return?: Boolean;
17374 }
17375 export interface ModifyLaunchTemplateRequest {
17376 /**
17377 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17378 */
17379 DryRun?: Boolean;
17380 /**
17381 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
17382 */
17383 ClientToken?: String;
17384 /**
17385 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
17386 */
17387 LaunchTemplateId?: LaunchTemplateId;
17388 /**
17389 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
17390 */
17391 LaunchTemplateName?: LaunchTemplateName;
17392 /**
17393 * The version number of the launch template to set as the default version.
17394 */
17395 DefaultVersion?: String;
17396 }
17397 export interface ModifyLaunchTemplateResult {
17398 /**
17399 * Information about the launch template.
17400 */
17401 LaunchTemplate?: LaunchTemplate;
17402 }
17403 export interface ModifyNetworkInterfaceAttributeRequest {
17404 /**
17405 * Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.
17406 */
17407 Attachment?: NetworkInterfaceAttachmentChanges;
17408 /**
17409 * A description for the network interface.
17410 */
17411 Description?: AttributeValue;
17412 /**
17413 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17414 */
17415 DryRun?: Boolean;
17416 /**
17417 * 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.
17418 */
17419 Groups?: SecurityGroupIdStringList;
17420 /**
17421 * The ID of the network interface.
17422 */
17423 NetworkInterfaceId: NetworkInterfaceId;
17424 /**
17425 * 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.
17426 */
17427 SourceDestCheck?: AttributeBooleanValue;
17428 }
17429 export interface ModifyReservedInstancesRequest {
17430 /**
17431 * The IDs of the Reserved Instances to modify.
17432 */
17433 ReservedInstancesIds: ReservedInstancesIdStringList;
17434 /**
17435 * A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.
17436 */
17437 ClientToken?: String;
17438 /**
17439 * The configuration settings for the Reserved Instances to modify.
17440 */
17441 TargetConfigurations: ReservedInstancesConfigurationList;
17442 }
17443 export interface ModifyReservedInstancesResult {
17444 /**
17445 * The ID for the modification.
17446 */
17447 ReservedInstancesModificationId?: String;
17448 }
17449 export interface ModifySnapshotAttributeRequest {
17450 /**
17451 * The snapshot attribute to modify. Only volume creation permissions can be modified.
17452 */
17453 Attribute?: SnapshotAttributeName;
17454 /**
17455 * A JSON representation of the snapshot attribute modification.
17456 */
17457 CreateVolumePermission?: CreateVolumePermissionModifications;
17458 /**
17459 * The group to modify for the snapshot.
17460 */
17461 GroupNames?: GroupNameStringList;
17462 /**
17463 * The type of operation to perform to the attribute.
17464 */
17465 OperationType?: OperationType;
17466 /**
17467 * The ID of the snapshot.
17468 */
17469 SnapshotId: SnapshotId;
17470 /**
17471 * The account ID to modify for the snapshot.
17472 */
17473 UserIds?: UserIdStringList;
17474 /**
17475 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17476 */
17477 DryRun?: Boolean;
17478 }
17479 export interface ModifySpotFleetRequestRequest {
17480 /**
17481 * 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.
17482 */
17483 ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy;
17484 /**
17485 * The ID of the Spot Fleet request.
17486 */
17487 SpotFleetRequestId: SpotFleetRequestId;
17488 /**
17489 * The size of the fleet.
17490 */
17491 TargetCapacity?: Integer;
17492 /**
17493 * The number of On-Demand Instances in the fleet.
17494 */
17495 OnDemandTargetCapacity?: Integer;
17496 }
17497 export interface ModifySpotFleetRequestResponse {
17498 /**
17499 * Is true if the request succeeds, and an error otherwise.
17500 */
17501 Return?: Boolean;
17502 }
17503 export interface ModifySubnetAttributeRequest {
17504 /**
17505 * 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.
17506 */
17507 AssignIpv6AddressOnCreation?: AttributeBooleanValue;
17508 /**
17509 * Specify true to indicate that ENIs attached to instances created in the specified subnet should be assigned a public IPv4 address.
17510 */
17511 MapPublicIpOnLaunch?: AttributeBooleanValue;
17512 /**
17513 * The ID of the subnet.
17514 */
17515 SubnetId: SubnetId;
17516 }
17517 export interface ModifyTrafficMirrorFilterNetworkServicesRequest {
17518 /**
17519 * The ID of the Traffic Mirror filter.
17520 */
17521 TrafficMirrorFilterId: TrafficMirrorFilterId;
17522 /**
17523 * The network service, for example Amazon DNS, that you want to mirror.
17524 */
17525 AddNetworkServices?: TrafficMirrorNetworkServiceList;
17526 /**
17527 * The network service, for example Amazon DNS, that you no longer want to mirror.
17528 */
17529 RemoveNetworkServices?: TrafficMirrorNetworkServiceList;
17530 /**
17531 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17532 */
17533 DryRun?: Boolean;
17534 }
17535 export interface ModifyTrafficMirrorFilterNetworkServicesResult {
17536 /**
17537 * The Traffic Mirror filter that the network service is associated with.
17538 */
17539 TrafficMirrorFilter?: TrafficMirrorFilter;
17540 }
17541 export interface ModifyTrafficMirrorFilterRuleRequest {
17542 /**
17543 * The ID of the Traffic Mirror rule.
17544 */
17545 TrafficMirrorFilterRuleId: TrafficMirrorFilterRuleId;
17546 /**
17547 * The type of traffic (ingress | egress) to assign to the rule.
17548 */
17549 TrafficDirection?: TrafficDirection;
17550 /**
17551 * The number of the Traffic Mirror rule. This number must be unique for each Traffic Mirror rule in a given direction. The rules are processed in ascending order by rule number.
17552 */
17553 RuleNumber?: Integer;
17554 /**
17555 * The action to assign to the rule.
17556 */
17557 RuleAction?: TrafficMirrorRuleAction;
17558 /**
17559 * The destination ports that are associated with the Traffic Mirror rule.
17560 */
17561 DestinationPortRange?: TrafficMirrorPortRangeRequest;
17562 /**
17563 * The port range to assign to the Traffic Mirror rule.
17564 */
17565 SourcePortRange?: TrafficMirrorPortRangeRequest;
17566 /**
17567 * The protocol, for example TCP, to assign to the Traffic Mirror rule.
17568 */
17569 Protocol?: Integer;
17570 /**
17571 * The destination CIDR block to assign to the Traffic Mirror rule.
17572 */
17573 DestinationCidrBlock?: String;
17574 /**
17575 * The source CIDR block to assign to the Traffic Mirror rule.
17576 */
17577 SourceCidrBlock?: String;
17578 /**
17579 * The description to assign to the Traffic Mirror rule.
17580 */
17581 Description?: String;
17582 /**
17583 * The properties that you want to remove from the Traffic Mirror filter rule. When you remove a property from a Traffic Mirror filter rule, the property is set to the default.
17584 */
17585 RemoveFields?: TrafficMirrorFilterRuleFieldList;
17586 /**
17587 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17588 */
17589 DryRun?: Boolean;
17590 }
17591 export interface ModifyTrafficMirrorFilterRuleResult {
17592 /**
17593 * Modifies a Traffic Mirror rule.
17594 */
17595 TrafficMirrorFilterRule?: TrafficMirrorFilterRule;
17596 }
17597 export interface ModifyTrafficMirrorSessionRequest {
17598 /**
17599 * The ID of the Traffic Mirror session.
17600 */
17601 TrafficMirrorSessionId: TrafficMirrorSessionId;
17602 /**
17603 * The Traffic Mirror target. The target must be in the same VPC as the source, or have a VPC peering connection with the source.
17604 */
17605 TrafficMirrorTargetId?: TrafficMirrorTargetId;
17606 /**
17607 * The ID of the Traffic Mirror filter.
17608 */
17609 TrafficMirrorFilterId?: TrafficMirrorFilterId;
17610 /**
17611 * The number of bytes in each packet to mirror. These are bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet.
17612 */
17613 PacketLength?: Integer;
17614 /**
17615 * The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets. Valid values are 1-32766.
17616 */
17617 SessionNumber?: Integer;
17618 /**
17619 * The virtual network ID of the Traffic Mirror session.
17620 */
17621 VirtualNetworkId?: Integer;
17622 /**
17623 * The description to assign to the Traffic Mirror session.
17624 */
17625 Description?: String;
17626 /**
17627 * The properties that you want to remove from the Traffic Mirror session. When you remove a property from a Traffic Mirror session, the property is set to the default.
17628 */
17629 RemoveFields?: TrafficMirrorSessionFieldList;
17630 /**
17631 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17632 */
17633 DryRun?: Boolean;
17634 }
17635 export interface ModifyTrafficMirrorSessionResult {
17636 /**
17637 * Information about the Traffic Mirror session.
17638 */
17639 TrafficMirrorSession?: TrafficMirrorSession;
17640 }
17641 export interface ModifyTransitGatewayVpcAttachmentRequest {
17642 /**
17643 * The ID of the attachment.
17644 */
17645 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
17646 /**
17647 * The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.
17648 */
17649 AddSubnetIds?: TransitGatewaySubnetIdList;
17650 /**
17651 * The IDs of one or more subnets to remove.
17652 */
17653 RemoveSubnetIds?: TransitGatewaySubnetIdList;
17654 /**
17655 * The new VPC attachment options. You cannot modify the IPv6 options.
17656 */
17657 Options?: ModifyTransitGatewayVpcAttachmentRequestOptions;
17658 /**
17659 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17660 */
17661 DryRun?: Boolean;
17662 }
17663 export interface ModifyTransitGatewayVpcAttachmentRequestOptions {
17664 /**
17665 * Enable or disable DNS support. The default is enable.
17666 */
17667 DnsSupport?: DnsSupportValue;
17668 /**
17669 * Enable or disable IPv6 support. The default is enable.
17670 */
17671 Ipv6Support?: Ipv6SupportValue;
17672 }
17673 export interface ModifyTransitGatewayVpcAttachmentResult {
17674 /**
17675 * Information about the modified attachment.
17676 */
17677 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
17678 }
17679 export interface ModifyVolumeAttributeRequest {
17680 /**
17681 * Indicates whether the volume should be auto-enabled for I/O operations.
17682 */
17683 AutoEnableIO?: AttributeBooleanValue;
17684 /**
17685 * The ID of the volume.
17686 */
17687 VolumeId: VolumeId;
17688 /**
17689 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17690 */
17691 DryRun?: Boolean;
17692 }
17693 export interface ModifyVolumeRequest {
17694 /**
17695 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17696 */
17697 DryRun?: Boolean;
17698 /**
17699 * The ID of the volume.
17700 */
17701 VolumeId: VolumeId;
17702 /**
17703 * 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.
17704 */
17705 Size?: Integer;
17706 /**
17707 * The target EBS volume type of the volume. Default: If no type is specified, the existing type is retained.
17708 */
17709 VolumeType?: VolumeType;
17710 /**
17711 * 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.
17712 */
17713 Iops?: Integer;
17714 }
17715 export interface ModifyVolumeResult {
17716 /**
17717 * Information about the volume modification.
17718 */
17719 VolumeModification?: VolumeModification;
17720 }
17721 export interface ModifyVpcAttributeRequest {
17722 /**
17723 * 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.
17724 */
17725 EnableDnsHostnames?: AttributeBooleanValue;
17726 /**
17727 * 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.
17728 */
17729 EnableDnsSupport?: AttributeBooleanValue;
17730 /**
17731 * The ID of the VPC.
17732 */
17733 VpcId: VpcId;
17734 }
17735 export interface ModifyVpcEndpointConnectionNotificationRequest {
17736 /**
17737 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17738 */
17739 DryRun?: Boolean;
17740 /**
17741 * The ID of the notification.
17742 */
17743 ConnectionNotificationId: ConnectionNotificationId;
17744 /**
17745 * The ARN for the SNS topic for the notification.
17746 */
17747 ConnectionNotificationArn?: String;
17748 /**
17749 * One or more events for the endpoint. Valid values are Accept, Connect, Delete, and Reject.
17750 */
17751 ConnectionEvents?: ValueStringList;
17752 }
17753 export interface ModifyVpcEndpointConnectionNotificationResult {
17754 /**
17755 * Returns true if the request succeeds; otherwise, it returns an error.
17756 */
17757 ReturnValue?: Boolean;
17758 }
17759 export interface ModifyVpcEndpointRequest {
17760 /**
17761 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17762 */
17763 DryRun?: Boolean;
17764 /**
17765 * The ID of the endpoint.
17766 */
17767 VpcEndpointId: VpcEndpointId;
17768 /**
17769 * (Gateway endpoint) Specify true to reset the policy document to the default policy. The default policy allows full access to the service.
17770 */
17771 ResetPolicy?: Boolean;
17772 /**
17773 * A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format.
17774 */
17775 PolicyDocument?: String;
17776 /**
17777 * (Gateway endpoint) One or more route tables IDs to associate with the endpoint.
17778 */
17779 AddRouteTableIds?: VpcEndpointRouteTableIdList;
17780 /**
17781 * (Gateway endpoint) One or more route table IDs to disassociate from the endpoint.
17782 */
17783 RemoveRouteTableIds?: VpcEndpointRouteTableIdList;
17784 /**
17785 * (Interface endpoint) One or more subnet IDs in which to serve the endpoint.
17786 */
17787 AddSubnetIds?: VpcEndpointSubnetIdList;
17788 /**
17789 * (Interface endpoint) One or more subnets IDs in which to remove the endpoint.
17790 */
17791 RemoveSubnetIds?: VpcEndpointSubnetIdList;
17792 /**
17793 * (Interface endpoint) One or more security group IDs to associate with the network interface.
17794 */
17795 AddSecurityGroupIds?: VpcEndpointSecurityGroupIdList;
17796 /**
17797 * (Interface endpoint) One or more security group IDs to disassociate from the network interface.
17798 */
17799 RemoveSecurityGroupIds?: VpcEndpointSecurityGroupIdList;
17800 /**
17801 * (Interface endpoint) Indicates whether a private hosted zone is associated with the VPC.
17802 */
17803 PrivateDnsEnabled?: Boolean;
17804 }
17805 export interface ModifyVpcEndpointResult {
17806 /**
17807 * Returns true if the request succeeds; otherwise, it returns an error.
17808 */
17809 Return?: Boolean;
17810 }
17811 export interface ModifyVpcEndpointServiceConfigurationRequest {
17812 /**
17813 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17814 */
17815 DryRun?: Boolean;
17816 /**
17817 * The ID of the service.
17818 */
17819 ServiceId: VpcEndpointServiceId;
17820 /**
17821 * The private DNS name to assign to the endpoint service.
17822 */
17823 PrivateDnsName?: String;
17824 /**
17825 * Removes the private DNS name of the endpoint service.
17826 */
17827 RemovePrivateDnsName?: Boolean;
17828 /**
17829 * Indicates whether requests to create an endpoint to your service must be accepted.
17830 */
17831 AcceptanceRequired?: Boolean;
17832 /**
17833 * The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service configuration.
17834 */
17835 AddNetworkLoadBalancerArns?: ValueStringList;
17836 /**
17837 * The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service configuration.
17838 */
17839 RemoveNetworkLoadBalancerArns?: ValueStringList;
17840 }
17841 export interface ModifyVpcEndpointServiceConfigurationResult {
17842 /**
17843 * Returns true if the request succeeds; otherwise, it returns an error.
17844 */
17845 Return?: Boolean;
17846 }
17847 export interface ModifyVpcEndpointServicePermissionsRequest {
17848 /**
17849 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17850 */
17851 DryRun?: Boolean;
17852 /**
17853 * The ID of the service.
17854 */
17855 ServiceId: VpcEndpointServiceId;
17856 /**
17857 * 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 (*).
17858 */
17859 AddAllowedPrincipals?: ValueStringList;
17860 /**
17861 * The Amazon Resource Names (ARN) of one or more principals. Permissions are revoked for principals in this list.
17862 */
17863 RemoveAllowedPrincipals?: ValueStringList;
17864 }
17865 export interface ModifyVpcEndpointServicePermissionsResult {
17866 /**
17867 * Returns true if the request succeeds; otherwise, it returns an error.
17868 */
17869 ReturnValue?: Boolean;
17870 }
17871 export interface ModifyVpcPeeringConnectionOptionsRequest {
17872 /**
17873 * The VPC peering connection options for the accepter VPC.
17874 */
17875 AccepterPeeringConnectionOptions?: PeeringConnectionOptionsRequest;
17876 /**
17877 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17878 */
17879 DryRun?: Boolean;
17880 /**
17881 * The VPC peering connection options for the requester VPC.
17882 */
17883 RequesterPeeringConnectionOptions?: PeeringConnectionOptionsRequest;
17884 /**
17885 * The ID of the VPC peering connection.
17886 */
17887 VpcPeeringConnectionId: VpcPeeringConnectionId;
17888 }
17889 export interface ModifyVpcPeeringConnectionOptionsResult {
17890 /**
17891 * Information about the VPC peering connection options for the accepter VPC.
17892 */
17893 AccepterPeeringConnectionOptions?: PeeringConnectionOptions;
17894 /**
17895 * Information about the VPC peering connection options for the requester VPC.
17896 */
17897 RequesterPeeringConnectionOptions?: PeeringConnectionOptions;
17898 }
17899 export interface ModifyVpcTenancyRequest {
17900 /**
17901 * The ID of the VPC.
17902 */
17903 VpcId: VpcId;
17904 /**
17905 * The instance tenancy attribute for the VPC.
17906 */
17907 InstanceTenancy: VpcTenancy;
17908 /**
17909 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17910 */
17911 DryRun?: Boolean;
17912 }
17913 export interface ModifyVpcTenancyResult {
17914 /**
17915 * Returns true if the request succeeds; otherwise, returns an error.
17916 */
17917 ReturnValue?: Boolean;
17918 }
17919 export interface ModifyVpnConnectionRequest {
17920 /**
17921 * The ID of the VPN connection.
17922 */
17923 VpnConnectionId: VpnConnectionId;
17924 /**
17925 * The ID of the transit gateway.
17926 */
17927 TransitGatewayId?: TransitGatewayId;
17928 /**
17929 * The ID of the customer gateway at your end of the VPN connection.
17930 */
17931 CustomerGatewayId?: CustomerGatewayId;
17932 /**
17933 * The ID of the virtual private gateway at the AWS side of the VPN connection.
17934 */
17935 VpnGatewayId?: VpnGatewayId;
17936 /**
17937 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17938 */
17939 DryRun?: Boolean;
17940 }
17941 export interface ModifyVpnConnectionResult {
17942 VpnConnection?: VpnConnection;
17943 }
17944 export interface ModifyVpnTunnelCertificateRequest {
17945 /**
17946 * The ID of the AWS Site-to-Site VPN connection.
17947 */
17948 VpnConnectionId: VpnConnectionId;
17949 /**
17950 * The external IP address of the VPN tunnel.
17951 */
17952 VpnTunnelOutsideIpAddress: String;
17953 /**
17954 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17955 */
17956 DryRun?: Boolean;
17957 }
17958 export interface ModifyVpnTunnelCertificateResult {
17959 VpnConnection?: VpnConnection;
17960 }
17961 export interface ModifyVpnTunnelOptionsRequest {
17962 /**
17963 * The ID of the AWS Site-to-Site VPN connection.
17964 */
17965 VpnConnectionId: VpnConnectionId;
17966 /**
17967 * The external IP address of the VPN tunnel.
17968 */
17969 VpnTunnelOutsideIpAddress: String;
17970 /**
17971 * The tunnel options to modify.
17972 */
17973 TunnelOptions: ModifyVpnTunnelOptionsSpecification;
17974 /**
17975 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
17976 */
17977 DryRun?: Boolean;
17978 }
17979 export interface ModifyVpnTunnelOptionsResult {
17980 VpnConnection?: VpnConnection;
17981 }
17982 export interface ModifyVpnTunnelOptionsSpecification {
17983 /**
17984 * 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
17985 */
17986 TunnelInsideCidr?: String;
17987 /**
17988 * The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway. Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).
17989 */
17990 PreSharedKey?: String;
17991 /**
17992 * The lifetime for phase 1 of the IKE negotiation, in seconds. Constraints: A value between 900 and 28,800. Default: 28800
17993 */
17994 Phase1LifetimeSeconds?: Integer;
17995 /**
17996 * The lifetime for phase 2 of the IKE negotiation, in seconds. Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds. Default: 3600
17997 */
17998 Phase2LifetimeSeconds?: Integer;
17999 /**
18000 * The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage. Constraints: A value between 60 and half of Phase2LifetimeSeconds. Default: 540
18001 */
18002 RekeyMarginTimeSeconds?: Integer;
18003 /**
18004 * The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during which the rekey time is randomly selected. Constraints: A value between 0 and 100. Default: 100
18005 */
18006 RekeyFuzzPercentage?: Integer;
18007 /**
18008 * The number of packets in an IKE replay window. Constraints: A value between 64 and 2048. Default: 1024
18009 */
18010 ReplayWindowSize?: Integer;
18011 /**
18012 * The number of seconds after which a DPD timeout occurs. Constraints: A value between 0 and 30. Default: 30
18013 */
18014 DPDTimeoutSeconds?: Integer;
18015 /**
18016 * One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: AES128 | AES256
18017 */
18018 Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsRequestList;
18019 /**
18020 * One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: AES128 | AES256
18021 */
18022 Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsRequestList;
18023 /**
18024 * One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: SHA1 | SHA2-256
18025 */
18026 Phase1IntegrityAlgorithms?: Phase1IntegrityAlgorithmsRequestList;
18027 /**
18028 * One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: SHA1 | SHA2-256
18029 */
18030 Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsRequestList;
18031 /**
18032 * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 22 | 23 | 24
18033 */
18034 Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestList;
18035 /**
18036 * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 22 | 23 | 24
18037 */
18038 Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestList;
18039 /**
18040 * The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 | ikev2
18041 */
18042 IKEVersions?: IKEVersionsRequestList;
18043 }
18044 export interface MonitorInstancesRequest {
18045 /**
18046 * The IDs of the instances.
18047 */
18048 InstanceIds: InstanceIdStringList;
18049 /**
18050 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
18051 */
18052 DryRun?: Boolean;
18053 }
18054 export interface MonitorInstancesResult {
18055 /**
18056 * The monitoring information.
18057 */
18058 InstanceMonitorings?: InstanceMonitoringList;
18059 }
18060 export interface Monitoring {
18061 /**
18062 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
18063 */
18064 State?: MonitoringState;
18065 }
18066 export type MonitoringState = "disabled"|"disabling"|"enabled"|"pending"|string;
18067 export interface MoveAddressToVpcRequest {
18068 /**
18069 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
18070 */
18071 DryRun?: Boolean;
18072 /**
18073 * The Elastic IP address.
18074 */
18075 PublicIp: String;
18076 }
18077 export interface MoveAddressToVpcResult {
18078 /**
18079 * The allocation ID for the Elastic IP address.
18080 */
18081 AllocationId?: String;
18082 /**
18083 * The status of the move of the IP address.
18084 */
18085 Status?: Status;
18086 }
18087 export type MoveStatus = "movingToVpc"|"restoringToClassic"|string;
18088 export interface MovingAddressStatus {
18089 /**
18090 * The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.
18091 */
18092 MoveStatus?: MoveStatus;
18093 /**
18094 * The Elastic IP address.
18095 */
18096 PublicIp?: String;
18097 }
18098 export type MovingAddressStatusSet = MovingAddressStatus[];
18099 export type MulticastSupportValue = "enable"|"disable"|string;
18100 export interface NatGateway {
18101 /**
18102 * The date and time the NAT gateway was created.
18103 */
18104 CreateTime?: DateTime;
18105 /**
18106 * The date and time the NAT gateway was deleted, if applicable.
18107 */
18108 DeleteTime?: DateTime;
18109 /**
18110 * 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)
18111 */
18112 FailureCode?: String;
18113 /**
18114 * 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."
18115 */
18116 FailureMessage?: String;
18117 /**
18118 * Information about the IP addresses and network interface associated with the NAT gateway.
18119 */
18120 NatGatewayAddresses?: NatGatewayAddressList;
18121 /**
18122 * The ID of the NAT gateway.
18123 */
18124 NatGatewayId?: String;
18125 /**
18126 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
18127 */
18128 ProvisionedBandwidth?: ProvisionedBandwidth;
18129 /**
18130 * 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.
18131 */
18132 State?: NatGatewayState;
18133 /**
18134 * The ID of the subnet in which the NAT gateway is located.
18135 */
18136 SubnetId?: String;
18137 /**
18138 * The ID of the VPC in which the NAT gateway is located.
18139 */
18140 VpcId?: String;
18141 /**
18142 * The tags for the NAT gateway.
18143 */
18144 Tags?: TagList;
18145 }
18146 export interface NatGatewayAddress {
18147 /**
18148 * The allocation ID of the Elastic IP address that's associated with the NAT gateway.
18149 */
18150 AllocationId?: String;
18151 /**
18152 * The ID of the network interface associated with the NAT gateway.
18153 */
18154 NetworkInterfaceId?: String;
18155 /**
18156 * The private IP address associated with the Elastic IP address.
18157 */
18158 PrivateIp?: String;
18159 /**
18160 * The Elastic IP address associated with the NAT gateway.
18161 */
18162 PublicIp?: String;
18163 }
18164 export type NatGatewayAddressList = NatGatewayAddress[];
18165 export type NatGatewayId = string;
18166 export type NatGatewayIdStringList = NatGatewayId[];
18167 export type NatGatewayList = NatGateway[];
18168 export type NatGatewayState = "pending"|"failed"|"available"|"deleting"|"deleted"|string;
18169 export interface NetworkAcl {
18170 /**
18171 * Any associations between the network ACL and one or more subnets
18172 */
18173 Associations?: NetworkAclAssociationList;
18174 /**
18175 * One or more entries (rules) in the network ACL.
18176 */
18177 Entries?: NetworkAclEntryList;
18178 /**
18179 * Indicates whether this is the default network ACL for the VPC.
18180 */
18181 IsDefault?: Boolean;
18182 /**
18183 * The ID of the network ACL.
18184 */
18185 NetworkAclId?: String;
18186 /**
18187 * Any tags assigned to the network ACL.
18188 */
18189 Tags?: TagList;
18190 /**
18191 * The ID of the VPC for the network ACL.
18192 */
18193 VpcId?: String;
18194 /**
18195 * The ID of the AWS account that owns the network ACL.
18196 */
18197 OwnerId?: String;
18198 }
18199 export interface NetworkAclAssociation {
18200 /**
18201 * The ID of the association between a network ACL and a subnet.
18202 */
18203 NetworkAclAssociationId?: String;
18204 /**
18205 * The ID of the network ACL.
18206 */
18207 NetworkAclId?: String;
18208 /**
18209 * The ID of the subnet.
18210 */
18211 SubnetId?: String;
18212 }
18213 export type NetworkAclAssociationId = string;
18214 export type NetworkAclAssociationList = NetworkAclAssociation[];
18215 export interface NetworkAclEntry {
18216 /**
18217 * The IPv4 network range to allow or deny, in CIDR notation.
18218 */
18219 CidrBlock?: String;
18220 /**
18221 * Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).
18222 */
18223 Egress?: Boolean;
18224 /**
18225 * ICMP protocol: The ICMP type and code.
18226 */
18227 IcmpTypeCode?: IcmpTypeCode;
18228 /**
18229 * The IPv6 network range to allow or deny, in CIDR notation.
18230 */
18231 Ipv6CidrBlock?: String;
18232 /**
18233 * TCP or UDP protocols: The range of ports the rule applies to.
18234 */
18235 PortRange?: PortRange;
18236 /**
18237 * The protocol number. A value of "-1" means all protocols.
18238 */
18239 Protocol?: String;
18240 /**
18241 * Indicates whether to allow or deny the traffic that matches the rule.
18242 */
18243 RuleAction?: RuleAction;
18244 /**
18245 * The rule number for the entry. ACL entries are processed in ascending order by rule number.
18246 */
18247 RuleNumber?: Integer;
18248 }
18249 export type NetworkAclEntryList = NetworkAclEntry[];
18250 export type NetworkAclId = string;
18251 export type NetworkAclIdStringList = NetworkAclId[];
18252 export type NetworkAclList = NetworkAcl[];
18253 export interface NetworkInfo {
18254 /**
18255 * Describes the network performance.
18256 */
18257 NetworkPerformance?: NetworkPerformance;
18258 /**
18259 * The maximum number of network interfaces for the instance type.
18260 */
18261 MaximumNetworkInterfaces?: MaxNetworkInterfaces;
18262 /**
18263 * The maximum number of IPv4 addresses per network interface.
18264 */
18265 Ipv4AddressesPerInterface?: MaxIpv4AddrPerInterface;
18266 /**
18267 * The maximum number of IPv6 addresses per network interface.
18268 */
18269 Ipv6AddressesPerInterface?: MaxIpv6AddrPerInterface;
18270 /**
18271 * Indicates whether IPv6 is supported.
18272 */
18273 Ipv6Supported?: Ipv6Flag;
18274 /**
18275 * Indicates whether Elastic Network Adapter (ENA) is supported.
18276 */
18277 EnaSupport?: EnaSupport;
18278 }
18279 export interface NetworkInterface {
18280 /**
18281 * The association information for an Elastic IP address (IPv4) associated with the network interface.
18282 */
18283 Association?: NetworkInterfaceAssociation;
18284 /**
18285 * The network interface attachment.
18286 */
18287 Attachment?: NetworkInterfaceAttachment;
18288 /**
18289 * The Availability Zone.
18290 */
18291 AvailabilityZone?: String;
18292 /**
18293 * A description.
18294 */
18295 Description?: String;
18296 /**
18297 * Any security groups for the network interface.
18298 */
18299 Groups?: GroupIdentifierList;
18300 /**
18301 * The type of network interface.
18302 */
18303 InterfaceType?: NetworkInterfaceType;
18304 /**
18305 * The IPv6 addresses associated with the network interface.
18306 */
18307 Ipv6Addresses?: NetworkInterfaceIpv6AddressesList;
18308 /**
18309 * The MAC address.
18310 */
18311 MacAddress?: String;
18312 /**
18313 * The ID of the network interface.
18314 */
18315 NetworkInterfaceId?: String;
18316 /**
18317 * The Amazon Resource Name (ARN) of the Outpost.
18318 */
18319 OutpostArn?: String;
18320 /**
18321 * The AWS account ID of the owner of the network interface.
18322 */
18323 OwnerId?: String;
18324 /**
18325 * The private DNS name.
18326 */
18327 PrivateDnsName?: String;
18328 /**
18329 * The IPv4 address of the network interface within the subnet.
18330 */
18331 PrivateIpAddress?: String;
18332 /**
18333 * The private IPv4 addresses associated with the network interface.
18334 */
18335 PrivateIpAddresses?: NetworkInterfacePrivateIpAddressList;
18336 /**
18337 * The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).
18338 */
18339 RequesterId?: String;
18340 /**
18341 * Indicates whether the network interface is being managed by AWS.
18342 */
18343 RequesterManaged?: Boolean;
18344 /**
18345 * Indicates whether traffic to or from the instance is validated.
18346 */
18347 SourceDestCheck?: Boolean;
18348 /**
18349 * The status of the network interface.
18350 */
18351 Status?: NetworkInterfaceStatus;
18352 /**
18353 * The ID of the subnet.
18354 */
18355 SubnetId?: String;
18356 /**
18357 * Any tags assigned to the network interface.
18358 */
18359 TagSet?: TagList;
18360 /**
18361 * The ID of the VPC.
18362 */
18363 VpcId?: String;
18364 }
18365 export interface NetworkInterfaceAssociation {
18366 /**
18367 * The allocation ID.
18368 */
18369 AllocationId?: String;
18370 /**
18371 * The association ID.
18372 */
18373 AssociationId?: String;
18374 /**
18375 * The ID of the Elastic IP address owner.
18376 */
18377 IpOwnerId?: String;
18378 /**
18379 * The public DNS name.
18380 */
18381 PublicDnsName?: String;
18382 /**
18383 * The address of the Elastic IP address bound to the network interface.
18384 */
18385 PublicIp?: String;
18386 }
18387 export interface NetworkInterfaceAttachment {
18388 /**
18389 * The timestamp indicating when the attachment initiated.
18390 */
18391 AttachTime?: DateTime;
18392 /**
18393 * The ID of the network interface attachment.
18394 */
18395 AttachmentId?: String;
18396 /**
18397 * Indicates whether the network interface is deleted when the instance is terminated.
18398 */
18399 DeleteOnTermination?: Boolean;
18400 /**
18401 * The device index of the network interface attachment on the instance.
18402 */
18403 DeviceIndex?: Integer;
18404 /**
18405 * The ID of the instance.
18406 */
18407 InstanceId?: String;
18408 /**
18409 * The AWS account ID of the owner of the instance.
18410 */
18411 InstanceOwnerId?: String;
18412 /**
18413 * The attachment state.
18414 */
18415 Status?: AttachmentStatus;
18416 }
18417 export interface NetworkInterfaceAttachmentChanges {
18418 /**
18419 * The ID of the network interface attachment.
18420 */
18421 AttachmentId?: NetworkInterfaceAttachmentId;
18422 /**
18423 * Indicates whether the network interface is deleted when the instance is terminated.
18424 */
18425 DeleteOnTermination?: Boolean;
18426 }
18427 export type NetworkInterfaceAttachmentId = string;
18428 export type NetworkInterfaceAttribute = "description"|"groupSet"|"sourceDestCheck"|"attachment"|string;
18429 export type NetworkInterfaceCreationType = "efa"|string;
18430 export type NetworkInterfaceId = string;
18431 export type NetworkInterfaceIdList = NetworkInterfaceId[];
18432 export interface NetworkInterfaceIpv6Address {
18433 /**
18434 * The IPv6 address.
18435 */
18436 Ipv6Address?: String;
18437 }
18438 export type NetworkInterfaceIpv6AddressesList = NetworkInterfaceIpv6Address[];
18439 export type NetworkInterfaceList = NetworkInterface[];
18440 export interface NetworkInterfacePermission {
18441 /**
18442 * The ID of the network interface permission.
18443 */
18444 NetworkInterfacePermissionId?: String;
18445 /**
18446 * The ID of the network interface.
18447 */
18448 NetworkInterfaceId?: String;
18449 /**
18450 * The AWS account ID.
18451 */
18452 AwsAccountId?: String;
18453 /**
18454 * The AWS service.
18455 */
18456 AwsService?: String;
18457 /**
18458 * The type of permission.
18459 */
18460 Permission?: InterfacePermissionType;
18461 /**
18462 * Information about the state of the permission.
18463 */
18464 PermissionState?: NetworkInterfacePermissionState;
18465 }
18466 export type NetworkInterfacePermissionId = string;
18467 export type NetworkInterfacePermissionIdList = NetworkInterfacePermissionId[];
18468 export type NetworkInterfacePermissionList = NetworkInterfacePermission[];
18469 export interface NetworkInterfacePermissionState {
18470 /**
18471 * The state of the permission.
18472 */
18473 State?: NetworkInterfacePermissionStateCode;
18474 /**
18475 * A status message, if applicable.
18476 */
18477 StatusMessage?: String;
18478 }
18479 export type NetworkInterfacePermissionStateCode = "pending"|"granted"|"revoking"|"revoked"|string;
18480 export interface NetworkInterfacePrivateIpAddress {
18481 /**
18482 * The association information for an Elastic IP address (IPv4) associated with the network interface.
18483 */
18484 Association?: NetworkInterfaceAssociation;
18485 /**
18486 * Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.
18487 */
18488 Primary?: Boolean;
18489 /**
18490 * The private DNS name.
18491 */
18492 PrivateDnsName?: String;
18493 /**
18494 * The private IPv4 address.
18495 */
18496 PrivateIpAddress?: String;
18497 }
18498 export type NetworkInterfacePrivateIpAddressList = NetworkInterfacePrivateIpAddress[];
18499 export type NetworkInterfaceStatus = "available"|"associated"|"attaching"|"in-use"|"detaching"|string;
18500 export type NetworkInterfaceType = "interface"|"natGateway"|"efa"|string;
18501 export type NetworkPerformance = string;
18502 export interface NewDhcpConfiguration {
18503 Key?: String;
18504 Values?: ValueStringList;
18505 }
18506 export type NewDhcpConfigurationList = NewDhcpConfiguration[];
18507 export type NextToken = string;
18508 export type OccurrenceDayRequestSet = Integer[];
18509 export type OccurrenceDaySet = Integer[];
18510 export type OfferingClassType = "standard"|"convertible"|string;
18511 export type OfferingId = string;
18512 export type OfferingTypeValues = "Heavy Utilization"|"Medium Utilization"|"Light Utilization"|"No Upfront"|"Partial Upfront"|"All Upfront"|string;
18513 export type OnDemandAllocationStrategy = "lowestPrice"|"prioritized"|string;
18514 export interface OnDemandOptions {
18515 /**
18516 * 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.
18517 */
18518 AllocationStrategy?: FleetOnDemandAllocationStrategy;
18519 /**
18520 * The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity. Supported only for fleets of type instant.
18521 */
18522 CapacityReservationOptions?: CapacityReservationOptions;
18523 /**
18524 * Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet. Supported only for fleets of type instant.
18525 */
18526 SingleInstanceType?: Boolean;
18527 /**
18528 * Indicates that the fleet launches all On-Demand Instances into a single Availability Zone. Supported only for fleets of type instant.
18529 */
18530 SingleAvailabilityZone?: Boolean;
18531 /**
18532 * The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
18533 */
18534 MinTargetCapacity?: Integer;
18535 /**
18536 * The maximum amount per hour for On-Demand Instances that you're willing to pay.
18537 */
18538 MaxTotalPrice?: String;
18539 }
18540 export interface OnDemandOptionsRequest {
18541 /**
18542 * 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.
18543 */
18544 AllocationStrategy?: FleetOnDemandAllocationStrategy;
18545 /**
18546 * The strategy for using unused Capacity Reservations for fulfilling On-Demand capacity. Supported only for fleets of type instant.
18547 */
18548 CapacityReservationOptions?: CapacityReservationOptionsRequest;
18549 /**
18550 * Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet. Supported only for fleets of type instant.
18551 */
18552 SingleInstanceType?: Boolean;
18553 /**
18554 * Indicates that the fleet launches all On-Demand Instances into a single Availability Zone. Supported only for fleets of type instant.
18555 */
18556 SingleAvailabilityZone?: Boolean;
18557 /**
18558 * The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
18559 */
18560 MinTargetCapacity?: Integer;
18561 /**
18562 * The maximum amount per hour for On-Demand Instances that you're willing to pay.
18563 */
18564 MaxTotalPrice?: String;
18565 }
18566 export type OperationType = "add"|"remove"|string;
18567 export type OwnerStringList = String[];
18568 export type PaymentOption = "AllUpfront"|"PartialUpfront"|"NoUpfront"|string;
18569 export interface PciId {
18570 /**
18571 * The ID of the device.
18572 */
18573 DeviceId?: String;
18574 /**
18575 * The ID of the vendor.
18576 */
18577 VendorId?: String;
18578 /**
18579 * The ID of the subsystem.
18580 */
18581 SubsystemId?: String;
18582 /**
18583 * The ID of the vendor for the subsystem.
18584 */
18585 SubsystemVendorId?: String;
18586 }
18587 export interface PeeringAttachmentStatus {
18588 /**
18589 * The status code.
18590 */
18591 Code?: String;
18592 /**
18593 * The status message, if applicable.
18594 */
18595 Message?: String;
18596 }
18597 export interface PeeringConnectionOptions {
18598 /**
18599 * 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.
18600 */
18601 AllowDnsResolutionFromRemoteVpc?: Boolean;
18602 /**
18603 * 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.
18604 */
18605 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
18606 /**
18607 * 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.
18608 */
18609 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
18610 }
18611 export interface PeeringConnectionOptionsRequest {
18612 /**
18613 * If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.
18614 */
18615 AllowDnsResolutionFromRemoteVpc?: Boolean;
18616 /**
18617 * 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.
18618 */
18619 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
18620 /**
18621 * 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.
18622 */
18623 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
18624 }
18625 export interface PeeringTgwInfo {
18626 /**
18627 * The ID of the transit gateway.
18628 */
18629 TransitGatewayId?: String;
18630 /**
18631 * The AWS account ID of the owner of the transit gateway.
18632 */
18633 OwnerId?: String;
18634 /**
18635 * The Region of the transit gateway.
18636 */
18637 Region?: String;
18638 }
18639 export type PermissionGroup = "all"|string;
18640 export type Phase1DHGroupNumbersList = Phase1DHGroupNumbersListValue[];
18641 export interface Phase1DHGroupNumbersListValue {
18642 /**
18643 * The Diffie-Hellmann group number.
18644 */
18645 Value?: Integer;
18646 }
18647 export type Phase1DHGroupNumbersRequestList = Phase1DHGroupNumbersRequestListValue[];
18648 export interface Phase1DHGroupNumbersRequestListValue {
18649 /**
18650 * The Diffie-Hellmann group number.
18651 */
18652 Value?: Integer;
18653 }
18654 export type Phase1EncryptionAlgorithmsList = Phase1EncryptionAlgorithmsListValue[];
18655 export interface Phase1EncryptionAlgorithmsListValue {
18656 /**
18657 * The value for the encryption algorithm.
18658 */
18659 Value?: String;
18660 }
18661 export type Phase1EncryptionAlgorithmsRequestList = Phase1EncryptionAlgorithmsRequestListValue[];
18662 export interface Phase1EncryptionAlgorithmsRequestListValue {
18663 /**
18664 * The value for the encryption algorithm.
18665 */
18666 Value?: String;
18667 }
18668 export type Phase1IntegrityAlgorithmsList = Phase1IntegrityAlgorithmsListValue[];
18669 export interface Phase1IntegrityAlgorithmsListValue {
18670 /**
18671 * The value for the integrity algorithm.
18672 */
18673 Value?: String;
18674 }
18675 export type Phase1IntegrityAlgorithmsRequestList = Phase1IntegrityAlgorithmsRequestListValue[];
18676 export interface Phase1IntegrityAlgorithmsRequestListValue {
18677 /**
18678 * The value for the integrity algorithm.
18679 */
18680 Value?: String;
18681 }
18682 export type Phase2DHGroupNumbersList = Phase2DHGroupNumbersListValue[];
18683 export interface Phase2DHGroupNumbersListValue {
18684 /**
18685 * The Diffie-Hellmann group number.
18686 */
18687 Value?: Integer;
18688 }
18689 export type Phase2DHGroupNumbersRequestList = Phase2DHGroupNumbersRequestListValue[];
18690 export interface Phase2DHGroupNumbersRequestListValue {
18691 /**
18692 * The Diffie-Hellmann group number.
18693 */
18694 Value?: Integer;
18695 }
18696 export type Phase2EncryptionAlgorithmsList = Phase2EncryptionAlgorithmsListValue[];
18697 export interface Phase2EncryptionAlgorithmsListValue {
18698 /**
18699 * The encryption algorithm.
18700 */
18701 Value?: String;
18702 }
18703 export type Phase2EncryptionAlgorithmsRequestList = Phase2EncryptionAlgorithmsRequestListValue[];
18704 export interface Phase2EncryptionAlgorithmsRequestListValue {
18705 /**
18706 * The encryption algorithm.
18707 */
18708 Value?: String;
18709 }
18710 export type Phase2IntegrityAlgorithmsList = Phase2IntegrityAlgorithmsListValue[];
18711 export interface Phase2IntegrityAlgorithmsListValue {
18712 /**
18713 * The integrity algorithm.
18714 */
18715 Value?: String;
18716 }
18717 export type Phase2IntegrityAlgorithmsRequestList = Phase2IntegrityAlgorithmsRequestListValue[];
18718 export interface Phase2IntegrityAlgorithmsRequestListValue {
18719 /**
18720 * The integrity algorithm.
18721 */
18722 Value?: String;
18723 }
18724 export interface Placement {
18725 /**
18726 * The Availability Zone of the instance. If not specified, an Availability Zone will be automatically chosen for you based on the load balancing criteria for the Region. This parameter is not supported by .
18727 */
18728 AvailabilityZone?: String;
18729 /**
18730 * The affinity setting for the instance on the Dedicated Host. This parameter is not supported for the ImportInstance command. This parameter is not supported by .
18731 */
18732 Affinity?: String;
18733 /**
18734 * The name of the placement group the instance is in.
18735 */
18736 GroupName?: String;
18737 /**
18738 * The number of the partition the instance is in. Valid only if the placement group strategy is set to partition. This parameter is not supported by .
18739 */
18740 PartitionNumber?: Integer;
18741 /**
18742 * The ID of the Dedicated Host on which the instance resides. This parameter is not supported for the ImportInstance command. This parameter is not supported by .
18743 */
18744 HostId?: String;
18745 /**
18746 * 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. This parameter is not supported by .
18747 */
18748 Tenancy?: Tenancy;
18749 /**
18750 * Reserved for future use. This parameter is not supported by .
18751 */
18752 SpreadDomain?: String;
18753 /**
18754 * The ARN of the host resource group in which to launch the instances. If you specify a host resource group ARN, omit the Tenancy parameter or set it to host. This parameter is not supported by .
18755 */
18756 HostResourceGroupArn?: String;
18757 }
18758 export interface PlacementGroup {
18759 /**
18760 * The name of the placement group.
18761 */
18762 GroupName?: String;
18763 /**
18764 * The state of the placement group.
18765 */
18766 State?: PlacementGroupState;
18767 /**
18768 * The placement strategy.
18769 */
18770 Strategy?: PlacementStrategy;
18771 /**
18772 * The number of partitions. Valid only if strategy is set to partition.
18773 */
18774 PartitionCount?: Integer;
18775 /**
18776 * The ID of the placement group.
18777 */
18778 GroupId?: String;
18779 /**
18780 * Any tags applied to the placement group.
18781 */
18782 Tags?: TagList;
18783 }
18784 export type PlacementGroupId = string;
18785 export type PlacementGroupIdStringList = PlacementGroupId[];
18786 export interface PlacementGroupInfo {
18787 /**
18788 * A list of supported placement groups types.
18789 */
18790 SupportedStrategies?: PlacementGroupStrategyList;
18791 }
18792 export type PlacementGroupList = PlacementGroup[];
18793 export type PlacementGroupName = string;
18794 export type PlacementGroupState = "pending"|"available"|"deleting"|"deleted"|string;
18795 export type PlacementGroupStrategy = "cluster"|"partition"|"spread"|string;
18796 export type PlacementGroupStrategyList = PlacementGroupStrategy[];
18797 export type PlacementGroupStringList = PlacementGroupName[];
18798 export interface PlacementResponse {
18799 /**
18800 * The name of the placement group that the instance is in.
18801 */
18802 GroupName?: String;
18803 }
18804 export type PlacementStrategy = "cluster"|"spread"|"partition"|string;
18805 export type PlatformValues = "Windows"|string;
18806 export interface PoolCidrBlock {
18807 /**
18808 * The CIDR block.
18809 */
18810 Cidr?: String;
18811 }
18812 export type PoolCidrBlocksSet = PoolCidrBlock[];
18813 export type PoolMaxResults = number;
18814 export interface PortRange {
18815 /**
18816 * The first port in the range.
18817 */
18818 From?: Integer;
18819 /**
18820 * The last port in the range.
18821 */
18822 To?: Integer;
18823 }
18824 export interface PrefixList {
18825 /**
18826 * The IP address range of the AWS service.
18827 */
18828 Cidrs?: ValueStringList;
18829 /**
18830 * The ID of the prefix.
18831 */
18832 PrefixListId?: String;
18833 /**
18834 * The name of the prefix.
18835 */
18836 PrefixListName?: String;
18837 }
18838 export interface PrefixListId {
18839 /**
18840 * 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 ._-:/()#,@[]+=;{}!$*
18841 */
18842 Description?: String;
18843 /**
18844 * The ID of the prefix.
18845 */
18846 PrefixListId?: String;
18847 }
18848 export type PrefixListIdList = PrefixListId[];
18849 export type PrefixListIdSet = String[];
18850 export type PrefixListResourceId = string;
18851 export type PrefixListResourceIdStringList = PrefixListResourceId[];
18852 export type PrefixListSet = PrefixList[];
18853 export interface PriceSchedule {
18854 /**
18855 * 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.
18856 */
18857 Active?: Boolean;
18858 /**
18859 * The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.
18860 */
18861 CurrencyCode?: CurrencyCodeValues;
18862 /**
18863 * The fixed price for the term.
18864 */
18865 Price?: Double;
18866 /**
18867 * The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
18868 */
18869 Term?: Long;
18870 }
18871 export type PriceScheduleList = PriceSchedule[];
18872 export interface PriceScheduleSpecification {
18873 /**
18874 * The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.
18875 */
18876 CurrencyCode?: CurrencyCodeValues;
18877 /**
18878 * The fixed price for the term.
18879 */
18880 Price?: Double;
18881 /**
18882 * The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
18883 */
18884 Term?: Long;
18885 }
18886 export type PriceScheduleSpecificationList = PriceScheduleSpecification[];
18887 export interface PricingDetail {
18888 /**
18889 * The number of reservations available for the price.
18890 */
18891 Count?: Integer;
18892 /**
18893 * The price per instance.
18894 */
18895 Price?: Double;
18896 }
18897 export type PricingDetailsList = PricingDetail[];
18898 export interface PrincipalIdFormat {
18899 /**
18900 * PrincipalIdFormatARN description
18901 */
18902 Arn?: String;
18903 /**
18904 * PrincipalIdFormatStatuses description
18905 */
18906 Statuses?: IdFormatList;
18907 }
18908 export type PrincipalIdFormatList = PrincipalIdFormat[];
18909 export type PrincipalType = "All"|"Service"|"OrganizationUnit"|"Account"|"User"|"Role"|string;
18910 export interface PrivateDnsNameConfiguration {
18911 /**
18912 * The verification state of the VPC endpoint service. &gt;Consumers of the endpoint service can use the private name only when the state is verified.
18913 */
18914 State?: DnsNameState;
18915 /**
18916 * The endpoint service verification type, for example TXT.
18917 */
18918 Type?: String;
18919 /**
18920 * The value the service provider adds to the private DNS name domain record before verification.
18921 */
18922 Value?: String;
18923 /**
18924 * The name of the record subdomain the service provider needs to create. The service provider adds the value text to the name.
18925 */
18926 Name?: String;
18927 }
18928 export type PrivateIpAddressConfigSet = ScheduledInstancesPrivateIpAddressConfig[];
18929 export interface PrivateIpAddressSpecification {
18930 /**
18931 * Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
18932 */
18933 Primary?: Boolean;
18934 /**
18935 * The private IPv4 addresses.
18936 */
18937 PrivateIpAddress?: String;
18938 }
18939 export type PrivateIpAddressSpecificationList = PrivateIpAddressSpecification[];
18940 export type PrivateIpAddressStringList = String[];
18941 export interface ProcessorInfo {
18942 /**
18943 * A list of architectures supported by the instance type.
18944 */
18945 SupportedArchitectures?: ArchitectureTypeList;
18946 /**
18947 * The speed of the processor, in GHz.
18948 */
18949 SustainedClockSpeedInGhz?: ProcessorSustainedClockSpeed;
18950 }
18951 export type ProcessorSustainedClockSpeed = number;
18952 export interface ProductCode {
18953 /**
18954 * The product code.
18955 */
18956 ProductCodeId?: String;
18957 /**
18958 * The type of product code.
18959 */
18960 ProductCodeType?: ProductCodeValues;
18961 }
18962 export type ProductCodeList = ProductCode[];
18963 export type ProductCodeStringList = String[];
18964 export type ProductCodeValues = "devpay"|"marketplace"|string;
18965 export type ProductDescriptionList = String[];
18966 export interface PropagatingVgw {
18967 /**
18968 * The ID of the virtual private gateway.
18969 */
18970 GatewayId?: String;
18971 }
18972 export type PropagatingVgwList = PropagatingVgw[];
18973 export interface ProvisionByoipCidrRequest {
18974 /**
18975 * The public IPv4 or IPv6 address range, in CIDR notation. The most specific IPv4 prefix that you can specify is /24. The most specific IPv6 prefix you can specify is /56. The address range cannot overlap with another address range that you've brought to this or another Region.
18976 */
18977 Cidr: String;
18978 /**
18979 * A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.
18980 */
18981 CidrAuthorizationContext?: CidrAuthorizationContext;
18982 /**
18983 * (IPv6 only) Indicate whether the address range will be publicly advertised to the internet. Default: true
18984 */
18985 PubliclyAdvertisable?: Boolean;
18986 /**
18987 * A description for the address range and the address pool.
18988 */
18989 Description?: String;
18990 /**
18991 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
18992 */
18993 DryRun?: Boolean;
18994 }
18995 export interface ProvisionByoipCidrResult {
18996 /**
18997 * Information about the address range.
18998 */
18999 ByoipCidr?: ByoipCidr;
19000 }
19001 export interface ProvisionedBandwidth {
19002 /**
19003 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
19004 */
19005 ProvisionTime?: DateTime;
19006 /**
19007 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
19008 */
19009 Provisioned?: String;
19010 /**
19011 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
19012 */
19013 RequestTime?: DateTime;
19014 /**
19015 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
19016 */
19017 Requested?: String;
19018 /**
19019 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
19020 */
19021 Status?: String;
19022 }
19023 export type PublicIpStringList = String[];
19024 export interface PublicIpv4Pool {
19025 /**
19026 * The ID of the address pool.
19027 */
19028 PoolId?: String;
19029 /**
19030 * A description of the address pool.
19031 */
19032 Description?: String;
19033 /**
19034 * The address ranges.
19035 */
19036 PoolAddressRanges?: PublicIpv4PoolRangeSet;
19037 /**
19038 * The total number of addresses.
19039 */
19040 TotalAddressCount?: Integer;
19041 /**
19042 * The total number of available addresses.
19043 */
19044 TotalAvailableAddressCount?: Integer;
19045 /**
19046 * Any tags for the address pool.
19047 */
19048 Tags?: TagList;
19049 }
19050 export type PublicIpv4PoolIdStringList = Ipv4PoolEc2Id[];
19051 export interface PublicIpv4PoolRange {
19052 /**
19053 * The first IP address in the range.
19054 */
19055 FirstAddress?: String;
19056 /**
19057 * The last IP address in the range.
19058 */
19059 LastAddress?: String;
19060 /**
19061 * The number of addresses in the range.
19062 */
19063 AddressCount?: Integer;
19064 /**
19065 * The number of available addresses in the range.
19066 */
19067 AvailableAddressCount?: Integer;
19068 }
19069 export type PublicIpv4PoolRangeSet = PublicIpv4PoolRange[];
19070 export type PublicIpv4PoolSet = PublicIpv4Pool[];
19071 export interface Purchase {
19072 /**
19073 * The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At this time, the only supported currency is USD.
19074 */
19075 CurrencyCode?: CurrencyCodeValues;
19076 /**
19077 * The duration of the reservation's term in seconds.
19078 */
19079 Duration?: Integer;
19080 /**
19081 * The IDs of the Dedicated Hosts associated with the reservation.
19082 */
19083 HostIdSet?: ResponseHostIdSet;
19084 /**
19085 * The ID of the reservation.
19086 */
19087 HostReservationId?: String;
19088 /**
19089 * The hourly price of the reservation per hour.
19090 */
19091 HourlyPrice?: String;
19092 /**
19093 * The instance family on the Dedicated Host that the reservation can be associated with.
19094 */
19095 InstanceFamily?: String;
19096 /**
19097 * The payment option for the reservation.
19098 */
19099 PaymentOption?: PaymentOption;
19100 /**
19101 * The upfront price of the reservation.
19102 */
19103 UpfrontPrice?: String;
19104 }
19105 export interface PurchaseHostReservationRequest {
19106 /**
19107 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
19108 */
19109 ClientToken?: String;
19110 /**
19111 * The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
19112 */
19113 CurrencyCode?: CurrencyCodeValues;
19114 /**
19115 * The IDs of the Dedicated Hosts with which the reservation will be associated.
19116 */
19117 HostIdSet: RequestHostIdSet;
19118 /**
19119 * 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.
19120 */
19121 LimitPrice?: String;
19122 /**
19123 * The ID of the offering.
19124 */
19125 OfferingId: OfferingId;
19126 }
19127 export interface PurchaseHostReservationResult {
19128 /**
19129 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
19130 */
19131 ClientToken?: String;
19132 /**
19133 * The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
19134 */
19135 CurrencyCode?: CurrencyCodeValues;
19136 /**
19137 * Describes the details of the purchase.
19138 */
19139 Purchase?: PurchaseSet;
19140 /**
19141 * The total hourly price of the reservation calculated per hour.
19142 */
19143 TotalHourlyPrice?: String;
19144 /**
19145 * The total amount charged to your account when you purchase the reservation.
19146 */
19147 TotalUpfrontPrice?: String;
19148 }
19149 export interface PurchaseRequest {
19150 /**
19151 * The number of instances.
19152 */
19153 InstanceCount: Integer;
19154 /**
19155 * The purchase token.
19156 */
19157 PurchaseToken: String;
19158 }
19159 export type PurchaseRequestSet = PurchaseRequest[];
19160 export interface PurchaseReservedInstancesOfferingRequest {
19161 /**
19162 * The number of Reserved Instances to purchase.
19163 */
19164 InstanceCount: Integer;
19165 /**
19166 * The ID of the Reserved Instance offering to purchase.
19167 */
19168 ReservedInstancesOfferingId: ReservedInstancesOfferingId;
19169 /**
19170 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19171 */
19172 DryRun?: Boolean;
19173 /**
19174 * Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.
19175 */
19176 LimitPrice?: ReservedInstanceLimitPrice;
19177 /**
19178 * The time at which to purchase the Reserved Instance, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
19179 */
19180 PurchaseTime?: DateTime;
19181 }
19182 export interface PurchaseReservedInstancesOfferingResult {
19183 /**
19184 * The IDs of the purchased Reserved Instances.
19185 */
19186 ReservedInstancesId?: String;
19187 }
19188 export interface PurchaseScheduledInstancesRequest {
19189 /**
19190 * Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.
19191 */
19192 ClientToken?: String;
19193 /**
19194 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19195 */
19196 DryRun?: Boolean;
19197 /**
19198 * The purchase requests.
19199 */
19200 PurchaseRequests: PurchaseRequestSet;
19201 }
19202 export interface PurchaseScheduledInstancesResult {
19203 /**
19204 * Information about the Scheduled Instances.
19205 */
19206 ScheduledInstanceSet?: PurchasedScheduledInstanceSet;
19207 }
19208 export type PurchaseSet = Purchase[];
19209 export type PurchasedScheduledInstanceSet = ScheduledInstance[];
19210 export type RIProductDescription = "Linux/UNIX"|"Linux/UNIX (Amazon VPC)"|"Windows"|"Windows (Amazon VPC)"|string;
19211 export type RamdiskId = string;
19212 export type ReasonCodesList = ReportInstanceReasonCodes[];
19213 export interface RebootInstancesRequest {
19214 /**
19215 * The instance IDs.
19216 */
19217 InstanceIds: InstanceIdStringList;
19218 /**
19219 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19220 */
19221 DryRun?: Boolean;
19222 }
19223 export interface RecurringCharge {
19224 /**
19225 * The amount of the recurring charge.
19226 */
19227 Amount?: Double;
19228 /**
19229 * The frequency of the recurring charge.
19230 */
19231 Frequency?: RecurringChargeFrequency;
19232 }
19233 export type RecurringChargeFrequency = "Hourly"|string;
19234 export type RecurringChargesList = RecurringCharge[];
19235 export interface Region {
19236 /**
19237 * The Region service endpoint.
19238 */
19239 Endpoint?: String;
19240 /**
19241 * The name of the Region.
19242 */
19243 RegionName?: String;
19244 /**
19245 * The Region opt-in status. The possible values are opt-in-not-required, opted-in, and not-opted-in.
19246 */
19247 OptInStatus?: String;
19248 }
19249 export type RegionList = Region[];
19250 export type RegionNameStringList = String[];
19251 export interface RegisterImageRequest {
19252 /**
19253 * The full path to your AMI manifest in Amazon S3 storage. The specified bucket must have the aws-exec-read canned access control list (ACL) to ensure that it can be accessed by Amazon EC2. For more information, see Canned ACLs in the Amazon S3 Service Developer Guide.
19254 */
19255 ImageLocation?: String;
19256 /**
19257 * The architecture of the AMI. Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.
19258 */
19259 Architecture?: ArchitectureValues;
19260 /**
19261 * The block device mapping entries.
19262 */
19263 BlockDeviceMappings?: BlockDeviceMappingRequestList;
19264 /**
19265 * A description for your AMI.
19266 */
19267 Description?: String;
19268 /**
19269 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19270 */
19271 DryRun?: Boolean;
19272 /**
19273 * 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.
19274 */
19275 EnaSupport?: Boolean;
19276 /**
19277 * The ID of the kernel.
19278 */
19279 KernelId?: KernelId;
19280 /**
19281 * A name for your AMI. Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
19282 */
19283 Name: String;
19284 /**
19285 * 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.
19286 */
19287 BillingProducts?: BillingProductList;
19288 /**
19289 * The ID of the RAM disk.
19290 */
19291 RamdiskId?: RamdiskId;
19292 /**
19293 * The device name of the root device volume (for example, /dev/sda1).
19294 */
19295 RootDeviceName?: String;
19296 /**
19297 * 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.
19298 */
19299 SriovNetSupport?: String;
19300 /**
19301 * The type of virtualization (hvm | paravirtual). Default: paravirtual
19302 */
19303 VirtualizationType?: String;
19304 }
19305 export interface RegisterImageResult {
19306 /**
19307 * The ID of the newly registered AMI.
19308 */
19309 ImageId?: String;
19310 }
19311 export interface RegisterTransitGatewayMulticastGroupMembersRequest {
19312 /**
19313 * The ID of the transit gateway multicast domain.
19314 */
19315 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
19316 /**
19317 * The IP address assigned to the transit gateway multicast group.
19318 */
19319 GroupIpAddress?: String;
19320 /**
19321 * The group members' network interface IDs to register with the transit gateway multicast group.
19322 */
19323 NetworkInterfaceIds?: TransitGatewayNetworkInterfaceIdList;
19324 /**
19325 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19326 */
19327 DryRun?: Boolean;
19328 }
19329 export interface RegisterTransitGatewayMulticastGroupMembersResult {
19330 /**
19331 * Information about the registered transit gateway multicast group members.
19332 */
19333 RegisteredMulticastGroupMembers?: TransitGatewayMulticastRegisteredGroupMembers;
19334 }
19335 export interface RegisterTransitGatewayMulticastGroupSourcesRequest {
19336 /**
19337 * The ID of the transit gateway multicast domain.
19338 */
19339 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
19340 /**
19341 * The IP address assigned to the transit gateway multicast group.
19342 */
19343 GroupIpAddress?: String;
19344 /**
19345 * The group sources' network interface IDs to register with the transit gateway multicast group.
19346 */
19347 NetworkInterfaceIds?: TransitGatewayNetworkInterfaceIdList;
19348 /**
19349 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19350 */
19351 DryRun?: Boolean;
19352 }
19353 export interface RegisterTransitGatewayMulticastGroupSourcesResult {
19354 /**
19355 * Information about the transit gateway multicast group sources.
19356 */
19357 RegisteredMulticastGroupSources?: TransitGatewayMulticastRegisteredGroupSources;
19358 }
19359 export interface RejectTransitGatewayPeeringAttachmentRequest {
19360 /**
19361 * The ID of the transit gateway peering attachment.
19362 */
19363 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
19364 /**
19365 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19366 */
19367 DryRun?: Boolean;
19368 }
19369 export interface RejectTransitGatewayPeeringAttachmentResult {
19370 /**
19371 * The transit gateway peering attachment.
19372 */
19373 TransitGatewayPeeringAttachment?: TransitGatewayPeeringAttachment;
19374 }
19375 export interface RejectTransitGatewayVpcAttachmentRequest {
19376 /**
19377 * The ID of the attachment.
19378 */
19379 TransitGatewayAttachmentId: TransitGatewayAttachmentId;
19380 /**
19381 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19382 */
19383 DryRun?: Boolean;
19384 }
19385 export interface RejectTransitGatewayVpcAttachmentResult {
19386 /**
19387 * Information about the attachment.
19388 */
19389 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
19390 }
19391 export interface RejectVpcEndpointConnectionsRequest {
19392 /**
19393 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19394 */
19395 DryRun?: Boolean;
19396 /**
19397 * The ID of the service.
19398 */
19399 ServiceId: VpcEndpointServiceId;
19400 /**
19401 * The IDs of one or more VPC endpoints.
19402 */
19403 VpcEndpointIds: VpcEndpointIdList;
19404 }
19405 export interface RejectVpcEndpointConnectionsResult {
19406 /**
19407 * Information about the endpoints that were not rejected, if applicable.
19408 */
19409 Unsuccessful?: UnsuccessfulItemSet;
19410 }
19411 export interface RejectVpcPeeringConnectionRequest {
19412 /**
19413 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19414 */
19415 DryRun?: Boolean;
19416 /**
19417 * The ID of the VPC peering connection.
19418 */
19419 VpcPeeringConnectionId: VpcPeeringConnectionId;
19420 }
19421 export interface RejectVpcPeeringConnectionResult {
19422 /**
19423 * Returns true if the request succeeds; otherwise, it returns an error.
19424 */
19425 Return?: Boolean;
19426 }
19427 export interface ReleaseAddressRequest {
19428 /**
19429 * [EC2-VPC] The allocation ID. Required for EC2-VPC.
19430 */
19431 AllocationId?: AllocationId;
19432 /**
19433 * [EC2-Classic] The Elastic IP address. Required for EC2-Classic.
19434 */
19435 PublicIp?: String;
19436 /**
19437 * The location that the IP address is released from. If you provide an incorrect network border group, you will receive an InvalidAddress.NotFound error. For more information, see Error Codes. You cannot use a network border group with EC2 Classic. If you attempt this operation on EC2 classic, you will receive an InvalidParameterCombination error. For more information, see Error Codes.
19438 */
19439 NetworkBorderGroup?: String;
19440 /**
19441 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19442 */
19443 DryRun?: Boolean;
19444 }
19445 export interface ReleaseHostsRequest {
19446 /**
19447 * The IDs of the Dedicated Hosts to release.
19448 */
19449 HostIds: RequestHostIdList;
19450 }
19451 export interface ReleaseHostsResult {
19452 /**
19453 * The IDs of the Dedicated Hosts that were successfully released.
19454 */
19455 Successful?: ResponseHostIdList;
19456 /**
19457 * The IDs of the Dedicated Hosts that could not be released, including an error message.
19458 */
19459 Unsuccessful?: UnsuccessfulItemList;
19460 }
19461 export interface ReplaceIamInstanceProfileAssociationRequest {
19462 /**
19463 * The IAM instance profile.
19464 */
19465 IamInstanceProfile: IamInstanceProfileSpecification;
19466 /**
19467 * The ID of the existing IAM instance profile association.
19468 */
19469 AssociationId: IamInstanceProfileAssociationId;
19470 }
19471 export interface ReplaceIamInstanceProfileAssociationResult {
19472 /**
19473 * Information about the IAM instance profile association.
19474 */
19475 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
19476 }
19477 export interface ReplaceNetworkAclAssociationRequest {
19478 /**
19479 * The ID of the current association between the original network ACL and the subnet.
19480 */
19481 AssociationId: NetworkAclAssociationId;
19482 /**
19483 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19484 */
19485 DryRun?: Boolean;
19486 /**
19487 * The ID of the new network ACL to associate with the subnet.
19488 */
19489 NetworkAclId: NetworkAclId;
19490 }
19491 export interface ReplaceNetworkAclAssociationResult {
19492 /**
19493 * The ID of the new association.
19494 */
19495 NewAssociationId?: String;
19496 }
19497 export interface ReplaceNetworkAclEntryRequest {
19498 /**
19499 * The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).
19500 */
19501 CidrBlock?: String;
19502 /**
19503 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19504 */
19505 DryRun?: Boolean;
19506 /**
19507 * Indicates whether to replace the egress rule. Default: If no value is specified, we replace the ingress rule.
19508 */
19509 Egress: Boolean;
19510 /**
19511 * ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
19512 */
19513 IcmpTypeCode?: IcmpTypeCode;
19514 /**
19515 * The IPv6 network range to allow or deny, in CIDR notation (for example 2001:bd8:1234:1a00::/64).
19516 */
19517 Ipv6CidrBlock?: String;
19518 /**
19519 * The ID of the ACL.
19520 */
19521 NetworkAclId: NetworkAclId;
19522 /**
19523 * TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).
19524 */
19525 PortRange?: PortRange;
19526 /**
19527 * 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.
19528 */
19529 Protocol: String;
19530 /**
19531 * Indicates whether to allow or deny the traffic that matches the rule.
19532 */
19533 RuleAction: RuleAction;
19534 /**
19535 * The rule number of the entry to replace.
19536 */
19537 RuleNumber: Integer;
19538 }
19539 export interface ReplaceRouteRequest {
19540 /**
19541 * 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.
19542 */
19543 DestinationCidrBlock?: String;
19544 /**
19545 * 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.
19546 */
19547 DestinationIpv6CidrBlock?: String;
19548 /**
19549 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19550 */
19551 DryRun?: Boolean;
19552 /**
19553 * [IPv6 traffic only] The ID of an egress-only internet gateway.
19554 */
19555 EgressOnlyInternetGatewayId?: EgressOnlyInternetGatewayId;
19556 /**
19557 * The ID of an internet gateway or virtual private gateway.
19558 */
19559 GatewayId?: RouteGatewayId;
19560 /**
19561 * The ID of a NAT instance in your VPC.
19562 */
19563 InstanceId?: InstanceId;
19564 /**
19565 * Specifies whether to reset the local route to its default target (local).
19566 */
19567 LocalTarget?: Boolean;
19568 /**
19569 * [IPv4 traffic only] The ID of a NAT gateway.
19570 */
19571 NatGatewayId?: NatGatewayId;
19572 /**
19573 * The ID of a transit gateway.
19574 */
19575 TransitGatewayId?: TransitGatewayId;
19576 /**
19577 * The ID of the local gateway.
19578 */
19579 LocalGatewayId?: LocalGatewayId;
19580 /**
19581 * The ID of a network interface.
19582 */
19583 NetworkInterfaceId?: NetworkInterfaceId;
19584 /**
19585 * The ID of the route table.
19586 */
19587 RouteTableId: RouteTableId;
19588 /**
19589 * The ID of a VPC peering connection.
19590 */
19591 VpcPeeringConnectionId?: VpcPeeringConnectionId;
19592 }
19593 export interface ReplaceRouteTableAssociationRequest {
19594 /**
19595 * The association ID.
19596 */
19597 AssociationId: RouteTableAssociationId;
19598 /**
19599 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19600 */
19601 DryRun?: Boolean;
19602 /**
19603 * The ID of the new route table to associate with the subnet.
19604 */
19605 RouteTableId: RouteTableId;
19606 }
19607 export interface ReplaceRouteTableAssociationResult {
19608 /**
19609 * The ID of the new association.
19610 */
19611 NewAssociationId?: String;
19612 /**
19613 * The state of the association.
19614 */
19615 AssociationState?: RouteTableAssociationState;
19616 }
19617 export interface ReplaceTransitGatewayRouteRequest {
19618 /**
19619 * The CIDR range used for the destination match. Routing decisions are based on the most specific match.
19620 */
19621 DestinationCidrBlock: String;
19622 /**
19623 * The ID of the route table.
19624 */
19625 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
19626 /**
19627 * The ID of the attachment.
19628 */
19629 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
19630 /**
19631 * Indicates whether traffic matching this route is to be dropped.
19632 */
19633 Blackhole?: Boolean;
19634 /**
19635 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19636 */
19637 DryRun?: Boolean;
19638 }
19639 export interface ReplaceTransitGatewayRouteResult {
19640 /**
19641 * Information about the modified route.
19642 */
19643 Route?: TransitGatewayRoute;
19644 }
19645 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;
19646 export interface ReportInstanceStatusRequest {
19647 /**
19648 * Descriptive text about the health state of your instance.
19649 */
19650 Description?: String;
19651 /**
19652 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19653 */
19654 DryRun?: Boolean;
19655 /**
19656 * The time at which the reported instance health state ended.
19657 */
19658 EndTime?: DateTime;
19659 /**
19660 * The instances.
19661 */
19662 Instances: InstanceIdStringList;
19663 /**
19664 * The 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]
19665 */
19666 ReasonCodes: ReasonCodesList;
19667 /**
19668 * The time at which the reported instance health state began.
19669 */
19670 StartTime?: DateTime;
19671 /**
19672 * The status of all instances listed.
19673 */
19674 Status: ReportStatusType;
19675 }
19676 export type ReportStatusType = "ok"|"impaired"|string;
19677 export type RequestHostIdList = DedicatedHostId[];
19678 export type RequestHostIdSet = DedicatedHostId[];
19679 export type RequestInstanceTypeList = InstanceType[];
19680 export interface RequestLaunchTemplateData {
19681 /**
19682 * 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.
19683 */
19684 KernelId?: KernelId;
19685 /**
19686 * 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.
19687 */
19688 EbsOptimized?: Boolean;
19689 /**
19690 * The IAM instance profile.
19691 */
19692 IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecificationRequest;
19693 /**
19694 * The block device mapping.
19695 */
19696 BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingRequestList;
19697 /**
19698 * One or more network interfaces. If you specify a network interface, you must specify any security groups and subnets as part of the network interface.
19699 */
19700 NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList;
19701 /**
19702 * The ID of the AMI.
19703 */
19704 ImageId?: ImageId;
19705 /**
19706 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
19707 */
19708 InstanceType?: InstanceType;
19709 /**
19710 * 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.
19711 */
19712 KeyName?: KeyPairName;
19713 /**
19714 * The monitoring for the instance.
19715 */
19716 Monitoring?: LaunchTemplatesMonitoringRequest;
19717 /**
19718 * The placement for the instance.
19719 */
19720 Placement?: LaunchTemplatePlacementRequest;
19721 /**
19722 * 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.
19723 */
19724 RamDiskId?: RamdiskId;
19725 /**
19726 * 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 after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance.
19727 */
19728 DisableApiTermination?: Boolean;
19729 /**
19730 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
19731 */
19732 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
19733 /**
19734 * 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).
19735 */
19736 UserData?: String;
19737 /**
19738 * 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.
19739 */
19740 TagSpecifications?: LaunchTemplateTagSpecificationRequestList;
19741 /**
19742 * An elastic GPU to associate with the instance.
19743 */
19744 ElasticGpuSpecifications?: ElasticGpuSpecificationList;
19745 /**
19746 * The elastic inference accelerator for the instance.
19747 */
19748 ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorList;
19749 /**
19750 * 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.
19751 */
19752 SecurityGroupIds?: SecurityGroupIdStringList;
19753 /**
19754 * [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.
19755 */
19756 SecurityGroups?: SecurityGroupStringList;
19757 /**
19758 * The market (purchasing) option for the instances.
19759 */
19760 InstanceMarketOptions?: LaunchTemplateInstanceMarketOptionsRequest;
19761 /**
19762 * The credit option for CPU usage of the instance. Valid for T2 or T3 instances only.
19763 */
19764 CreditSpecification?: CreditSpecificationRequest;
19765 /**
19766 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
19767 */
19768 CpuOptions?: LaunchTemplateCpuOptionsRequest;
19769 /**
19770 * 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).
19771 */
19772 CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationRequest;
19773 /**
19774 * The license configurations.
19775 */
19776 LicenseSpecifications?: LaunchTemplateLicenseSpecificationListRequest;
19777 /**
19778 * Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
19779 */
19780 HibernationOptions?: LaunchTemplateHibernationOptionsRequest;
19781 /**
19782 * The metadata options for the instance. For more information, see Instance Metadata and User Data in the Amazon Elastic Compute Cloud User Guide.
19783 */
19784 MetadataOptions?: LaunchTemplateInstanceMetadataOptionsRequest;
19785 }
19786 export interface RequestSpotFleetRequest {
19787 /**
19788 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19789 */
19790 DryRun?: Boolean;
19791 /**
19792 * The configuration for the Spot Fleet request.
19793 */
19794 SpotFleetRequestConfig: SpotFleetRequestConfigData;
19795 }
19796 export interface RequestSpotFleetResponse {
19797 /**
19798 * The ID of the Spot Fleet request.
19799 */
19800 SpotFleetRequestId?: String;
19801 }
19802 export interface RequestSpotInstancesRequest {
19803 /**
19804 * 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.
19805 */
19806 AvailabilityZoneGroup?: String;
19807 /**
19808 * 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.
19809 */
19810 BlockDurationMinutes?: Integer;
19811 /**
19812 * 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.
19813 */
19814 ClientToken?: String;
19815 /**
19816 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
19817 */
19818 DryRun?: Boolean;
19819 /**
19820 * The maximum number of Spot Instances to launch. Default: 1
19821 */
19822 InstanceCount?: Integer;
19823 /**
19824 * The instance launch group. Launch groups are Spot Instances that launch together and terminate together. Default: Instances are launched and terminated individually
19825 */
19826 LaunchGroup?: String;
19827 /**
19828 * The launch specification.
19829 */
19830 LaunchSpecification?: RequestSpotLaunchSpecification;
19831 /**
19832 * The maximum price per hour that you are willing to pay for a Spot Instance. The default is the On-Demand price.
19833 */
19834 SpotPrice?: String;
19835 /**
19836 * The Spot Instance request type. Default: one-time
19837 */
19838 Type?: SpotInstanceType;
19839 /**
19840 * 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. The specified start date and time cannot be equal to the current date and time. You must specify a start date and time that occurs after the current date and time.
19841 */
19842 ValidFrom?: DateTime;
19843 /**
19844 * 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.
19845 */
19846 ValidUntil?: DateTime;
19847 /**
19848 * The behavior when a Spot Instance is interrupted. The default is terminate.
19849 */
19850 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
19851 }
19852 export interface RequestSpotInstancesResult {
19853 /**
19854 * One or more Spot Instance requests.
19855 */
19856 SpotInstanceRequests?: SpotInstanceRequestList;
19857 }
19858 export interface RequestSpotLaunchSpecification {
19859 /**
19860 * One or more security group IDs.
19861 */
19862 SecurityGroupIds?: RequestSpotLaunchSpecificationSecurityGroupIdList;
19863 /**
19864 * 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.
19865 */
19866 SecurityGroups?: RequestSpotLaunchSpecificationSecurityGroupList;
19867 /**
19868 * Deprecated.
19869 */
19870 AddressingType?: String;
19871 /**
19872 * 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.
19873 */
19874 BlockDeviceMappings?: BlockDeviceMappingList;
19875 /**
19876 * 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
19877 */
19878 EbsOptimized?: Boolean;
19879 /**
19880 * The IAM instance profile.
19881 */
19882 IamInstanceProfile?: IamInstanceProfileSpecification;
19883 /**
19884 * The ID of the AMI.
19885 */
19886 ImageId?: ImageId;
19887 /**
19888 * The instance type.
19889 */
19890 InstanceType?: InstanceType;
19891 /**
19892 * The ID of the kernel.
19893 */
19894 KernelId?: KernelId;
19895 /**
19896 * The name of the key pair.
19897 */
19898 KeyName?: KeyPairName;
19899 /**
19900 * Indicates whether basic or detailed monitoring is enabled for the instance. Default: Disabled
19901 */
19902 Monitoring?: RunInstancesMonitoringEnabled;
19903 /**
19904 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
19905 */
19906 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
19907 /**
19908 * The placement information for the instance.
19909 */
19910 Placement?: SpotPlacement;
19911 /**
19912 * The ID of the RAM disk.
19913 */
19914 RamdiskId?: RamdiskId;
19915 /**
19916 * The IDs of the subnets in which to launch the instance. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".
19917 */
19918 SubnetId?: SubnetId;
19919 /**
19920 * The Base64-encoded user data for the instance. User data is limited to 16 KB.
19921 */
19922 UserData?: String;
19923 }
19924 export type RequestSpotLaunchSpecificationSecurityGroupIdList = SecurityGroupId[];
19925 export type RequestSpotLaunchSpecificationSecurityGroupList = SecurityGroupName[];
19926 export interface Reservation {
19927 /**
19928 * [EC2-Classic only] The security groups.
19929 */
19930 Groups?: GroupIdentifierList;
19931 /**
19932 * The instances.
19933 */
19934 Instances?: InstanceList;
19935 /**
19936 * The ID of the AWS account that owns the reservation.
19937 */
19938 OwnerId?: String;
19939 /**
19940 * The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).
19941 */
19942 RequesterId?: String;
19943 /**
19944 * The ID of the reservation.
19945 */
19946 ReservationId?: String;
19947 }
19948 export type ReservationId = string;
19949 export type ReservationList = Reservation[];
19950 export type ReservationState = "payment-pending"|"payment-failed"|"active"|"retired"|string;
19951 export interface ReservationValue {
19952 /**
19953 * The hourly rate of the reservation.
19954 */
19955 HourlyPrice?: String;
19956 /**
19957 * The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).
19958 */
19959 RemainingTotalValue?: String;
19960 /**
19961 * The remaining upfront cost of the reservation.
19962 */
19963 RemainingUpfrontValue?: String;
19964 }
19965 export type ReservedInstanceIdSet = ReservationId[];
19966 export interface ReservedInstanceLimitPrice {
19967 /**
19968 * Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).
19969 */
19970 Amount?: Double;
19971 /**
19972 * The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.
19973 */
19974 CurrencyCode?: CurrencyCodeValues;
19975 }
19976 export interface ReservedInstanceReservationValue {
19977 /**
19978 * The total value of the Convertible Reserved Instance that you are exchanging.
19979 */
19980 ReservationValue?: ReservationValue;
19981 /**
19982 * The ID of the Convertible Reserved Instance that you are exchanging.
19983 */
19984 ReservedInstanceId?: String;
19985 }
19986 export type ReservedInstanceReservationValueSet = ReservedInstanceReservationValue[];
19987 export type ReservedInstanceState = "payment-pending"|"active"|"payment-failed"|"retired"|"queued"|"queued-deleted"|string;
19988 export interface ReservedInstances {
19989 /**
19990 * The Availability Zone in which the Reserved Instance can be used.
19991 */
19992 AvailabilityZone?: String;
19993 /**
19994 * The duration of the Reserved Instance, in seconds.
19995 */
19996 Duration?: Long;
19997 /**
19998 * The time when the Reserved Instance expires.
19999 */
20000 End?: DateTime;
20001 /**
20002 * The purchase price of the Reserved Instance.
20003 */
20004 FixedPrice?: Float;
20005 /**
20006 * The number of reservations purchased.
20007 */
20008 InstanceCount?: Integer;
20009 /**
20010 * The instance type on which the Reserved Instance can be used.
20011 */
20012 InstanceType?: InstanceType;
20013 /**
20014 * The Reserved Instance product platform description.
20015 */
20016 ProductDescription?: RIProductDescription;
20017 /**
20018 * The ID of the Reserved Instance.
20019 */
20020 ReservedInstancesId?: String;
20021 /**
20022 * The date and time the Reserved Instance started.
20023 */
20024 Start?: DateTime;
20025 /**
20026 * The state of the Reserved Instance purchase.
20027 */
20028 State?: ReservedInstanceState;
20029 /**
20030 * The usage price of the Reserved Instance, per hour.
20031 */
20032 UsagePrice?: Float;
20033 /**
20034 * The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.
20035 */
20036 CurrencyCode?: CurrencyCodeValues;
20037 /**
20038 * The tenancy of the instance.
20039 */
20040 InstanceTenancy?: Tenancy;
20041 /**
20042 * The offering class of the Reserved Instance.
20043 */
20044 OfferingClass?: OfferingClassType;
20045 /**
20046 * The Reserved Instance offering type.
20047 */
20048 OfferingType?: OfferingTypeValues;
20049 /**
20050 * The recurring charge tag assigned to the resource.
20051 */
20052 RecurringCharges?: RecurringChargesList;
20053 /**
20054 * The scope of the Reserved Instance.
20055 */
20056 Scope?: scope;
20057 /**
20058 * Any tags assigned to the resource.
20059 */
20060 Tags?: TagList;
20061 }
20062 export interface ReservedInstancesConfiguration {
20063 /**
20064 * The Availability Zone for the modified Reserved Instances.
20065 */
20066 AvailabilityZone?: String;
20067 /**
20068 * The number of modified Reserved Instances. This is a required field for a request.
20069 */
20070 InstanceCount?: Integer;
20071 /**
20072 * The instance type for the modified Reserved Instances.
20073 */
20074 InstanceType?: InstanceType;
20075 /**
20076 * The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.
20077 */
20078 Platform?: String;
20079 /**
20080 * Whether the Reserved Instance is applied to instances in a Region or instances in a specific Availability Zone.
20081 */
20082 Scope?: scope;
20083 }
20084 export type ReservedInstancesConfigurationList = ReservedInstancesConfiguration[];
20085 export interface ReservedInstancesId {
20086 /**
20087 * The ID of the Reserved Instance.
20088 */
20089 ReservedInstancesId?: String;
20090 }
20091 export type ReservedInstancesIdStringList = ReservationId[];
20092 export type ReservedInstancesList = ReservedInstances[];
20093 export interface ReservedInstancesListing {
20094 /**
20095 * A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.
20096 */
20097 ClientToken?: String;
20098 /**
20099 * The time the listing was created.
20100 */
20101 CreateDate?: DateTime;
20102 /**
20103 * The number of instances in this state.
20104 */
20105 InstanceCounts?: InstanceCountList;
20106 /**
20107 * The price of the Reserved Instance listing.
20108 */
20109 PriceSchedules?: PriceScheduleList;
20110 /**
20111 * The ID of the Reserved Instance.
20112 */
20113 ReservedInstancesId?: String;
20114 /**
20115 * The ID of the Reserved Instance listing.
20116 */
20117 ReservedInstancesListingId?: String;
20118 /**
20119 * The status of the Reserved Instance listing.
20120 */
20121 Status?: ListingStatus;
20122 /**
20123 * The reason for the current status of the Reserved Instance listing. The response can be blank.
20124 */
20125 StatusMessage?: String;
20126 /**
20127 * Any tags assigned to the resource.
20128 */
20129 Tags?: TagList;
20130 /**
20131 * The last modified timestamp of the listing.
20132 */
20133 UpdateDate?: DateTime;
20134 }
20135 export type ReservedInstancesListingId = string;
20136 export type ReservedInstancesListingList = ReservedInstancesListing[];
20137 export interface ReservedInstancesModification {
20138 /**
20139 * A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.
20140 */
20141 ClientToken?: String;
20142 /**
20143 * The time when the modification request was created.
20144 */
20145 CreateDate?: DateTime;
20146 /**
20147 * The time for the modification to become effective.
20148 */
20149 EffectiveDate?: DateTime;
20150 /**
20151 * Contains target configurations along with their corresponding new Reserved Instance IDs.
20152 */
20153 ModificationResults?: ReservedInstancesModificationResultList;
20154 /**
20155 * The IDs of one or more Reserved Instances.
20156 */
20157 ReservedInstancesIds?: ReservedIntancesIds;
20158 /**
20159 * A unique ID for the Reserved Instance modification.
20160 */
20161 ReservedInstancesModificationId?: String;
20162 /**
20163 * The status of the Reserved Instances modification request.
20164 */
20165 Status?: String;
20166 /**
20167 * The reason for the status.
20168 */
20169 StatusMessage?: String;
20170 /**
20171 * The time when the modification request was last updated.
20172 */
20173 UpdateDate?: DateTime;
20174 }
20175 export type ReservedInstancesModificationId = string;
20176 export type ReservedInstancesModificationIdStringList = ReservedInstancesModificationId[];
20177 export type ReservedInstancesModificationList = ReservedInstancesModification[];
20178 export interface ReservedInstancesModificationResult {
20179 /**
20180 * 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.
20181 */
20182 ReservedInstancesId?: String;
20183 /**
20184 * The target Reserved Instances configurations supplied as part of the modification request.
20185 */
20186 TargetConfiguration?: ReservedInstancesConfiguration;
20187 }
20188 export type ReservedInstancesModificationResultList = ReservedInstancesModificationResult[];
20189 export interface ReservedInstancesOffering {
20190 /**
20191 * The Availability Zone in which the Reserved Instance can be used.
20192 */
20193 AvailabilityZone?: String;
20194 /**
20195 * The duration of the Reserved Instance, in seconds.
20196 */
20197 Duration?: Long;
20198 /**
20199 * The purchase price of the Reserved Instance.
20200 */
20201 FixedPrice?: Float;
20202 /**
20203 * The instance type on which the Reserved Instance can be used.
20204 */
20205 InstanceType?: InstanceType;
20206 /**
20207 * The Reserved Instance product platform description.
20208 */
20209 ProductDescription?: RIProductDescription;
20210 /**
20211 * The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to confirm that an exchange can be made.
20212 */
20213 ReservedInstancesOfferingId?: String;
20214 /**
20215 * The usage price of the Reserved Instance, per hour.
20216 */
20217 UsagePrice?: Float;
20218 /**
20219 * 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.
20220 */
20221 CurrencyCode?: CurrencyCodeValues;
20222 /**
20223 * The tenancy of the instance.
20224 */
20225 InstanceTenancy?: Tenancy;
20226 /**
20227 * 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.
20228 */
20229 Marketplace?: Boolean;
20230 /**
20231 * 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.
20232 */
20233 OfferingClass?: OfferingClassType;
20234 /**
20235 * The Reserved Instance offering type.
20236 */
20237 OfferingType?: OfferingTypeValues;
20238 /**
20239 * The pricing details of the Reserved Instance offering.
20240 */
20241 PricingDetails?: PricingDetailsList;
20242 /**
20243 * The recurring charge tag assigned to the resource.
20244 */
20245 RecurringCharges?: RecurringChargesList;
20246 /**
20247 * Whether the Reserved Instance is applied to instances in a Region or an Availability Zone.
20248 */
20249 Scope?: scope;
20250 }
20251 export type ReservedInstancesOfferingId = string;
20252 export type ReservedInstancesOfferingIdStringList = ReservedInstancesOfferingId[];
20253 export type ReservedInstancesOfferingList = ReservedInstancesOffering[];
20254 export type ReservedIntancesIds = ReservedInstancesId[];
20255 export interface ResetEbsDefaultKmsKeyIdRequest {
20256 /**
20257 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20258 */
20259 DryRun?: Boolean;
20260 }
20261 export interface ResetEbsDefaultKmsKeyIdResult {
20262 /**
20263 * The Amazon Resource Name (ARN) of the default CMK for EBS encryption by default.
20264 */
20265 KmsKeyId?: String;
20266 }
20267 export type ResetFpgaImageAttributeName = "loadPermission"|string;
20268 export interface ResetFpgaImageAttributeRequest {
20269 /**
20270 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20271 */
20272 DryRun?: Boolean;
20273 /**
20274 * The ID of the AFI.
20275 */
20276 FpgaImageId: FpgaImageId;
20277 /**
20278 * The attribute.
20279 */
20280 Attribute?: ResetFpgaImageAttributeName;
20281 }
20282 export interface ResetFpgaImageAttributeResult {
20283 /**
20284 * Is true if the request succeeds, and an error otherwise.
20285 */
20286 Return?: Boolean;
20287 }
20288 export type ResetImageAttributeName = "launchPermission"|string;
20289 export interface ResetImageAttributeRequest {
20290 /**
20291 * The attribute to reset (currently you can only reset the launch permission attribute).
20292 */
20293 Attribute: ResetImageAttributeName;
20294 /**
20295 * The ID of the AMI.
20296 */
20297 ImageId: ImageId;
20298 /**
20299 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20300 */
20301 DryRun?: Boolean;
20302 }
20303 export interface ResetInstanceAttributeRequest {
20304 /**
20305 * The attribute to reset. You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. To change an instance attribute, use ModifyInstanceAttribute.
20306 */
20307 Attribute: InstanceAttributeName;
20308 /**
20309 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20310 */
20311 DryRun?: Boolean;
20312 /**
20313 * The ID of the instance.
20314 */
20315 InstanceId: InstanceId;
20316 }
20317 export interface ResetNetworkInterfaceAttributeRequest {
20318 /**
20319 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20320 */
20321 DryRun?: Boolean;
20322 /**
20323 * The ID of the network interface.
20324 */
20325 NetworkInterfaceId: NetworkInterfaceId;
20326 /**
20327 * The source/destination checking attribute. Resets the value to true.
20328 */
20329 SourceDestCheck?: String;
20330 }
20331 export interface ResetSnapshotAttributeRequest {
20332 /**
20333 * The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.
20334 */
20335 Attribute: SnapshotAttributeName;
20336 /**
20337 * The ID of the snapshot.
20338 */
20339 SnapshotId: SnapshotId;
20340 /**
20341 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20342 */
20343 DryRun?: Boolean;
20344 }
20345 export type ResourceIdList = TaggableResourceId[];
20346 export type ResourceList = String[];
20347 export type ResourceType = "client-vpn-endpoint"|"customer-gateway"|"dedicated-host"|"dhcp-options"|"elastic-ip"|"fleet"|"fpga-image"|"host-reservation"|"image"|"instance"|"internet-gateway"|"key-pair"|"launch-template"|"natgateway"|"network-acl"|"network-interface"|"placement-group"|"reserved-instances"|"route-table"|"security-group"|"snapshot"|"spot-fleet-request"|"spot-instances-request"|"subnet"|"traffic-mirror-filter"|"traffic-mirror-session"|"traffic-mirror-target"|"transit-gateway"|"transit-gateway-attachment"|"transit-gateway-multicast-domain"|"transit-gateway-route-table"|"volume"|"vpc"|"vpc-peering-connection"|"vpn-connection"|"vpn-gateway"|"vpc-flow-log"|string;
20348 export interface ResponseError {
20349 /**
20350 * The error code.
20351 */
20352 Code?: LaunchTemplateErrorCode;
20353 /**
20354 * The error message, if applicable.
20355 */
20356 Message?: String;
20357 }
20358 export type ResponseHostIdList = String[];
20359 export type ResponseHostIdSet = String[];
20360 export interface ResponseLaunchTemplateData {
20361 /**
20362 * The ID of the kernel, if applicable.
20363 */
20364 KernelId?: String;
20365 /**
20366 * Indicates whether the instance is optimized for Amazon EBS I/O.
20367 */
20368 EbsOptimized?: Boolean;
20369 /**
20370 * The IAM instance profile.
20371 */
20372 IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecification;
20373 /**
20374 * The block device mappings.
20375 */
20376 BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingList;
20377 /**
20378 * The network interfaces.
20379 */
20380 NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationList;
20381 /**
20382 * The ID of the AMI that was used to launch the instance.
20383 */
20384 ImageId?: String;
20385 /**
20386 * The instance type.
20387 */
20388 InstanceType?: InstanceType;
20389 /**
20390 * The name of the key pair.
20391 */
20392 KeyName?: String;
20393 /**
20394 * The monitoring for the instance.
20395 */
20396 Monitoring?: LaunchTemplatesMonitoring;
20397 /**
20398 * The placement of the instance.
20399 */
20400 Placement?: LaunchTemplatePlacement;
20401 /**
20402 * The ID of the RAM disk, if applicable.
20403 */
20404 RamDiskId?: String;
20405 /**
20406 * If set to true, indicates that the instance cannot be terminated using the Amazon EC2 console, command line tool, or API.
20407 */
20408 DisableApiTermination?: Boolean;
20409 /**
20410 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
20411 */
20412 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
20413 /**
20414 * The user data for the instance.
20415 */
20416 UserData?: String;
20417 /**
20418 * The tags.
20419 */
20420 TagSpecifications?: LaunchTemplateTagSpecificationList;
20421 /**
20422 * The elastic GPU specification.
20423 */
20424 ElasticGpuSpecifications?: ElasticGpuSpecificationResponseList;
20425 /**
20426 * The elastic inference accelerator for the instance.
20427 */
20428 ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorResponseList;
20429 /**
20430 * The security group IDs.
20431 */
20432 SecurityGroupIds?: ValueStringList;
20433 /**
20434 * The security group names.
20435 */
20436 SecurityGroups?: ValueStringList;
20437 /**
20438 * The market (purchasing) option for the instances.
20439 */
20440 InstanceMarketOptions?: LaunchTemplateInstanceMarketOptions;
20441 /**
20442 * The credit option for CPU usage of the instance.
20443 */
20444 CreditSpecification?: CreditSpecification;
20445 /**
20446 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
20447 */
20448 CpuOptions?: LaunchTemplateCpuOptions;
20449 /**
20450 * Information about the Capacity Reservation targeting option.
20451 */
20452 CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationResponse;
20453 /**
20454 * The license configurations.
20455 */
20456 LicenseSpecifications?: LaunchTemplateLicenseList;
20457 /**
20458 * Indicates whether an instance is configured for hibernation. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
20459 */
20460 HibernationOptions?: LaunchTemplateHibernationOptions;
20461 /**
20462 * The metadata options for the instance. For more information, see Instance Metadata and User Data in the Amazon Elastic Compute Cloud User Guide.
20463 */
20464 MetadataOptions?: LaunchTemplateInstanceMetadataOptions;
20465 }
20466 export type RestorableByStringList = String[];
20467 export interface RestoreAddressToClassicRequest {
20468 /**
20469 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20470 */
20471 DryRun?: Boolean;
20472 /**
20473 * The Elastic IP address.
20474 */
20475 PublicIp: String;
20476 }
20477 export interface RestoreAddressToClassicResult {
20478 /**
20479 * The Elastic IP address.
20480 */
20481 PublicIp?: String;
20482 /**
20483 * The move status for the IP address.
20484 */
20485 Status?: Status;
20486 }
20487 export interface RevokeClientVpnIngressRequest {
20488 /**
20489 * The ID of the Client VPN endpoint with which the authorization rule is associated.
20490 */
20491 ClientVpnEndpointId: ClientVpnEndpointId;
20492 /**
20493 * The IPv4 address range, in CIDR notation, of the network for which access is being removed.
20494 */
20495 TargetNetworkCidr: String;
20496 /**
20497 * The ID of the Active Directory group for which to revoke access.
20498 */
20499 AccessGroupId?: String;
20500 /**
20501 * Indicates whether access should be revoked for all clients.
20502 */
20503 RevokeAllGroups?: Boolean;
20504 /**
20505 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20506 */
20507 DryRun?: Boolean;
20508 }
20509 export interface RevokeClientVpnIngressResult {
20510 /**
20511 * The current state of the authorization rule.
20512 */
20513 Status?: ClientVpnAuthorizationRuleStatus;
20514 }
20515 export interface RevokeSecurityGroupEgressRequest {
20516 /**
20517 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20518 */
20519 DryRun?: Boolean;
20520 /**
20521 * The ID of the security group.
20522 */
20523 GroupId: SecurityGroupId;
20524 /**
20525 * The sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.
20526 */
20527 IpPermissions?: IpPermissionList;
20528 /**
20529 * Not supported. Use a set of IP permissions to specify the CIDR.
20530 */
20531 CidrIp?: String;
20532 /**
20533 * Not supported. Use a set of IP permissions to specify the port.
20534 */
20535 FromPort?: Integer;
20536 /**
20537 * Not supported. Use a set of IP permissions to specify the protocol name or number.
20538 */
20539 IpProtocol?: String;
20540 /**
20541 * Not supported. Use a set of IP permissions to specify the port.
20542 */
20543 ToPort?: Integer;
20544 /**
20545 * Not supported. Use a set of IP permissions to specify a destination security group.
20546 */
20547 SourceSecurityGroupName?: String;
20548 /**
20549 * Not supported. Use a set of IP permissions to specify a destination security group.
20550 */
20551 SourceSecurityGroupOwnerId?: String;
20552 }
20553 export interface RevokeSecurityGroupIngressRequest {
20554 /**
20555 * The CIDR IP address range. You can't specify this parameter when specifying a source security group.
20556 */
20557 CidrIp?: String;
20558 /**
20559 * 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.
20560 */
20561 FromPort?: Integer;
20562 /**
20563 * 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.
20564 */
20565 GroupId?: SecurityGroupId;
20566 /**
20567 * [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.
20568 */
20569 GroupName?: SecurityGroupName;
20570 /**
20571 * The sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.
20572 */
20573 IpPermissions?: IpPermissionList;
20574 /**
20575 * The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.
20576 */
20577 IpProtocol?: String;
20578 /**
20579 * [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.
20580 */
20581 SourceSecurityGroupName?: String;
20582 /**
20583 * [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.
20584 */
20585 SourceSecurityGroupOwnerId?: String;
20586 /**
20587 * 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.
20588 */
20589 ToPort?: Integer;
20590 /**
20591 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20592 */
20593 DryRun?: Boolean;
20594 }
20595 export type RootDeviceType = "ebs"|"instance-store"|string;
20596 export type RootDeviceTypeList = RootDeviceType[];
20597 export interface Route {
20598 /**
20599 * The IPv4 CIDR block used for the destination match.
20600 */
20601 DestinationCidrBlock?: String;
20602 /**
20603 * The IPv6 CIDR block used for the destination match.
20604 */
20605 DestinationIpv6CidrBlock?: String;
20606 /**
20607 * The prefix of the AWS service.
20608 */
20609 DestinationPrefixListId?: String;
20610 /**
20611 * The ID of the egress-only internet gateway.
20612 */
20613 EgressOnlyInternetGatewayId?: String;
20614 /**
20615 * The ID of a gateway attached to your VPC.
20616 */
20617 GatewayId?: String;
20618 /**
20619 * The ID of a NAT instance in your VPC.
20620 */
20621 InstanceId?: String;
20622 /**
20623 * The AWS account ID of the owner of the instance.
20624 */
20625 InstanceOwnerId?: String;
20626 /**
20627 * The ID of a NAT gateway.
20628 */
20629 NatGatewayId?: String;
20630 /**
20631 * The ID of a transit gateway.
20632 */
20633 TransitGatewayId?: String;
20634 /**
20635 * The ID of the local gateway.
20636 */
20637 LocalGatewayId?: String;
20638 /**
20639 * The ID of the network interface.
20640 */
20641 NetworkInterfaceId?: String;
20642 /**
20643 * 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.
20644 */
20645 Origin?: RouteOrigin;
20646 /**
20647 * 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).
20648 */
20649 State?: RouteState;
20650 /**
20651 * The ID of a VPC peering connection.
20652 */
20653 VpcPeeringConnectionId?: String;
20654 }
20655 export type RouteGatewayId = string;
20656 export type RouteList = Route[];
20657 export type RouteOrigin = "CreateRouteTable"|"CreateRoute"|"EnableVgwRoutePropagation"|string;
20658 export type RouteState = "active"|"blackhole"|string;
20659 export interface RouteTable {
20660 /**
20661 * The associations between the route table and one or more subnets or a gateway.
20662 */
20663 Associations?: RouteTableAssociationList;
20664 /**
20665 * Any virtual private gateway (VGW) propagating routes.
20666 */
20667 PropagatingVgws?: PropagatingVgwList;
20668 /**
20669 * The ID of the route table.
20670 */
20671 RouteTableId?: String;
20672 /**
20673 * The routes in the route table.
20674 */
20675 Routes?: RouteList;
20676 /**
20677 * Any tags assigned to the route table.
20678 */
20679 Tags?: TagList;
20680 /**
20681 * The ID of the VPC.
20682 */
20683 VpcId?: String;
20684 /**
20685 * The ID of the AWS account that owns the route table.
20686 */
20687 OwnerId?: String;
20688 }
20689 export interface RouteTableAssociation {
20690 /**
20691 * Indicates whether this is the main route table.
20692 */
20693 Main?: Boolean;
20694 /**
20695 * The ID of the association.
20696 */
20697 RouteTableAssociationId?: String;
20698 /**
20699 * The ID of the route table.
20700 */
20701 RouteTableId?: String;
20702 /**
20703 * The ID of the subnet. A subnet ID is not returned for an implicit association.
20704 */
20705 SubnetId?: String;
20706 /**
20707 * The ID of the internet gateway or virtual private gateway.
20708 */
20709 GatewayId?: String;
20710 /**
20711 * The state of the association.
20712 */
20713 AssociationState?: RouteTableAssociationState;
20714 }
20715 export type RouteTableAssociationId = string;
20716 export type RouteTableAssociationList = RouteTableAssociation[];
20717 export interface RouteTableAssociationState {
20718 /**
20719 * The state of the association.
20720 */
20721 State?: RouteTableAssociationStateCode;
20722 /**
20723 * The status message, if applicable.
20724 */
20725 StatusMessage?: String;
20726 }
20727 export type RouteTableAssociationStateCode = "associating"|"associated"|"disassociating"|"disassociated"|"failed"|string;
20728 export type RouteTableId = string;
20729 export type RouteTableIdStringList = RouteTableId[];
20730 export type RouteTableList = RouteTable[];
20731 export type RuleAction = "allow"|"deny"|string;
20732 export interface RunInstancesMonitoringEnabled {
20733 /**
20734 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
20735 */
20736 Enabled: Boolean;
20737 }
20738 export interface RunInstancesRequest {
20739 /**
20740 * The block device mapping entries.
20741 */
20742 BlockDeviceMappings?: BlockDeviceMappingRequestList;
20743 /**
20744 * The ID of the AMI. An AMI ID is required to launch an instance and must be specified here or in a launch template.
20745 */
20746 ImageId?: ImageId;
20747 /**
20748 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide. Default: m1.small
20749 */
20750 InstanceType?: InstanceType;
20751 /**
20752 * [EC2-VPC] The 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.
20753 */
20754 Ipv6AddressCount?: Integer;
20755 /**
20756 * [EC2-VPC] The 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.
20757 */
20758 Ipv6Addresses?: InstanceIpv6AddressList;
20759 /**
20760 * 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.
20761 */
20762 KernelId?: KernelId;
20763 /**
20764 * 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.
20765 */
20766 KeyName?: KeyPairName;
20767 /**
20768 * 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.
20769 */
20770 MaxCount: Integer;
20771 /**
20772 * 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.
20773 */
20774 MinCount: Integer;
20775 /**
20776 * Specifies whether detailed monitoring is enabled for the instance.
20777 */
20778 Monitoring?: RunInstancesMonitoringEnabled;
20779 /**
20780 * The placement for the instance.
20781 */
20782 Placement?: Placement;
20783 /**
20784 * The ID of the RAM disk to select. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, go to the AWS Resource Center and search for the kernel ID. 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.
20785 */
20786 RamdiskId?: RamdiskId;
20787 /**
20788 * The IDs of the security groups. You can create a security group using CreateSecurityGroup. If you specify a network interface, you must specify any security groups as part of the network interface.
20789 */
20790 SecurityGroupIds?: SecurityGroupIdStringList;
20791 /**
20792 * [EC2-Classic, default VPC] The names of the security groups. For a nondefault VPC, you must use security group IDs instead. If you specify a network interface, you must specify any security groups as part of the network interface. Default: Amazon EC2 uses the default security group.
20793 */
20794 SecurityGroups?: SecurityGroupStringList;
20795 /**
20796 * [EC2-VPC] The ID of the subnet to launch the instance into. If you specify a network interface, you must specify any subnets as part of the network interface.
20797 */
20798 SubnetId?: SubnetId;
20799 /**
20800 * 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. User data is limited to 16 KB.
20801 */
20802 UserData?: String;
20803 /**
20804 * Reserved.
20805 */
20806 AdditionalInfo?: String;
20807 /**
20808 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. If you do not specify a client token, a randomly generated token is used for the request to ensure idempotency. For more information, see Ensuring Idempotency. Constraints: Maximum 64 ASCII characters
20809 */
20810 ClientToken?: String;
20811 /**
20812 * 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 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
20813 */
20814 DisableApiTermination?: Boolean;
20815 /**
20816 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20817 */
20818 DryRun?: Boolean;
20819 /**
20820 * 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
20821 */
20822 EbsOptimized?: Boolean;
20823 /**
20824 * The IAM instance profile.
20825 */
20826 IamInstanceProfile?: IamInstanceProfileSpecification;
20827 /**
20828 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
20829 */
20830 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
20831 /**
20832 * The network interfaces to associate with the instance. If you specify a network interface, you must specify any security groups and subnets as part of the network interface.
20833 */
20834 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
20835 /**
20836 * [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.
20837 */
20838 PrivateIpAddress?: String;
20839 /**
20840 * An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that you can attach to your Windows instance to accelerate the graphics performance of your applications. For more information, see Amazon EC2 Elastic GPUs in the Amazon Elastic Compute Cloud User Guide.
20841 */
20842 ElasticGpuSpecification?: ElasticGpuSpecifications;
20843 /**
20844 * An elastic inference accelerator to associate with the instance. Elastic inference accelerators are a resource you can attach to your Amazon EC2 instances to accelerate your Deep Learning (DL) inference workloads.
20845 */
20846 ElasticInferenceAccelerators?: ElasticInferenceAccelerators;
20847 /**
20848 * 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.
20849 */
20850 TagSpecifications?: TagSpecificationList;
20851 /**
20852 * 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.
20853 */
20854 LaunchTemplate?: LaunchTemplateSpecification;
20855 /**
20856 * 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.
20857 */
20858 InstanceMarketOptions?: InstanceMarketOptionsRequest;
20859 /**
20860 * The credit option for CPU usage of the burstable performance 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/T3a instances)
20861 */
20862 CreditSpecification?: CreditSpecificationRequest;
20863 /**
20864 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
20865 */
20866 CpuOptions?: CpuOptionsRequest;
20867 /**
20868 * 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).
20869 */
20870 CapacityReservationSpecification?: CapacityReservationSpecification;
20871 /**
20872 * Indicates whether an instance is enabled for hibernation. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
20873 */
20874 HibernationOptions?: HibernationOptionsRequest;
20875 /**
20876 * The license configurations.
20877 */
20878 LicenseSpecifications?: LicenseSpecificationListRequest;
20879 /**
20880 * The metadata options for the instance. For more information, see Instance Metadata and User Data.
20881 */
20882 MetadataOptions?: InstanceMetadataOptionsRequest;
20883 }
20884 export interface RunScheduledInstancesRequest {
20885 /**
20886 * Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.
20887 */
20888 ClientToken?: String;
20889 /**
20890 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
20891 */
20892 DryRun?: Boolean;
20893 /**
20894 * The number of instances. Default: 1
20895 */
20896 InstanceCount?: Integer;
20897 /**
20898 * The launch specification. You must match the instance type, Availability Zone, network, and platform of the schedule that you purchased.
20899 */
20900 LaunchSpecification: ScheduledInstancesLaunchSpecification;
20901 /**
20902 * The Scheduled Instance ID.
20903 */
20904 ScheduledInstanceId: ScheduledInstanceId;
20905 }
20906 export interface RunScheduledInstancesResult {
20907 /**
20908 * The IDs of the newly launched instances.
20909 */
20910 InstanceIdSet?: InstanceIdSet;
20911 }
20912 export interface S3Storage {
20913 /**
20914 * 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.
20915 */
20916 AWSAccessKeyId?: String;
20917 /**
20918 * 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.
20919 */
20920 Bucket?: String;
20921 /**
20922 * The beginning of the file name of the AMI.
20923 */
20924 Prefix?: String;
20925 /**
20926 * An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.
20927 */
20928 UploadPolicy?: _Blob;
20929 /**
20930 * The signature of the JSON document.
20931 */
20932 UploadPolicySignature?: String;
20933 }
20934 export interface ScheduledInstance {
20935 /**
20936 * The Availability Zone.
20937 */
20938 AvailabilityZone?: String;
20939 /**
20940 * The date when the Scheduled Instance was purchased.
20941 */
20942 CreateDate?: DateTime;
20943 /**
20944 * The hourly price for a single instance.
20945 */
20946 HourlyPrice?: String;
20947 /**
20948 * The number of instances.
20949 */
20950 InstanceCount?: Integer;
20951 /**
20952 * The instance type.
20953 */
20954 InstanceType?: String;
20955 /**
20956 * The network platform (EC2-Classic or EC2-VPC).
20957 */
20958 NetworkPlatform?: String;
20959 /**
20960 * The time for the next schedule to start.
20961 */
20962 NextSlotStartTime?: DateTime;
20963 /**
20964 * The platform (Linux/UNIX or Windows).
20965 */
20966 Platform?: String;
20967 /**
20968 * The time that the previous schedule ended or will end.
20969 */
20970 PreviousSlotEndTime?: DateTime;
20971 /**
20972 * The schedule recurrence.
20973 */
20974 Recurrence?: ScheduledInstanceRecurrence;
20975 /**
20976 * The Scheduled Instance ID.
20977 */
20978 ScheduledInstanceId?: String;
20979 /**
20980 * The number of hours in the schedule.
20981 */
20982 SlotDurationInHours?: Integer;
20983 /**
20984 * The end date for the Scheduled Instance.
20985 */
20986 TermEndDate?: DateTime;
20987 /**
20988 * The start date for the Scheduled Instance.
20989 */
20990 TermStartDate?: DateTime;
20991 /**
20992 * The total number of hours for a single instance for the entire term.
20993 */
20994 TotalScheduledInstanceHours?: Integer;
20995 }
20996 export interface ScheduledInstanceAvailability {
20997 /**
20998 * The Availability Zone.
20999 */
21000 AvailabilityZone?: String;
21001 /**
21002 * The number of available instances.
21003 */
21004 AvailableInstanceCount?: Integer;
21005 /**
21006 * The time period for the first schedule to start.
21007 */
21008 FirstSlotStartTime?: DateTime;
21009 /**
21010 * The hourly price for a single instance.
21011 */
21012 HourlyPrice?: String;
21013 /**
21014 * The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
21015 */
21016 InstanceType?: String;
21017 /**
21018 * The maximum term. The only possible value is 365 days.
21019 */
21020 MaxTermDurationInDays?: Integer;
21021 /**
21022 * The minimum term. The only possible value is 365 days.
21023 */
21024 MinTermDurationInDays?: Integer;
21025 /**
21026 * The network platform (EC2-Classic or EC2-VPC).
21027 */
21028 NetworkPlatform?: String;
21029 /**
21030 * The platform (Linux/UNIX or Windows).
21031 */
21032 Platform?: String;
21033 /**
21034 * The purchase token. This token expires in two hours.
21035 */
21036 PurchaseToken?: String;
21037 /**
21038 * The schedule recurrence.
21039 */
21040 Recurrence?: ScheduledInstanceRecurrence;
21041 /**
21042 * The number of hours in the schedule.
21043 */
21044 SlotDurationInHours?: Integer;
21045 /**
21046 * The total number of hours for a single instance for the entire term.
21047 */
21048 TotalScheduledInstanceHours?: Integer;
21049 }
21050 export type ScheduledInstanceAvailabilitySet = ScheduledInstanceAvailability[];
21051 export type ScheduledInstanceId = string;
21052 export type ScheduledInstanceIdRequestSet = ScheduledInstanceId[];
21053 export interface ScheduledInstanceRecurrence {
21054 /**
21055 * The frequency (Daily, Weekly, or Monthly).
21056 */
21057 Frequency?: String;
21058 /**
21059 * The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.
21060 */
21061 Interval?: Integer;
21062 /**
21063 * 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).
21064 */
21065 OccurrenceDaySet?: OccurrenceDaySet;
21066 /**
21067 * Indicates whether the occurrence is relative to the end of the specified week or month.
21068 */
21069 OccurrenceRelativeToEnd?: Boolean;
21070 /**
21071 * The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).
21072 */
21073 OccurrenceUnit?: String;
21074 }
21075 export interface ScheduledInstanceRecurrenceRequest {
21076 /**
21077 * The frequency (Daily, Weekly, or Monthly).
21078 */
21079 Frequency?: String;
21080 /**
21081 * The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.
21082 */
21083 Interval?: Integer;
21084 /**
21085 * 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.
21086 */
21087 OccurrenceDays?: OccurrenceDayRequestSet;
21088 /**
21089 * 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.
21090 */
21091 OccurrenceRelativeToEnd?: Boolean;
21092 /**
21093 * 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.
21094 */
21095 OccurrenceUnit?: String;
21096 }
21097 export type ScheduledInstanceSet = ScheduledInstance[];
21098 export interface ScheduledInstancesBlockDeviceMapping {
21099 /**
21100 * The device name (for example, /dev/sdh or xvdh).
21101 */
21102 DeviceName?: String;
21103 /**
21104 * Parameters used to set up EBS volumes automatically when the instance is launched.
21105 */
21106 Ebs?: ScheduledInstancesEbs;
21107 /**
21108 * Suppresses the specified device included in the block device mapping of the AMI.
21109 */
21110 NoDevice?: String;
21111 /**
21112 * 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.
21113 */
21114 VirtualName?: String;
21115 }
21116 export type ScheduledInstancesBlockDeviceMappingSet = ScheduledInstancesBlockDeviceMapping[];
21117 export interface ScheduledInstancesEbs {
21118 /**
21119 * Indicates whether the volume is deleted on instance termination.
21120 */
21121 DeleteOnTermination?: Boolean;
21122 /**
21123 * Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.
21124 */
21125 Encrypted?: Boolean;
21126 /**
21127 * 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.
21128 */
21129 Iops?: Integer;
21130 /**
21131 * The ID of the snapshot.
21132 */
21133 SnapshotId?: SnapshotId;
21134 /**
21135 * 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.
21136 */
21137 VolumeSize?: Integer;
21138 /**
21139 * 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: gp2
21140 */
21141 VolumeType?: String;
21142 }
21143 export interface ScheduledInstancesIamInstanceProfile {
21144 /**
21145 * The Amazon Resource Name (ARN).
21146 */
21147 Arn?: String;
21148 /**
21149 * The name.
21150 */
21151 Name?: String;
21152 }
21153 export interface ScheduledInstancesIpv6Address {
21154 /**
21155 * The IPv6 address.
21156 */
21157 Ipv6Address?: Ipv6Address;
21158 }
21159 export type ScheduledInstancesIpv6AddressList = ScheduledInstancesIpv6Address[];
21160 export interface ScheduledInstancesLaunchSpecification {
21161 /**
21162 * The block device mapping entries.
21163 */
21164 BlockDeviceMappings?: ScheduledInstancesBlockDeviceMappingSet;
21165 /**
21166 * 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
21167 */
21168 EbsOptimized?: Boolean;
21169 /**
21170 * The IAM instance profile.
21171 */
21172 IamInstanceProfile?: ScheduledInstancesIamInstanceProfile;
21173 /**
21174 * The ID of the Amazon Machine Image (AMI).
21175 */
21176 ImageId: ImageId;
21177 /**
21178 * The instance type.
21179 */
21180 InstanceType?: String;
21181 /**
21182 * The ID of the kernel.
21183 */
21184 KernelId?: KernelId;
21185 /**
21186 * The name of the key pair.
21187 */
21188 KeyName?: KeyPairName;
21189 /**
21190 * Enable or disable monitoring for the instances.
21191 */
21192 Monitoring?: ScheduledInstancesMonitoring;
21193 /**
21194 * The network interfaces.
21195 */
21196 NetworkInterfaces?: ScheduledInstancesNetworkInterfaceSet;
21197 /**
21198 * The placement information.
21199 */
21200 Placement?: ScheduledInstancesPlacement;
21201 /**
21202 * The ID of the RAM disk.
21203 */
21204 RamdiskId?: RamdiskId;
21205 /**
21206 * The IDs of the security groups.
21207 */
21208 SecurityGroupIds?: ScheduledInstancesSecurityGroupIdSet;
21209 /**
21210 * The ID of the subnet in which to launch the instances.
21211 */
21212 SubnetId?: SubnetId;
21213 /**
21214 * The base64-encoded MIME user data.
21215 */
21216 UserData?: String;
21217 }
21218 export interface ScheduledInstancesMonitoring {
21219 /**
21220 * Indicates whether monitoring is enabled.
21221 */
21222 Enabled?: Boolean;
21223 }
21224 export interface ScheduledInstancesNetworkInterface {
21225 /**
21226 * 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.
21227 */
21228 AssociatePublicIpAddress?: Boolean;
21229 /**
21230 * Indicates whether to delete the interface when the instance is terminated.
21231 */
21232 DeleteOnTermination?: Boolean;
21233 /**
21234 * The description.
21235 */
21236 Description?: String;
21237 /**
21238 * The index of the device for the network interface attachment.
21239 */
21240 DeviceIndex?: Integer;
21241 /**
21242 * The IDs of the security groups.
21243 */
21244 Groups?: ScheduledInstancesSecurityGroupIdSet;
21245 /**
21246 * The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.
21247 */
21248 Ipv6AddressCount?: Integer;
21249 /**
21250 * The specific IPv6 addresses from the subnet range.
21251 */
21252 Ipv6Addresses?: ScheduledInstancesIpv6AddressList;
21253 /**
21254 * The ID of the network interface.
21255 */
21256 NetworkInterfaceId?: NetworkInterfaceId;
21257 /**
21258 * The IPv4 address of the network interface within the subnet.
21259 */
21260 PrivateIpAddress?: String;
21261 /**
21262 * The private IPv4 addresses.
21263 */
21264 PrivateIpAddressConfigs?: PrivateIpAddressConfigSet;
21265 /**
21266 * The number of secondary private IPv4 addresses.
21267 */
21268 SecondaryPrivateIpAddressCount?: Integer;
21269 /**
21270 * The ID of the subnet.
21271 */
21272 SubnetId?: SubnetId;
21273 }
21274 export type ScheduledInstancesNetworkInterfaceSet = ScheduledInstancesNetworkInterface[];
21275 export interface ScheduledInstancesPlacement {
21276 /**
21277 * The Availability Zone.
21278 */
21279 AvailabilityZone?: String;
21280 /**
21281 * The name of the placement group.
21282 */
21283 GroupName?: PlacementGroupName;
21284 }
21285 export interface ScheduledInstancesPrivateIpAddressConfig {
21286 /**
21287 * Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary IPv4 address.
21288 */
21289 Primary?: Boolean;
21290 /**
21291 * The IPv4 address.
21292 */
21293 PrivateIpAddress?: String;
21294 }
21295 export type ScheduledInstancesSecurityGroupIdSet = SecurityGroupId[];
21296 export interface SearchLocalGatewayRoutesRequest {
21297 /**
21298 * The ID of the local gateway route table.
21299 */
21300 LocalGatewayRouteTableId: LocalGatewayRoutetableId;
21301 /**
21302 * One or more filters.
21303 */
21304 Filters: FilterList;
21305 /**
21306 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
21307 */
21308 MaxResults?: MaxResults;
21309 /**
21310 * The token for the next page of results.
21311 */
21312 NextToken?: String;
21313 /**
21314 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
21315 */
21316 DryRun?: Boolean;
21317 }
21318 export interface SearchLocalGatewayRoutesResult {
21319 /**
21320 * Information about the routes.
21321 */
21322 Routes?: LocalGatewayRouteList;
21323 /**
21324 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
21325 */
21326 NextToken?: String;
21327 }
21328 export interface SearchTransitGatewayMulticastGroupsRequest {
21329 /**
21330 * The ID of the transit gateway multicast domain.
21331 */
21332 TransitGatewayMulticastDomainId?: TransitGatewayMulticastDomainId;
21333 /**
21334 * One or more filters. The possible values are: group-ip-address - The IP address of the transit gateway multicast group. is-group-member - The resource is a group member. Valid values are true | false. is-group-source - The resource is a group source. Valid values are true | false. member-type - The member type. Valid values are igmp | static. resource-id - The ID of the resource. resource-type - The type of resource. Valid values are vpc | vpn | direct-connect-gateway | tgw-peering. source-type - The source type. Valid values are igmp | static. state - The state of the subnet association. Valid values are associated | associated | disassociated | disassociating. subnet-id - The ID of the subnet. transit-gateway-attachment-id - The id of the transit gateway attachment.
21335 */
21336 Filters?: FilterList;
21337 /**
21338 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
21339 */
21340 MaxResults?: TransitGatewayMaxResults;
21341 /**
21342 * The token for the next page of results.
21343 */
21344 NextToken?: String;
21345 /**
21346 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
21347 */
21348 DryRun?: Boolean;
21349 }
21350 export interface SearchTransitGatewayMulticastGroupsResult {
21351 /**
21352 * Information about the transit gateway multicast group.
21353 */
21354 MulticastGroups?: TransitGatewayMulticastGroupList;
21355 /**
21356 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
21357 */
21358 NextToken?: String;
21359 }
21360 export interface SearchTransitGatewayRoutesRequest {
21361 /**
21362 * The ID of the transit gateway route table.
21363 */
21364 TransitGatewayRouteTableId: TransitGatewayRouteTableId;
21365 /**
21366 * 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 route (active | blackhole). type - The type of route (propagated | static).
21367 */
21368 Filters: FilterList;
21369 /**
21370 * The maximum number of routes to return.
21371 */
21372 MaxResults?: TransitGatewayMaxResults;
21373 /**
21374 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
21375 */
21376 DryRun?: Boolean;
21377 }
21378 export interface SearchTransitGatewayRoutesResult {
21379 /**
21380 * Information about the routes.
21381 */
21382 Routes?: TransitGatewayRouteList;
21383 /**
21384 * Indicates whether there are additional routes available.
21385 */
21386 AdditionalRoutesAvailable?: Boolean;
21387 }
21388 export interface SecurityGroup {
21389 /**
21390 * A description of the security group.
21391 */
21392 Description?: String;
21393 /**
21394 * The name of the security group.
21395 */
21396 GroupName?: String;
21397 /**
21398 * The inbound rules associated with the security group.
21399 */
21400 IpPermissions?: IpPermissionList;
21401 /**
21402 * The AWS account ID of the owner of the security group.
21403 */
21404 OwnerId?: String;
21405 /**
21406 * The ID of the security group.
21407 */
21408 GroupId?: String;
21409 /**
21410 * [VPC only] The outbound rules associated with the security group.
21411 */
21412 IpPermissionsEgress?: IpPermissionList;
21413 /**
21414 * Any tags assigned to the security group.
21415 */
21416 Tags?: TagList;
21417 /**
21418 * [VPC only] The ID of the VPC for the security group.
21419 */
21420 VpcId?: String;
21421 }
21422 export type SecurityGroupId = string;
21423 export type SecurityGroupIdStringList = SecurityGroupId[];
21424 export interface SecurityGroupIdentifier {
21425 /**
21426 * The ID of the security group.
21427 */
21428 GroupId?: String;
21429 /**
21430 * The name of the security group.
21431 */
21432 GroupName?: String;
21433 }
21434 export type SecurityGroupList = SecurityGroup[];
21435 export type SecurityGroupName = string;
21436 export interface SecurityGroupReference {
21437 /**
21438 * The ID of your security group.
21439 */
21440 GroupId?: String;
21441 /**
21442 * The ID of the VPC with the referencing security group.
21443 */
21444 ReferencingVpcId?: String;
21445 /**
21446 * The ID of the VPC peering connection.
21447 */
21448 VpcPeeringConnectionId?: String;
21449 }
21450 export type SecurityGroupReferences = SecurityGroupReference[];
21451 export type SecurityGroupStringList = SecurityGroupName[];
21452 export interface SendDiagnosticInterruptRequest {
21453 /**
21454 * The ID of the instance.
21455 */
21456 InstanceId: InstanceId;
21457 /**
21458 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
21459 */
21460 DryRun?: Boolean;
21461 }
21462 export type SensitiveUserData = string;
21463 export interface ServiceConfiguration {
21464 /**
21465 * The type of service.
21466 */
21467 ServiceType?: ServiceTypeDetailSet;
21468 /**
21469 * The ID of the service.
21470 */
21471 ServiceId?: String;
21472 /**
21473 * The name of the service.
21474 */
21475 ServiceName?: String;
21476 /**
21477 * The service state.
21478 */
21479 ServiceState?: ServiceState;
21480 /**
21481 * The Availability Zones in which the service is available.
21482 */
21483 AvailabilityZones?: ValueStringList;
21484 /**
21485 * Indicates whether requests from other AWS accounts to create an endpoint to the service must first be accepted.
21486 */
21487 AcceptanceRequired?: Boolean;
21488 /**
21489 * Indicates whether the service manages its VPC endpoints. Management of the service VPC endpoints using the VPC endpoint API is restricted.
21490 */
21491 ManagesVpcEndpoints?: Boolean;
21492 /**
21493 * The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
21494 */
21495 NetworkLoadBalancerArns?: ValueStringList;
21496 /**
21497 * The DNS names for the service.
21498 */
21499 BaseEndpointDnsNames?: ValueStringList;
21500 /**
21501 * The private DNS name for the service.
21502 */
21503 PrivateDnsName?: String;
21504 /**
21505 * Information about the endpoint service private DNS name configuration.
21506 */
21507 PrivateDnsNameConfiguration?: PrivateDnsNameConfiguration;
21508 /**
21509 * Any tags assigned to the service.
21510 */
21511 Tags?: TagList;
21512 }
21513 export type ServiceConfigurationSet = ServiceConfiguration[];
21514 export interface ServiceDetail {
21515 /**
21516 * The Amazon Resource Name (ARN) of the service.
21517 */
21518 ServiceName?: String;
21519 /**
21520 * The ID of the endpoint service.
21521 */
21522 ServiceId?: String;
21523 /**
21524 * The type of service.
21525 */
21526 ServiceType?: ServiceTypeDetailSet;
21527 /**
21528 * The Availability Zones in which the service is available.
21529 */
21530 AvailabilityZones?: ValueStringList;
21531 /**
21532 * The AWS account ID of the service owner.
21533 */
21534 Owner?: String;
21535 /**
21536 * The DNS names for the service.
21537 */
21538 BaseEndpointDnsNames?: ValueStringList;
21539 /**
21540 * The private DNS name for the service.
21541 */
21542 PrivateDnsName?: String;
21543 /**
21544 * Indicates whether the service supports endpoint policies.
21545 */
21546 VpcEndpointPolicySupported?: Boolean;
21547 /**
21548 * Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner.
21549 */
21550 AcceptanceRequired?: Boolean;
21551 /**
21552 * Indicates whether the service manages its VPC endpoints. Management of the service VPC endpoints using the VPC endpoint API is restricted.
21553 */
21554 ManagesVpcEndpoints?: Boolean;
21555 /**
21556 * Any tags assigned to the service.
21557 */
21558 Tags?: TagList;
21559 /**
21560 * The verification state of the VPC endpoint service. Consumers of the endpoint service cannot use the private name when the state is not verified.
21561 */
21562 PrivateDnsNameVerificationState?: DnsNameState;
21563 }
21564 export type ServiceDetailSet = ServiceDetail[];
21565 export type ServiceState = "Pending"|"Available"|"Deleting"|"Deleted"|"Failed"|string;
21566 export type ServiceType = "Interface"|"Gateway"|string;
21567 export interface ServiceTypeDetail {
21568 /**
21569 * The type of service.
21570 */
21571 ServiceType?: ServiceType;
21572 }
21573 export type ServiceTypeDetailSet = ServiceTypeDetail[];
21574 export type ShutdownBehavior = "stop"|"terminate"|string;
21575 export interface SlotDateTimeRangeRequest {
21576 /**
21577 * The earliest date and time, in UTC, for the Scheduled Instance to start.
21578 */
21579 EarliestTime: DateTime;
21580 /**
21581 * 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.
21582 */
21583 LatestTime: DateTime;
21584 }
21585 export interface SlotStartTimeRangeRequest {
21586 /**
21587 * The earliest date and time, in UTC, for the Scheduled Instance to start.
21588 */
21589 EarliestTime?: DateTime;
21590 /**
21591 * The latest date and time, in UTC, for the Scheduled Instance to start.
21592 */
21593 LatestTime?: DateTime;
21594 }
21595 export interface Snapshot {
21596 /**
21597 * 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 DescribeSnapshots.
21598 */
21599 DataEncryptionKeyId?: String;
21600 /**
21601 * The description for the snapshot.
21602 */
21603 Description?: String;
21604 /**
21605 * Indicates whether the snapshot is encrypted.
21606 */
21607 Encrypted?: Boolean;
21608 /**
21609 * The Amazon Resource Name (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.
21610 */
21611 KmsKeyId?: String;
21612 /**
21613 * The AWS account ID of the EBS snapshot owner.
21614 */
21615 OwnerId?: String;
21616 /**
21617 * The progress of the snapshot, as a percentage.
21618 */
21619 Progress?: String;
21620 /**
21621 * The ID of the snapshot. Each snapshot receives a unique identifier when it is created.
21622 */
21623 SnapshotId?: String;
21624 /**
21625 * The time stamp when the snapshot was initiated.
21626 */
21627 StartTime?: DateTime;
21628 /**
21629 * The snapshot state.
21630 */
21631 State?: SnapshotState;
21632 /**
21633 * 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 DescribeSnapshots.
21634 */
21635 StateMessage?: String;
21636 /**
21637 * 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.
21638 */
21639 VolumeId?: String;
21640 /**
21641 * The size of the volume, in GiB.
21642 */
21643 VolumeSize?: Integer;
21644 /**
21645 * Value from an Amazon-maintained list (amazon | self | all | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.
21646 */
21647 OwnerAlias?: String;
21648 /**
21649 * Any tags assigned to the snapshot.
21650 */
21651 Tags?: TagList;
21652 }
21653 export type SnapshotAttributeName = "productCodes"|"createVolumePermission"|string;
21654 export interface SnapshotDetail {
21655 /**
21656 * A description for the snapshot.
21657 */
21658 Description?: String;
21659 /**
21660 * The block device mapping for the snapshot.
21661 */
21662 DeviceName?: String;
21663 /**
21664 * The size of the disk in the snapshot, in GiB.
21665 */
21666 DiskImageSize?: Double;
21667 /**
21668 * The format of the disk image from which the snapshot is created.
21669 */
21670 Format?: String;
21671 /**
21672 * The percentage of progress for the task.
21673 */
21674 Progress?: String;
21675 /**
21676 * The snapshot ID of the disk being imported.
21677 */
21678 SnapshotId?: String;
21679 /**
21680 * A brief status of the snapshot creation.
21681 */
21682 Status?: String;
21683 /**
21684 * A detailed status message for the snapshot creation.
21685 */
21686 StatusMessage?: String;
21687 /**
21688 * The URL used to access the disk image.
21689 */
21690 Url?: String;
21691 /**
21692 * The S3 bucket for the disk image.
21693 */
21694 UserBucket?: UserBucketDetails;
21695 }
21696 export type SnapshotDetailList = SnapshotDetail[];
21697 export interface SnapshotDiskContainer {
21698 /**
21699 * The description of the disk image being imported.
21700 */
21701 Description?: String;
21702 /**
21703 * The format of the disk image being imported. Valid values: VHD | VMDK
21704 */
21705 Format?: String;
21706 /**
21707 * 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://..).
21708 */
21709 Url?: String;
21710 /**
21711 * The S3 bucket for the disk image.
21712 */
21713 UserBucket?: UserBucket;
21714 }
21715 export type SnapshotId = string;
21716 export type SnapshotIdStringList = SnapshotId[];
21717 export interface SnapshotInfo {
21718 /**
21719 * Description specified by the CreateSnapshotRequest that has been applied to all snapshots.
21720 */
21721 Description?: String;
21722 /**
21723 * Tags associated with this snapshot.
21724 */
21725 Tags?: TagList;
21726 /**
21727 * Indicates whether the snapshot is encrypted.
21728 */
21729 Encrypted?: Boolean;
21730 /**
21731 * Source volume from which this snapshot was created.
21732 */
21733 VolumeId?: String;
21734 /**
21735 * Current state of the snapshot.
21736 */
21737 State?: SnapshotState;
21738 /**
21739 * Size of the volume from which this snapshot was created.
21740 */
21741 VolumeSize?: Integer;
21742 /**
21743 * Time this snapshot was started. This is the same for all snapshots initiated by the same request.
21744 */
21745 StartTime?: MillisecondDateTime;
21746 /**
21747 * Progress this snapshot has made towards completing.
21748 */
21749 Progress?: String;
21750 /**
21751 * Account id used when creating this snapshot.
21752 */
21753 OwnerId?: String;
21754 /**
21755 * Snapshot id that can be used to describe this snapshot.
21756 */
21757 SnapshotId?: String;
21758 }
21759 export type SnapshotList = Snapshot[];
21760 export type SnapshotSet = SnapshotInfo[];
21761 export type SnapshotState = "pending"|"completed"|"error"|string;
21762 export interface SnapshotTaskDetail {
21763 /**
21764 * The description of the snapshot.
21765 */
21766 Description?: String;
21767 /**
21768 * The size of the disk in the snapshot, in GiB.
21769 */
21770 DiskImageSize?: Double;
21771 /**
21772 * Indicates whether the snapshot is encrypted.
21773 */
21774 Encrypted?: Boolean;
21775 /**
21776 * The format of the disk image from which the snapshot is created.
21777 */
21778 Format?: String;
21779 /**
21780 * The identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted snapshot.
21781 */
21782 KmsKeyId?: String;
21783 /**
21784 * The percentage of completion for the import snapshot task.
21785 */
21786 Progress?: String;
21787 /**
21788 * The snapshot ID of the disk being imported.
21789 */
21790 SnapshotId?: String;
21791 /**
21792 * A brief status for the import snapshot task.
21793 */
21794 Status?: String;
21795 /**
21796 * A detailed status message for the import snapshot task.
21797 */
21798 StatusMessage?: String;
21799 /**
21800 * The URL of the disk image from which the snapshot is created.
21801 */
21802 Url?: String;
21803 /**
21804 * The S3 bucket for the disk image.
21805 */
21806 UserBucket?: UserBucketDetails;
21807 }
21808 export type SpotAllocationStrategy = "lowest-price"|"diversified"|"capacity-optimized"|string;
21809 export interface SpotDatafeedSubscription {
21810 /**
21811 * The Amazon S3 bucket where the Spot Instance data feed is located.
21812 */
21813 Bucket?: String;
21814 /**
21815 * The fault codes for the Spot Instance request, if any.
21816 */
21817 Fault?: SpotInstanceStateFault;
21818 /**
21819 * The AWS account ID of the account.
21820 */
21821 OwnerId?: String;
21822 /**
21823 * The prefix that is prepended to data feed files.
21824 */
21825 Prefix?: String;
21826 /**
21827 * The state of the Spot Instance data feed subscription.
21828 */
21829 State?: DatafeedSubscriptionState;
21830 }
21831 export interface SpotFleetLaunchSpecification {
21832 /**
21833 * 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.
21834 */
21835 SecurityGroups?: GroupIdentifierList;
21836 /**
21837 * Deprecated.
21838 */
21839 AddressingType?: String;
21840 /**
21841 * One or more block devices that are mapped to the Spot Instances. 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.
21842 */
21843 BlockDeviceMappings?: BlockDeviceMappingList;
21844 /**
21845 * 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
21846 */
21847 EbsOptimized?: Boolean;
21848 /**
21849 * The IAM instance profile.
21850 */
21851 IamInstanceProfile?: IamInstanceProfileSpecification;
21852 /**
21853 * The ID of the AMI.
21854 */
21855 ImageId?: String;
21856 /**
21857 * The instance type.
21858 */
21859 InstanceType?: InstanceType;
21860 /**
21861 * The ID of the kernel.
21862 */
21863 KernelId?: String;
21864 /**
21865 * The name of the key pair.
21866 */
21867 KeyName?: String;
21868 /**
21869 * Enable or disable monitoring for the instances.
21870 */
21871 Monitoring?: SpotFleetMonitoring;
21872 /**
21873 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
21874 */
21875 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
21876 /**
21877 * The placement information.
21878 */
21879 Placement?: SpotPlacement;
21880 /**
21881 * The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel requirements for information about whether you need to specify a RAM disk. To find kernel requirements, refer to the AWS Resource Center and search for the kernel ID.
21882 */
21883 RamdiskId?: String;
21884 /**
21885 * 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.
21886 */
21887 SpotPrice?: String;
21888 /**
21889 * The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".
21890 */
21891 SubnetId?: String;
21892 /**
21893 * The Base64-encoded user data that instances use when starting up.
21894 */
21895 UserData?: String;
21896 /**
21897 * 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 of 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, Amazon EC2 rounds the number of instances to the next whole number. If this value is not specified, the default is 1.
21898 */
21899 WeightedCapacity?: Double;
21900 /**
21901 * The tags to apply during creation.
21902 */
21903 TagSpecifications?: SpotFleetTagSpecificationList;
21904 }
21905 export interface SpotFleetMonitoring {
21906 /**
21907 * Enables monitoring for the instance. Default: false
21908 */
21909 Enabled?: Boolean;
21910 }
21911 export interface SpotFleetRequestConfig {
21912 /**
21913 * 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.
21914 */
21915 ActivityStatus?: ActivityStatus;
21916 /**
21917 * The creation date and time of the request.
21918 */
21919 CreateTime?: MillisecondDateTime;
21920 /**
21921 * The configuration of the Spot Fleet request.
21922 */
21923 SpotFleetRequestConfig?: SpotFleetRequestConfigData;
21924 /**
21925 * The ID of the Spot Fleet request.
21926 */
21927 SpotFleetRequestId?: String;
21928 /**
21929 * The state of the Spot Fleet request.
21930 */
21931 SpotFleetRequestState?: BatchState;
21932 /**
21933 * The tags for a Spot Fleet resource.
21934 */
21935 Tags?: TagList;
21936 }
21937 export interface SpotFleetRequestConfigData {
21938 /**
21939 * Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the Spot Fleet request. If the allocation strategy is lowestPrice, Spot Fleet launches instances from the Spot Instance pools with the lowest price. This is the default allocation strategy. If the allocation strategy is diversified, Spot Fleet launches instances from all the Spot Instance pools that you specify. If the allocation strategy is capacityOptimized, Spot Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.
21940 */
21941 AllocationStrategy?: AllocationStrategy;
21942 /**
21943 * 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.
21944 */
21945 OnDemandAllocationStrategy?: OnDemandAllocationStrategy;
21946 /**
21947 * 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.
21948 */
21949 ClientToken?: String;
21950 /**
21951 * Indicates whether running Spot Instances should be terminated if you decrease the target capacity of the Spot Fleet request below the current size of the Spot Fleet.
21952 */
21953 ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy;
21954 /**
21955 * The number of units fulfilled by this request compared to the set target capacity. You cannot set this value.
21956 */
21957 FulfilledCapacity?: Double;
21958 /**
21959 * The number of On-Demand units fulfilled by this request compared to the set target On-Demand capacity.
21960 */
21961 OnDemandFulfilledCapacity?: Double;
21962 /**
21963 * The Amazon Resource Name (ARN) of an AWS Identity and Access Management (IAM) role that grants the Spot Fleet the permission to request, launch, terminate, and tag instances on your behalf. For more information, see Spot Fleet Prerequisites in the Amazon EC2 User Guide for Linux Instances. Spot Fleet can 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.
21964 */
21965 IamFleetRole: String;
21966 /**
21967 * The launch specifications for the Spot Fleet request. If you specify LaunchSpecifications, you can't specify LaunchTemplateConfigs. If you include On-Demand capacity in your request, you must use LaunchTemplateConfigs.
21968 */
21969 LaunchSpecifications?: LaunchSpecsList;
21970 /**
21971 * The launch template and overrides. If you specify LaunchTemplateConfigs, you can't specify LaunchSpecifications. If you include On-Demand capacity in your request, you must use LaunchTemplateConfigs.
21972 */
21973 LaunchTemplateConfigs?: LaunchTemplateConfigList;
21974 /**
21975 * The maximum price per unit hour that you are willing to pay for a Spot Instance. The default is the On-Demand price.
21976 */
21977 SpotPrice?: String;
21978 /**
21979 * The number of units to request for the Spot Fleet. 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.
21980 */
21981 TargetCapacity: Integer;
21982 /**
21983 * 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.
21984 */
21985 OnDemandTargetCapacity?: Integer;
21986 /**
21987 * The maximum amount per hour for On-Demand Instances that you're willing to pay. You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
21988 */
21989 OnDemandMaxTotalPrice?: String;
21990 /**
21991 * The maximum amount per hour for Spot Instances that you're willing to pay. You can use the spotdMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, Spot Fleet will launch instances until it reaches the maximum amount you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity.
21992 */
21993 SpotMaxTotalPrice?: String;
21994 /**
21995 * Indicates whether running Spot Instances are terminated when the Spot Fleet request expires.
21996 */
21997 TerminateInstancesWithExpiration?: Boolean;
21998 /**
21999 * 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.
22000 */
22001 Type?: FleetType;
22002 /**
22003 * The start date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). By default, Amazon EC2 starts fulfilling the request immediately.
22004 */
22005 ValidFrom?: DateTime;
22006 /**
22007 * The end date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). After the end date and time, 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.
22008 */
22009 ValidUntil?: DateTime;
22010 /**
22011 * Indicates whether Spot Fleet should replace unhealthy instances.
22012 */
22013 ReplaceUnhealthyInstances?: Boolean;
22014 /**
22015 * The behavior when a Spot Instance is interrupted. The default is terminate.
22016 */
22017 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
22018 /**
22019 * 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.
22020 */
22021 LoadBalancersConfig?: LoadBalancersConfig;
22022 /**
22023 * 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.
22024 */
22025 InstancePoolsToUseCount?: Integer;
22026 /**
22027 * The key-value pair for tagging the Spot Fleet request on creation. The value for ResourceType must be spot-fleet-request, otherwise the Spot Fleet request fails. To tag instances at launch, specify the tags in the launch template (valid only if you use LaunchTemplateConfigs) or in the SpotFleetTagSpecification (valid only if you use LaunchSpecifications). For information about tagging after launch, see Tagging Your Resources.
22028 */
22029 TagSpecifications?: TagSpecificationList;
22030 }
22031 export type SpotFleetRequestConfigSet = SpotFleetRequestConfig[];
22032 export type SpotFleetRequestId = string;
22033 export type SpotFleetRequestIdList = SpotFleetRequestId[];
22034 export interface SpotFleetTagSpecification {
22035 /**
22036 * The type of resource. Currently, the only resource type that is supported is instance. To tag the Spot Fleet request on creation, use the TagSpecifications parameter in SpotFleetRequestConfigData .
22037 */
22038 ResourceType?: ResourceType;
22039 /**
22040 * The tags.
22041 */
22042 Tags?: TagList;
22043 }
22044 export type SpotFleetTagSpecificationList = SpotFleetTagSpecification[];
22045 export type SpotInstanceInterruptionBehavior = "hibernate"|"stop"|"terminate"|string;
22046 export interface SpotInstanceRequest {
22047 /**
22048 * 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.
22049 */
22050 ActualBlockHourlyPrice?: String;
22051 /**
22052 * 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.
22053 */
22054 AvailabilityZoneGroup?: String;
22055 /**
22056 * The duration for the Spot Instance, in minutes.
22057 */
22058 BlockDurationMinutes?: Integer;
22059 /**
22060 * The date and time when the Spot Instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
22061 */
22062 CreateTime?: DateTime;
22063 /**
22064 * The fault codes for the Spot Instance request, if any.
22065 */
22066 Fault?: SpotInstanceStateFault;
22067 /**
22068 * The instance ID, if an instance has been launched to fulfill the Spot Instance request.
22069 */
22070 InstanceId?: InstanceId;
22071 /**
22072 * The instance launch group. Launch groups are Spot Instances that launch together and terminate together.
22073 */
22074 LaunchGroup?: String;
22075 /**
22076 * Additional information for launching instances.
22077 */
22078 LaunchSpecification?: LaunchSpecification;
22079 /**
22080 * The Availability Zone in which the request is launched.
22081 */
22082 LaunchedAvailabilityZone?: String;
22083 /**
22084 * The product description associated with the Spot Instance.
22085 */
22086 ProductDescription?: RIProductDescription;
22087 /**
22088 * The ID of the Spot Instance request.
22089 */
22090 SpotInstanceRequestId?: String;
22091 /**
22092 * The maximum price per hour that you are willing to pay for a Spot Instance.
22093 */
22094 SpotPrice?: String;
22095 /**
22096 * 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.
22097 */
22098 State?: SpotInstanceState;
22099 /**
22100 * The status code and status message describing the Spot Instance request.
22101 */
22102 Status?: SpotInstanceStatus;
22103 /**
22104 * Any tags assigned to the resource.
22105 */
22106 Tags?: TagList;
22107 /**
22108 * The Spot Instance request type.
22109 */
22110 Type?: SpotInstanceType;
22111 /**
22112 * 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.
22113 */
22114 ValidFrom?: DateTime;
22115 /**
22116 * 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.
22117 */
22118 ValidUntil?: DateTime;
22119 /**
22120 * The behavior when a Spot Instance is interrupted.
22121 */
22122 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
22123 }
22124 export type SpotInstanceRequestId = string;
22125 export type SpotInstanceRequestIdList = SpotInstanceRequestId[];
22126 export type SpotInstanceRequestList = SpotInstanceRequest[];
22127 export type SpotInstanceState = "open"|"active"|"closed"|"cancelled"|"failed"|string;
22128 export interface SpotInstanceStateFault {
22129 /**
22130 * The reason code for the Spot Instance state change.
22131 */
22132 Code?: String;
22133 /**
22134 * The message for the Spot Instance state change.
22135 */
22136 Message?: String;
22137 }
22138 export interface SpotInstanceStatus {
22139 /**
22140 * The status code. For a list of status codes, see Spot Status Codes in the Amazon EC2 User Guide for Linux Instances.
22141 */
22142 Code?: String;
22143 /**
22144 * The description for the status code.
22145 */
22146 Message?: String;
22147 /**
22148 * The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
22149 */
22150 UpdateTime?: DateTime;
22151 }
22152 export type SpotInstanceType = "one-time"|"persistent"|string;
22153 export interface SpotMarketOptions {
22154 /**
22155 * The maximum hourly price you're willing to pay for the Spot Instances. The default is the On-Demand price.
22156 */
22157 MaxPrice?: String;
22158 /**
22159 * The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop.
22160 */
22161 SpotInstanceType?: SpotInstanceType;
22162 /**
22163 * 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).
22164 */
22165 BlockDurationMinutes?: Integer;
22166 /**
22167 * 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.
22168 */
22169 ValidUntil?: DateTime;
22170 /**
22171 * The behavior when a Spot Instance is interrupted. The default is terminate.
22172 */
22173 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
22174 }
22175 export interface SpotOptions {
22176 /**
22177 * Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the EC2 Fleet. If the allocation strategy is lowest-price, EC2 Fleet launches instances from the Spot Instance pools with the lowest price. This is the default allocation strategy. If the allocation strategy is diversified, EC2 Fleet launches instances from all of the Spot Instance pools that you specify. If the allocation strategy is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.
22178 */
22179 AllocationStrategy?: SpotAllocationStrategy;
22180 /**
22181 * The behavior when a Spot Instance is interrupted. The default is terminate.
22182 */
22183 InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior;
22184 /**
22185 * The number of Spot pools across which to allocate your target Spot capacity. Valid only when 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.
22186 */
22187 InstancePoolsToUseCount?: Integer;
22188 /**
22189 * Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet. Supported only for fleets of type instant.
22190 */
22191 SingleInstanceType?: Boolean;
22192 /**
22193 * Indicates that the fleet launches all Spot Instances into a single Availability Zone. Supported only for fleets of type instant.
22194 */
22195 SingleAvailabilityZone?: Boolean;
22196 /**
22197 * The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
22198 */
22199 MinTargetCapacity?: Integer;
22200 /**
22201 * The maximum amount per hour for Spot Instances that you're willing to pay.
22202 */
22203 MaxTotalPrice?: String;
22204 }
22205 export interface SpotOptionsRequest {
22206 /**
22207 * Indicates how to allocate the target Spot Instance capacity across the Spot Instance pools specified by the EC2 Fleet. If the allocation strategy is lowest-price, EC2 Fleet launches instances from the Spot Instance pools with the lowest price. This is the default allocation strategy. If the allocation strategy is diversified, EC2 Fleet launches instances from all of the Spot Instance pools that you specify. If the allocation strategy is capacity-optimized, EC2 Fleet launches instances from Spot Instance pools with optimal capacity for the number of instances that are launching.
22208 */
22209 AllocationStrategy?: SpotAllocationStrategy;
22210 /**
22211 * The behavior when a Spot Instance is interrupted. The default is terminate.
22212 */
22213 InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior;
22214 /**
22215 * 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.
22216 */
22217 InstancePoolsToUseCount?: Integer;
22218 /**
22219 * Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet. Supported only for fleets of type instant.
22220 */
22221 SingleInstanceType?: Boolean;
22222 /**
22223 * Indicates that the fleet launches all Spot Instances into a single Availability Zone. Supported only for fleets of type instant.
22224 */
22225 SingleAvailabilityZone?: Boolean;
22226 /**
22227 * The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
22228 */
22229 MinTargetCapacity?: Integer;
22230 /**
22231 * The maximum amount per hour for Spot Instances that you're willing to pay.
22232 */
22233 MaxTotalPrice?: String;
22234 }
22235 export interface SpotPlacement {
22236 /**
22237 * The Availability Zone. [Spot Fleet only] To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".
22238 */
22239 AvailabilityZone?: String;
22240 /**
22241 * The name of the placement group.
22242 */
22243 GroupName?: String;
22244 /**
22245 * 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.
22246 */
22247 Tenancy?: Tenancy;
22248 }
22249 export interface SpotPrice {
22250 /**
22251 * The Availability Zone.
22252 */
22253 AvailabilityZone?: String;
22254 /**
22255 * The instance type.
22256 */
22257 InstanceType?: InstanceType;
22258 /**
22259 * A general description of the AMI.
22260 */
22261 ProductDescription?: RIProductDescription;
22262 /**
22263 * The maximum price per hour that you are willing to pay for a Spot Instance.
22264 */
22265 SpotPrice?: String;
22266 /**
22267 * The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
22268 */
22269 Timestamp?: DateTime;
22270 }
22271 export type SpotPriceHistoryList = SpotPrice[];
22272 export interface StaleIpPermission {
22273 /**
22274 * 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.
22275 */
22276 FromPort?: Integer;
22277 /**
22278 * The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).
22279 */
22280 IpProtocol?: String;
22281 /**
22282 * The IP ranges. Not applicable for stale security group rules.
22283 */
22284 IpRanges?: IpRanges;
22285 /**
22286 * The prefix list IDs for an AWS service. Not applicable for stale security group rules.
22287 */
22288 PrefixListIds?: PrefixListIdSet;
22289 /**
22290 * 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.
22291 */
22292 ToPort?: Integer;
22293 /**
22294 * The security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.
22295 */
22296 UserIdGroupPairs?: UserIdGroupPairSet;
22297 }
22298 export type StaleIpPermissionSet = StaleIpPermission[];
22299 export interface StaleSecurityGroup {
22300 /**
22301 * The description of the security group.
22302 */
22303 Description?: String;
22304 /**
22305 * The ID of the security group.
22306 */
22307 GroupId?: String;
22308 /**
22309 * The name of the security group.
22310 */
22311 GroupName?: String;
22312 /**
22313 * Information about the stale inbound rules in the security group.
22314 */
22315 StaleIpPermissions?: StaleIpPermissionSet;
22316 /**
22317 * Information about the stale outbound rules in the security group.
22318 */
22319 StaleIpPermissionsEgress?: StaleIpPermissionSet;
22320 /**
22321 * The ID of the VPC for the security group.
22322 */
22323 VpcId?: String;
22324 }
22325 export type StaleSecurityGroupSet = StaleSecurityGroup[];
22326 export interface StartInstancesRequest {
22327 /**
22328 * The IDs of the instances.
22329 */
22330 InstanceIds: InstanceIdStringList;
22331 /**
22332 * Reserved.
22333 */
22334 AdditionalInfo?: String;
22335 /**
22336 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
22337 */
22338 DryRun?: Boolean;
22339 }
22340 export interface StartInstancesResult {
22341 /**
22342 * Information about the started instances.
22343 */
22344 StartingInstances?: InstanceStateChangeList;
22345 }
22346 export interface StartVpcEndpointServicePrivateDnsVerificationRequest {
22347 /**
22348 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
22349 */
22350 DryRun?: Boolean;
22351 /**
22352 * The ID of the endpoint service.
22353 */
22354 ServiceId: VpcEndpointServiceId;
22355 }
22356 export interface StartVpcEndpointServicePrivateDnsVerificationResult {
22357 /**
22358 * Returns true if the request succeeds; otherwise, it returns an error.
22359 */
22360 ReturnValue?: Boolean;
22361 }
22362 export type State = "PendingAcceptance"|"Pending"|"Available"|"Deleting"|"Deleted"|"Rejected"|"Failed"|"Expired"|string;
22363 export interface StateReason {
22364 /**
22365 * The reason code for the state change.
22366 */
22367 Code?: String;
22368 /**
22369 * 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.
22370 */
22371 Message?: String;
22372 }
22373 export type Status = "MoveInProgress"|"InVpc"|"InClassic"|string;
22374 export type StatusName = "reachability"|string;
22375 export type StatusType = "passed"|"failed"|"insufficient-data"|"initializing"|string;
22376 export interface StopInstancesRequest {
22377 /**
22378 * The IDs of the instances.
22379 */
22380 InstanceIds: InstanceIdStringList;
22381 /**
22382 * 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
22383 */
22384 Hibernate?: Boolean;
22385 /**
22386 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
22387 */
22388 DryRun?: Boolean;
22389 /**
22390 * 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
22391 */
22392 Force?: Boolean;
22393 }
22394 export interface StopInstancesResult {
22395 /**
22396 * Information about the stopped instances.
22397 */
22398 StoppingInstances?: InstanceStateChangeList;
22399 }
22400 export interface Storage {
22401 /**
22402 * An Amazon S3 storage location.
22403 */
22404 S3?: S3Storage;
22405 }
22406 export interface StorageLocation {
22407 /**
22408 * The name of the S3 bucket.
22409 */
22410 Bucket?: String;
22411 /**
22412 * The key.
22413 */
22414 Key?: String;
22415 }
22416 export type String = string;
22417 export interface Subnet {
22418 /**
22419 * The Availability Zone of the subnet.
22420 */
22421 AvailabilityZone?: String;
22422 /**
22423 * The AZ ID of the subnet.
22424 */
22425 AvailabilityZoneId?: String;
22426 /**
22427 * The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any stopped instances are considered unavailable.
22428 */
22429 AvailableIpAddressCount?: Integer;
22430 /**
22431 * The IPv4 CIDR block assigned to the subnet.
22432 */
22433 CidrBlock?: String;
22434 /**
22435 * Indicates whether this is the default subnet for the Availability Zone.
22436 */
22437 DefaultForAz?: Boolean;
22438 /**
22439 * Indicates whether instances launched in this subnet receive a public IPv4 address.
22440 */
22441 MapPublicIpOnLaunch?: Boolean;
22442 /**
22443 * The current state of the subnet.
22444 */
22445 State?: SubnetState;
22446 /**
22447 * The ID of the subnet.
22448 */
22449 SubnetId?: String;
22450 /**
22451 * The ID of the VPC the subnet is in.
22452 */
22453 VpcId?: String;
22454 /**
22455 * The ID of the AWS account that owns the subnet.
22456 */
22457 OwnerId?: String;
22458 /**
22459 * Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives an IPv6 address.
22460 */
22461 AssignIpv6AddressOnCreation?: Boolean;
22462 /**
22463 * Information about the IPv6 CIDR blocks associated with the subnet.
22464 */
22465 Ipv6CidrBlockAssociationSet?: SubnetIpv6CidrBlockAssociationSet;
22466 /**
22467 * Any tags assigned to the subnet.
22468 */
22469 Tags?: TagList;
22470 /**
22471 * The Amazon Resource Name (ARN) of the subnet.
22472 */
22473 SubnetArn?: String;
22474 /**
22475 * The Amazon Resource Name (ARN) of the Outpost.
22476 */
22477 OutpostArn?: String;
22478 }
22479 export interface SubnetAssociation {
22480 /**
22481 * The ID of the subnet.
22482 */
22483 SubnetId?: String;
22484 /**
22485 * The state of the subnet association.
22486 */
22487 State?: TransitGatewayMulitcastDomainAssociationState;
22488 }
22489 export type SubnetAssociationList = SubnetAssociation[];
22490 export type SubnetCidrAssociationId = string;
22491 export interface SubnetCidrBlockState {
22492 /**
22493 * The state of a CIDR block.
22494 */
22495 State?: SubnetCidrBlockStateCode;
22496 /**
22497 * A message about the status of the CIDR block, if applicable.
22498 */
22499 StatusMessage?: String;
22500 }
22501 export type SubnetCidrBlockStateCode = "associating"|"associated"|"disassociating"|"disassociated"|"failing"|"failed"|string;
22502 export type SubnetId = string;
22503 export type SubnetIdStringList = SubnetId[];
22504 export interface SubnetIpv6CidrBlockAssociation {
22505 /**
22506 * The association ID for the CIDR block.
22507 */
22508 AssociationId?: String;
22509 /**
22510 * The IPv6 CIDR block.
22511 */
22512 Ipv6CidrBlock?: String;
22513 /**
22514 * Information about the state of the CIDR block.
22515 */
22516 Ipv6CidrBlockState?: SubnetCidrBlockState;
22517 }
22518 export type SubnetIpv6CidrBlockAssociationSet = SubnetIpv6CidrBlockAssociation[];
22519 export type SubnetList = Subnet[];
22520 export type SubnetState = "pending"|"available"|string;
22521 export interface SuccessfulInstanceCreditSpecificationItem {
22522 /**
22523 * The ID of the instance.
22524 */
22525 InstanceId?: String;
22526 }
22527 export type SuccessfulInstanceCreditSpecificationSet = SuccessfulInstanceCreditSpecificationItem[];
22528 export interface SuccessfulQueuedPurchaseDeletion {
22529 /**
22530 * The ID of the Reserved Instance.
22531 */
22532 ReservedInstancesId?: String;
22533 }
22534 export type SuccessfulQueuedPurchaseDeletionSet = SuccessfulQueuedPurchaseDeletion[];
22535 export type SummaryStatus = "ok"|"impaired"|"insufficient-data"|"not-applicable"|"initializing"|string;
22536 export interface Tag {
22537 /**
22538 * The key of the tag. Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.
22539 */
22540 Key?: String;
22541 /**
22542 * The value of the tag. Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.
22543 */
22544 Value?: String;
22545 }
22546 export interface TagDescription {
22547 /**
22548 * The tag key.
22549 */
22550 Key?: String;
22551 /**
22552 * The ID of the resource.
22553 */
22554 ResourceId?: String;
22555 /**
22556 * The resource type.
22557 */
22558 ResourceType?: ResourceType;
22559 /**
22560 * The tag value.
22561 */
22562 Value?: String;
22563 }
22564 export type TagDescriptionList = TagDescription[];
22565 export type TagList = Tag[];
22566 export interface TagSpecification {
22567 /**
22568 * The type of resource to tag. Currently, the resource types that support tagging on creation are: capacity-reservation | client-vpn-endpoint | dedicated-host | fleet | fpga-image | instance | key-pair | launch-template | | natgateway | spot-fleet-request | placement-group | snapshot | traffic-mirror-filter | traffic-mirror-session | traffic-mirror-target | transit-gateway | transit-gateway-attachment | transit-gateway-route-table | vpc-endpoint (for interface VPC endpoints)| vpc-endpoint-service (for gateway VPC endpoints) | volume | vpc-flow-log. To tag a resource after it has been created, see CreateTags.
22569 */
22570 ResourceType?: ResourceType;
22571 /**
22572 * The tags to apply to the resource.
22573 */
22574 Tags?: TagList;
22575 }
22576 export type TagSpecificationList = TagSpecification[];
22577 export type TaggableResourceId = string;
22578 export interface TargetCapacitySpecification {
22579 /**
22580 * The number of units to request, filled using DefaultTargetCapacityType.
22581 */
22582 TotalTargetCapacity?: Integer;
22583 /**
22584 * The number of On-Demand units to request. If you specify a target capacity for Spot units, you cannot specify a target capacity for On-Demand units.
22585 */
22586 OnDemandTargetCapacity?: Integer;
22587 /**
22588 * The maximum number of Spot units to launch. If you specify a target capacity for On-Demand units, you cannot specify a target capacity for Spot units.
22589 */
22590 SpotTargetCapacity?: Integer;
22591 /**
22592 * The default TotalTargetCapacity, which is either Spot or On-Demand.
22593 */
22594 DefaultTargetCapacityType?: DefaultTargetCapacityType;
22595 }
22596 export interface TargetCapacitySpecificationRequest {
22597 /**
22598 * The number of units to request, filled using DefaultTargetCapacityType.
22599 */
22600 TotalTargetCapacity: Integer;
22601 /**
22602 * The number of On-Demand units to request.
22603 */
22604 OnDemandTargetCapacity?: Integer;
22605 /**
22606 * The number of Spot units to request.
22607 */
22608 SpotTargetCapacity?: Integer;
22609 /**
22610 * The default TotalTargetCapacity, which is either Spot or On-Demand.
22611 */
22612 DefaultTargetCapacityType?: DefaultTargetCapacityType;
22613 }
22614 export interface TargetConfiguration {
22615 /**
22616 * The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request
22617 */
22618 InstanceCount?: Integer;
22619 /**
22620 * The ID of the Convertible Reserved Instance offering.
22621 */
22622 OfferingId?: String;
22623 }
22624 export interface TargetConfigurationRequest {
22625 /**
22626 * The number of instances the Covertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request
22627 */
22628 InstanceCount?: Integer;
22629 /**
22630 * The Convertible Reserved Instance offering ID.
22631 */
22632 OfferingId: ReservedInstancesOfferingId;
22633 }
22634 export type TargetConfigurationRequestSet = TargetConfigurationRequest[];
22635 export interface TargetGroup {
22636 /**
22637 * The Amazon Resource Name (ARN) of the target group.
22638 */
22639 Arn?: String;
22640 }
22641 export type TargetGroups = TargetGroup[];
22642 export interface TargetGroupsConfig {
22643 /**
22644 * One or more target groups.
22645 */
22646 TargetGroups?: TargetGroups;
22647 }
22648 export interface TargetNetwork {
22649 /**
22650 * The ID of the association.
22651 */
22652 AssociationId?: String;
22653 /**
22654 * The ID of the VPC in which the target network (subnet) is located.
22655 */
22656 VpcId?: String;
22657 /**
22658 * The ID of the subnet specified as the target network.
22659 */
22660 TargetNetworkId?: String;
22661 /**
22662 * The ID of the Client VPN endpoint with which the target network is associated.
22663 */
22664 ClientVpnEndpointId?: String;
22665 /**
22666 * The current state of the target network association.
22667 */
22668 Status?: AssociationStatus;
22669 /**
22670 * The IDs of the security groups applied to the target network association.
22671 */
22672 SecurityGroups?: ValueStringList;
22673 }
22674 export type TargetNetworkSet = TargetNetwork[];
22675 export interface TargetReservationValue {
22676 /**
22677 * 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.
22678 */
22679 ReservationValue?: ReservationValue;
22680 /**
22681 * The configuration of the Convertible Reserved Instances that make up the exchange.
22682 */
22683 TargetConfiguration?: TargetConfiguration;
22684 }
22685 export type TargetReservationValueSet = TargetReservationValue[];
22686 export type TelemetryStatus = "UP"|"DOWN"|string;
22687 export type Tenancy = "default"|"dedicated"|"host"|string;
22688 export interface TerminateClientVpnConnectionsRequest {
22689 /**
22690 * The ID of the Client VPN endpoint to which the client is connected.
22691 */
22692 ClientVpnEndpointId: ClientVpnEndpointId;
22693 /**
22694 * The ID of the client connection to be terminated.
22695 */
22696 ConnectionId?: VpnConnectionId;
22697 /**
22698 * 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.
22699 */
22700 Username?: String;
22701 /**
22702 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
22703 */
22704 DryRun?: Boolean;
22705 }
22706 export interface TerminateClientVpnConnectionsResult {
22707 /**
22708 * The ID of the Client VPN endpoint.
22709 */
22710 ClientVpnEndpointId?: String;
22711 /**
22712 * The user who established the terminated client connections.
22713 */
22714 Username?: String;
22715 /**
22716 * The current state of the client connections.
22717 */
22718 ConnectionStatuses?: TerminateConnectionStatusSet;
22719 }
22720 export interface TerminateConnectionStatus {
22721 /**
22722 * The ID of the client connection.
22723 */
22724 ConnectionId?: String;
22725 /**
22726 * The state of the client connection.
22727 */
22728 PreviousStatus?: ClientVpnConnectionStatus;
22729 /**
22730 * A message about the status of the client connection, if applicable.
22731 */
22732 CurrentStatus?: ClientVpnConnectionStatus;
22733 }
22734 export type TerminateConnectionStatusSet = TerminateConnectionStatus[];
22735 export interface TerminateInstancesRequest {
22736 /**
22737 * The IDs of the instances. Constraints: Up to 1000 instance IDs. We recommend breaking up this request into smaller batches.
22738 */
22739 InstanceIds: InstanceIdStringList;
22740 /**
22741 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
22742 */
22743 DryRun?: Boolean;
22744 }
22745 export interface TerminateInstancesResult {
22746 /**
22747 * Information about the terminated instances.
22748 */
22749 TerminatingInstances?: InstanceStateChangeList;
22750 }
22751 export type ThreadsPerCore = number;
22752 export type ThreadsPerCoreList = ThreadsPerCore[];
22753 export type TrafficDirection = "ingress"|"egress"|string;
22754 export interface TrafficMirrorFilter {
22755 /**
22756 * The ID of the Traffic Mirror filter.
22757 */
22758 TrafficMirrorFilterId?: String;
22759 /**
22760 * Information about the ingress rules that are associated with the Traffic Mirror filter.
22761 */
22762 IngressFilterRules?: TrafficMirrorFilterRuleList;
22763 /**
22764 * Information about the egress rules that are associated with the Traffic Mirror filter.
22765 */
22766 EgressFilterRules?: TrafficMirrorFilterRuleList;
22767 /**
22768 * The network service traffic that is associated with the Traffic Mirror filter.
22769 */
22770 NetworkServices?: TrafficMirrorNetworkServiceList;
22771 /**
22772 * The description of the Traffic Mirror filter.
22773 */
22774 Description?: String;
22775 /**
22776 * The tags assigned to the Traffic Mirror filter.
22777 */
22778 Tags?: TagList;
22779 }
22780 export type TrafficMirrorFilterId = string;
22781 export type TrafficMirrorFilterIdList = TrafficMirrorFilterId[];
22782 export interface TrafficMirrorFilterRule {
22783 /**
22784 * The ID of the Traffic Mirror rule.
22785 */
22786 TrafficMirrorFilterRuleId?: String;
22787 /**
22788 * The ID of the Traffic Mirror filter that the rule is associated with.
22789 */
22790 TrafficMirrorFilterId?: String;
22791 /**
22792 * The traffic direction assigned to the Traffic Mirror rule.
22793 */
22794 TrafficDirection?: TrafficDirection;
22795 /**
22796 * The rule number of the Traffic Mirror rule.
22797 */
22798 RuleNumber?: Integer;
22799 /**
22800 * The action assigned to the Traffic Mirror rule.
22801 */
22802 RuleAction?: TrafficMirrorRuleAction;
22803 /**
22804 * The protocol assigned to the Traffic Mirror rule.
22805 */
22806 Protocol?: Integer;
22807 /**
22808 * The destination port range assigned to the Traffic Mirror rule.
22809 */
22810 DestinationPortRange?: TrafficMirrorPortRange;
22811 /**
22812 * The source port range assigned to the Traffic Mirror rule.
22813 */
22814 SourcePortRange?: TrafficMirrorPortRange;
22815 /**
22816 * The destination CIDR block assigned to the Traffic Mirror rule.
22817 */
22818 DestinationCidrBlock?: String;
22819 /**
22820 * The source CIDR block assigned to the Traffic Mirror rule.
22821 */
22822 SourceCidrBlock?: String;
22823 /**
22824 * The description of the Traffic Mirror rule.
22825 */
22826 Description?: String;
22827 }
22828 export type TrafficMirrorFilterRuleField = "destination-port-range"|"source-port-range"|"protocol"|"description"|string;
22829 export type TrafficMirrorFilterRuleFieldList = TrafficMirrorFilterRuleField[];
22830 export type TrafficMirrorFilterRuleId = string;
22831 export type TrafficMirrorFilterRuleList = TrafficMirrorFilterRule[];
22832 export type TrafficMirrorFilterSet = TrafficMirrorFilter[];
22833 export type TrafficMirrorNetworkService = "amazon-dns"|string;
22834 export type TrafficMirrorNetworkServiceList = TrafficMirrorNetworkService[];
22835 export interface TrafficMirrorPortRange {
22836 /**
22837 * The start of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
22838 */
22839 FromPort?: Integer;
22840 /**
22841 * The end of the Traffic Mirror port range. This applies to the TCP and UDP protocols.
22842 */
22843 ToPort?: Integer;
22844 }
22845 export interface TrafficMirrorPortRangeRequest {
22846 /**
22847 * The first port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
22848 */
22849 FromPort?: Integer;
22850 /**
22851 * The last port in the Traffic Mirror port range. This applies to the TCP and UDP protocols.
22852 */
22853 ToPort?: Integer;
22854 }
22855 export type TrafficMirrorRuleAction = "accept"|"reject"|string;
22856 export interface TrafficMirrorSession {
22857 /**
22858 * The ID for the Traffic Mirror session.
22859 */
22860 TrafficMirrorSessionId?: String;
22861 /**
22862 * The ID of the Traffic Mirror target.
22863 */
22864 TrafficMirrorTargetId?: String;
22865 /**
22866 * The ID of the Traffic Mirror filter.
22867 */
22868 TrafficMirrorFilterId?: String;
22869 /**
22870 * The ID of the Traffic Mirror session's network interface.
22871 */
22872 NetworkInterfaceId?: String;
22873 /**
22874 * The ID of the account that owns the Traffic Mirror session.
22875 */
22876 OwnerId?: String;
22877 /**
22878 * The number of bytes in each packet to mirror. These are the bytes after the VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror. For example, if you set this value to 100, then the first 100 bytes that meet the filter criteria are copied to the target. Do not specify this parameter when you want to mirror the entire packet
22879 */
22880 PacketLength?: Integer;
22881 /**
22882 * The session number determines the order in which sessions are evaluated when an interface is used by multiple sessions. The first session with a matching filter is the one that mirrors the packets. Valid values are 1-32766.
22883 */
22884 SessionNumber?: Integer;
22885 /**
22886 * The virtual network ID associated with the Traffic Mirror session.
22887 */
22888 VirtualNetworkId?: Integer;
22889 /**
22890 * The description of the Traffic Mirror session.
22891 */
22892 Description?: String;
22893 /**
22894 * The tags assigned to the Traffic Mirror session.
22895 */
22896 Tags?: TagList;
22897 }
22898 export type TrafficMirrorSessionField = "packet-length"|"description"|"virtual-network-id"|string;
22899 export type TrafficMirrorSessionFieldList = TrafficMirrorSessionField[];
22900 export type TrafficMirrorSessionId = string;
22901 export type TrafficMirrorSessionIdList = TrafficMirrorSessionId[];
22902 export type TrafficMirrorSessionSet = TrafficMirrorSession[];
22903 export interface TrafficMirrorTarget {
22904 /**
22905 * The ID of the Traffic Mirror target.
22906 */
22907 TrafficMirrorTargetId?: String;
22908 /**
22909 * The network interface ID that is attached to the target.
22910 */
22911 NetworkInterfaceId?: String;
22912 /**
22913 * The Amazon Resource Name (ARN) of the Network Load Balancer.
22914 */
22915 NetworkLoadBalancerArn?: String;
22916 /**
22917 * The type of Traffic Mirror target.
22918 */
22919 Type?: TrafficMirrorTargetType;
22920 /**
22921 * Information about the Traffic Mirror target.
22922 */
22923 Description?: String;
22924 /**
22925 * The ID of the account that owns the Traffic Mirror target.
22926 */
22927 OwnerId?: String;
22928 /**
22929 * The tags assigned to the Traffic Mirror target.
22930 */
22931 Tags?: TagList;
22932 }
22933 export type TrafficMirrorTargetId = string;
22934 export type TrafficMirrorTargetIdList = TrafficMirrorTargetId[];
22935 export type TrafficMirrorTargetSet = TrafficMirrorTarget[];
22936 export type TrafficMirrorTargetType = "network-interface"|"network-load-balancer"|string;
22937 export type TrafficMirroringMaxResults = number;
22938 export type TrafficType = "ACCEPT"|"REJECT"|"ALL"|string;
22939 export type TransitAssociationGatewayId = string;
22940 export interface TransitGateway {
22941 /**
22942 * The ID of the transit gateway.
22943 */
22944 TransitGatewayId?: String;
22945 /**
22946 * The Amazon Resource Name (ARN) of the transit gateway.
22947 */
22948 TransitGatewayArn?: String;
22949 /**
22950 * The state of the transit gateway.
22951 */
22952 State?: TransitGatewayState;
22953 /**
22954 * The ID of the AWS account ID that owns the transit gateway.
22955 */
22956 OwnerId?: String;
22957 /**
22958 * The description of the transit gateway.
22959 */
22960 Description?: String;
22961 /**
22962 * The creation time.
22963 */
22964 CreationTime?: DateTime;
22965 /**
22966 * The transit gateway options.
22967 */
22968 Options?: TransitGatewayOptions;
22969 /**
22970 * The tags for the transit gateway.
22971 */
22972 Tags?: TagList;
22973 }
22974 export interface TransitGatewayAssociation {
22975 /**
22976 * The ID of the transit gateway route table.
22977 */
22978 TransitGatewayRouteTableId?: TransitGatewayRouteTableId;
22979 /**
22980 * The ID of the attachment.
22981 */
22982 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
22983 /**
22984 * The ID of the resource.
22985 */
22986 ResourceId?: String;
22987 /**
22988 * The resource type.
22989 */
22990 ResourceType?: TransitGatewayAttachmentResourceType;
22991 /**
22992 * The state of the association.
22993 */
22994 State?: TransitGatewayAssociationState;
22995 }
22996 export type TransitGatewayAssociationState = "associating"|"associated"|"disassociating"|"disassociated"|string;
22997 export interface TransitGatewayAttachment {
22998 /**
22999 * The ID of the attachment.
23000 */
23001 TransitGatewayAttachmentId?: String;
23002 /**
23003 * The ID of the transit gateway.
23004 */
23005 TransitGatewayId?: String;
23006 /**
23007 * The ID of the AWS account that owns the transit gateway.
23008 */
23009 TransitGatewayOwnerId?: String;
23010 /**
23011 * The ID of the AWS account that owns the resource.
23012 */
23013 ResourceOwnerId?: String;
23014 /**
23015 * The resource type.
23016 */
23017 ResourceType?: TransitGatewayAttachmentResourceType;
23018 /**
23019 * The ID of the resource.
23020 */
23021 ResourceId?: String;
23022 /**
23023 * The attachment state.
23024 */
23025 State?: TransitGatewayAttachmentState;
23026 /**
23027 * The association.
23028 */
23029 Association?: TransitGatewayAttachmentAssociation;
23030 /**
23031 * The creation time.
23032 */
23033 CreationTime?: DateTime;
23034 /**
23035 * The tags for the attachment.
23036 */
23037 Tags?: TagList;
23038 }
23039 export interface TransitGatewayAttachmentAssociation {
23040 /**
23041 * The ID of the route table for the transit gateway.
23042 */
23043 TransitGatewayRouteTableId?: String;
23044 /**
23045 * The state of the association.
23046 */
23047 State?: TransitGatewayAssociationState;
23048 }
23049 export type TransitGatewayAttachmentId = string;
23050 export type TransitGatewayAttachmentIdStringList = TransitGatewayAttachmentId[];
23051 export type TransitGatewayAttachmentList = TransitGatewayAttachment[];
23052 export interface TransitGatewayAttachmentPropagation {
23053 /**
23054 * The ID of the propagation route table.
23055 */
23056 TransitGatewayRouteTableId?: String;
23057 /**
23058 * The state of the propagation route table.
23059 */
23060 State?: TransitGatewayPropagationState;
23061 }
23062 export type TransitGatewayAttachmentPropagationList = TransitGatewayAttachmentPropagation[];
23063 export type TransitGatewayAttachmentResourceType = "vpc"|"vpn"|"direct-connect-gateway"|"tgw-peering"|string;
23064 export type TransitGatewayAttachmentState = "initiating"|"pendingAcceptance"|"rollingBack"|"pending"|"available"|"modifying"|"deleting"|"deleted"|"failed"|"rejected"|"rejecting"|"failing"|string;
23065 export type TransitGatewayId = string;
23066 export type TransitGatewayIdStringList = TransitGatewayId[];
23067 export type TransitGatewayList = TransitGateway[];
23068 export type TransitGatewayMaxResults = number;
23069 export type TransitGatewayMulitcastDomainAssociationState = "associating"|"associated"|"disassociating"|"disassociated"|string;
23070 export interface TransitGatewayMulticastDeregisteredGroupMembers {
23071 /**
23072 * The ID of the transit gateway multicast domain.
23073 */
23074 TransitGatewayMulticastDomainId?: String;
23075 /**
23076 * The network interface IDs of the deregistered members.
23077 */
23078 DeregisteredNetworkInterfaceIds?: ValueStringList;
23079 /**
23080 * The IP address assigned to the transit gateway multicast group.
23081 */
23082 GroupIpAddress?: String;
23083 }
23084 export interface TransitGatewayMulticastDeregisteredGroupSources {
23085 /**
23086 * The ID of the transit gateway multicast domain.
23087 */
23088 TransitGatewayMulticastDomainId?: String;
23089 /**
23090 * The network interface IDs of the non-registered members.
23091 */
23092 DeregisteredNetworkInterfaceIds?: ValueStringList;
23093 /**
23094 * The IP address assigned to the transit gateway multicast group.
23095 */
23096 GroupIpAddress?: String;
23097 }
23098 export interface TransitGatewayMulticastDomain {
23099 /**
23100 * The ID of the transit gateway multicast domain.
23101 */
23102 TransitGatewayMulticastDomainId?: String;
23103 /**
23104 * The ID of the transit gateway.
23105 */
23106 TransitGatewayId?: String;
23107 /**
23108 * The state of the transit gateway multicast domain.
23109 */
23110 State?: TransitGatewayMulticastDomainState;
23111 /**
23112 * The time the transit gateway multicast domain was created.
23113 */
23114 CreationTime?: DateTime;
23115 /**
23116 * The tags for the transit gateway multicast domain.
23117 */
23118 Tags?: TagList;
23119 }
23120 export interface TransitGatewayMulticastDomainAssociation {
23121 /**
23122 * The ID of the transit gateway attachment.
23123 */
23124 TransitGatewayAttachmentId?: String;
23125 /**
23126 * The ID of the resource.
23127 */
23128 ResourceId?: String;
23129 /**
23130 * The type of resource, for example a VPC attachment.
23131 */
23132 ResourceType?: TransitGatewayAttachmentResourceType;
23133 /**
23134 * The subnet associated with the transit gateway multicast domain.
23135 */
23136 Subnet?: SubnetAssociation;
23137 }
23138 export type TransitGatewayMulticastDomainAssociationList = TransitGatewayMulticastDomainAssociation[];
23139 export interface TransitGatewayMulticastDomainAssociations {
23140 /**
23141 * The ID of the transit gateway multicast domain.
23142 */
23143 TransitGatewayMulticastDomainId?: String;
23144 /**
23145 * The ID of the transit gateway attachment.
23146 */
23147 TransitGatewayAttachmentId?: String;
23148 /**
23149 * The ID of the resource.
23150 */
23151 ResourceId?: String;
23152 /**
23153 * The type of resource, for example a VPC attachment.
23154 */
23155 ResourceType?: TransitGatewayAttachmentResourceType;
23156 /**
23157 * The subnets associated with the multicast domain.
23158 */
23159 Subnets?: SubnetAssociationList;
23160 }
23161 export type TransitGatewayMulticastDomainId = string;
23162 export type TransitGatewayMulticastDomainIdStringList = TransitGatewayMulticastDomainId[];
23163 export type TransitGatewayMulticastDomainList = TransitGatewayMulticastDomain[];
23164 export type TransitGatewayMulticastDomainState = "pending"|"available"|"deleting"|"deleted"|string;
23165 export interface TransitGatewayMulticastGroup {
23166 /**
23167 * The IP address assigned to the transit gateway multicast group.
23168 */
23169 GroupIpAddress?: String;
23170 /**
23171 * The ID of the transit gateway attachment.
23172 */
23173 TransitGatewayAttachmentId?: String;
23174 /**
23175 * The ID of the subnet.
23176 */
23177 SubnetId?: String;
23178 /**
23179 * The ID of the resource.
23180 */
23181 ResourceId?: String;
23182 /**
23183 * The type of resource, for example a VPC attachment.
23184 */
23185 ResourceType?: TransitGatewayAttachmentResourceType;
23186 /**
23187 * The ID of the transit gateway attachment.
23188 */
23189 NetworkInterfaceId?: String;
23190 /**
23191 * Indicates that the resource is a transit gateway multicast group member.
23192 */
23193 GroupMember?: Boolean;
23194 /**
23195 * Indicates that the resource is a transit gateway multicast group member.
23196 */
23197 GroupSource?: Boolean;
23198 /**
23199 * The member type (for example, static).
23200 */
23201 MemberType?: MembershipType;
23202 /**
23203 * The source type.
23204 */
23205 SourceType?: MembershipType;
23206 }
23207 export type TransitGatewayMulticastGroupList = TransitGatewayMulticastGroup[];
23208 export interface TransitGatewayMulticastRegisteredGroupMembers {
23209 /**
23210 * The ID of the transit gateway multicast domain.
23211 */
23212 TransitGatewayMulticastDomainId?: String;
23213 /**
23214 * The ID of the registered network interfaces.
23215 */
23216 RegisteredNetworkInterfaceIds?: ValueStringList;
23217 /**
23218 * The IP address assigned to the transit gateway multicast group.
23219 */
23220 GroupIpAddress?: String;
23221 }
23222 export interface TransitGatewayMulticastRegisteredGroupSources {
23223 /**
23224 * The ID of the transit gateway multicast domain.
23225 */
23226 TransitGatewayMulticastDomainId?: String;
23227 /**
23228 * The IDs of the network interfaces members registered with the transit gateway multicast group.
23229 */
23230 RegisteredNetworkInterfaceIds?: ValueStringList;
23231 /**
23232 * The IP address assigned to the transit gateway multicast group.
23233 */
23234 GroupIpAddress?: String;
23235 }
23236 export type TransitGatewayNetworkInterfaceIdList = NetworkInterfaceId[];
23237 export interface TransitGatewayOptions {
23238 /**
23239 * 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.
23240 */
23241 AmazonSideAsn?: Long;
23242 /**
23243 * Indicates whether attachment requests are automatically accepted.
23244 */
23245 AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue;
23246 /**
23247 * Indicates whether resource attachments are automatically associated with the default association route table.
23248 */
23249 DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue;
23250 /**
23251 * The ID of the default association route table.
23252 */
23253 AssociationDefaultRouteTableId?: String;
23254 /**
23255 * Indicates whether resource attachments automatically propagate routes to the default propagation route table.
23256 */
23257 DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue;
23258 /**
23259 * The ID of the default propagation route table.
23260 */
23261 PropagationDefaultRouteTableId?: String;
23262 /**
23263 * Indicates whether Equal Cost Multipath Protocol support is enabled.
23264 */
23265 VpnEcmpSupport?: VpnEcmpSupportValue;
23266 /**
23267 * Indicates whether DNS support is enabled.
23268 */
23269 DnsSupport?: DnsSupportValue;
23270 /**
23271 * Indicates whether multicast is enabled on the transit gateway
23272 */
23273 MulticastSupport?: MulticastSupportValue;
23274 }
23275 export interface TransitGatewayPeeringAttachment {
23276 /**
23277 * The ID of the transit gateway peering attachment.
23278 */
23279 TransitGatewayAttachmentId?: String;
23280 /**
23281 * Information about the requester transit gateway.
23282 */
23283 RequesterTgwInfo?: PeeringTgwInfo;
23284 /**
23285 * Information about the accepter transit gateway.
23286 */
23287 AccepterTgwInfo?: PeeringTgwInfo;
23288 /**
23289 * The status of the transit gateway peering attachment.
23290 */
23291 Status?: PeeringAttachmentStatus;
23292 /**
23293 * The state of the transit gateway peering attachment.
23294 */
23295 State?: TransitGatewayAttachmentState;
23296 /**
23297 * The time the transit gateway peering attachment was created.
23298 */
23299 CreationTime?: DateTime;
23300 /**
23301 * The tags for the transit gateway peering attachment.
23302 */
23303 Tags?: TagList;
23304 }
23305 export type TransitGatewayPeeringAttachmentList = TransitGatewayPeeringAttachment[];
23306 export interface TransitGatewayPropagation {
23307 /**
23308 * The ID of the attachment.
23309 */
23310 TransitGatewayAttachmentId?: TransitGatewayAttachmentId;
23311 /**
23312 * The ID of the resource.
23313 */
23314 ResourceId?: String;
23315 /**
23316 * The resource type.
23317 */
23318 ResourceType?: TransitGatewayAttachmentResourceType;
23319 /**
23320 * The ID of the transit gateway route table.
23321 */
23322 TransitGatewayRouteTableId?: String;
23323 /**
23324 * The state.
23325 */
23326 State?: TransitGatewayPropagationState;
23327 }
23328 export type TransitGatewayPropagationState = "enabling"|"enabled"|"disabling"|"disabled"|string;
23329 export interface TransitGatewayRequestOptions {
23330 /**
23331 * 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.
23332 */
23333 AmazonSideAsn?: Long;
23334 /**
23335 * Enable or disable automatic acceptance of attachment requests. The default is disable.
23336 */
23337 AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue;
23338 /**
23339 * Enable or disable automatic association with the default association route table. The default is enable.
23340 */
23341 DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue;
23342 /**
23343 * Enable or disable automatic propagation of routes to the default propagation route table. The default is enable.
23344 */
23345 DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue;
23346 /**
23347 * Enable or disable Equal Cost Multipath Protocol support.
23348 */
23349 VpnEcmpSupport?: VpnEcmpSupportValue;
23350 /**
23351 * Enable or disable DNS support.
23352 */
23353 DnsSupport?: DnsSupportValue;
23354 /**
23355 * Indicates whether multicast is enabled on the transit gateway
23356 */
23357 MulticastSupport?: MulticastSupportValue;
23358 }
23359 export interface TransitGatewayRoute {
23360 /**
23361 * The CIDR block used for destination matches.
23362 */
23363 DestinationCidrBlock?: String;
23364 /**
23365 * The attachments.
23366 */
23367 TransitGatewayAttachments?: TransitGatewayRouteAttachmentList;
23368 /**
23369 * The route type.
23370 */
23371 Type?: TransitGatewayRouteType;
23372 /**
23373 * The state of the route.
23374 */
23375 State?: TransitGatewayRouteState;
23376 }
23377 export interface TransitGatewayRouteAttachment {
23378 /**
23379 * The ID of the resource.
23380 */
23381 ResourceId?: String;
23382 /**
23383 * The ID of the attachment.
23384 */
23385 TransitGatewayAttachmentId?: String;
23386 /**
23387 * The resource type.
23388 */
23389 ResourceType?: TransitGatewayAttachmentResourceType;
23390 }
23391 export type TransitGatewayRouteAttachmentList = TransitGatewayRouteAttachment[];
23392 export type TransitGatewayRouteList = TransitGatewayRoute[];
23393 export type TransitGatewayRouteState = "pending"|"active"|"blackhole"|"deleting"|"deleted"|string;
23394 export interface TransitGatewayRouteTable {
23395 /**
23396 * The ID of the transit gateway route table.
23397 */
23398 TransitGatewayRouteTableId?: String;
23399 /**
23400 * The ID of the transit gateway.
23401 */
23402 TransitGatewayId?: String;
23403 /**
23404 * The state of the transit gateway route table.
23405 */
23406 State?: TransitGatewayRouteTableState;
23407 /**
23408 * Indicates whether this is the default association route table for the transit gateway.
23409 */
23410 DefaultAssociationRouteTable?: Boolean;
23411 /**
23412 * Indicates whether this is the default propagation route table for the transit gateway.
23413 */
23414 DefaultPropagationRouteTable?: Boolean;
23415 /**
23416 * The creation time.
23417 */
23418 CreationTime?: DateTime;
23419 /**
23420 * Any tags assigned to the route table.
23421 */
23422 Tags?: TagList;
23423 }
23424 export interface TransitGatewayRouteTableAssociation {
23425 /**
23426 * The ID of the attachment.
23427 */
23428 TransitGatewayAttachmentId?: String;
23429 /**
23430 * The ID of the resource.
23431 */
23432 ResourceId?: String;
23433 /**
23434 * The resource type.
23435 */
23436 ResourceType?: TransitGatewayAttachmentResourceType;
23437 /**
23438 * The state of the association.
23439 */
23440 State?: TransitGatewayAssociationState;
23441 }
23442 export type TransitGatewayRouteTableAssociationList = TransitGatewayRouteTableAssociation[];
23443 export type TransitGatewayRouteTableId = string;
23444 export type TransitGatewayRouteTableIdStringList = TransitGatewayRouteTableId[];
23445 export type TransitGatewayRouteTableList = TransitGatewayRouteTable[];
23446 export interface TransitGatewayRouteTablePropagation {
23447 /**
23448 * The ID of the attachment.
23449 */
23450 TransitGatewayAttachmentId?: String;
23451 /**
23452 * The ID of the resource.
23453 */
23454 ResourceId?: String;
23455 /**
23456 * The type of resource.
23457 */
23458 ResourceType?: TransitGatewayAttachmentResourceType;
23459 /**
23460 * The state of the resource.
23461 */
23462 State?: TransitGatewayPropagationState;
23463 }
23464 export type TransitGatewayRouteTablePropagationList = TransitGatewayRouteTablePropagation[];
23465 export type TransitGatewayRouteTableState = "pending"|"available"|"deleting"|"deleted"|string;
23466 export type TransitGatewayRouteType = "static"|"propagated"|string;
23467 export type TransitGatewayState = "pending"|"available"|"modifying"|"deleting"|"deleted"|string;
23468 export type TransitGatewaySubnetIdList = SubnetId[];
23469 export interface TransitGatewayVpcAttachment {
23470 /**
23471 * The ID of the attachment.
23472 */
23473 TransitGatewayAttachmentId?: String;
23474 /**
23475 * The ID of the transit gateway.
23476 */
23477 TransitGatewayId?: String;
23478 /**
23479 * The ID of the VPC.
23480 */
23481 VpcId?: String;
23482 /**
23483 * The ID of the AWS account that owns the VPC.
23484 */
23485 VpcOwnerId?: String;
23486 /**
23487 * The state of the VPC attachment.
23488 */
23489 State?: TransitGatewayAttachmentState;
23490 /**
23491 * The IDs of the subnets.
23492 */
23493 SubnetIds?: ValueStringList;
23494 /**
23495 * The creation time.
23496 */
23497 CreationTime?: DateTime;
23498 /**
23499 * The VPC attachment options.
23500 */
23501 Options?: TransitGatewayVpcAttachmentOptions;
23502 /**
23503 * The tags for the VPC attachment.
23504 */
23505 Tags?: TagList;
23506 }
23507 export type TransitGatewayVpcAttachmentList = TransitGatewayVpcAttachment[];
23508 export interface TransitGatewayVpcAttachmentOptions {
23509 /**
23510 * Indicates whether DNS support is enabled.
23511 */
23512 DnsSupport?: DnsSupportValue;
23513 /**
23514 * Indicates whether IPv6 support is disabled.
23515 */
23516 Ipv6Support?: Ipv6SupportValue;
23517 }
23518 export type TransportProtocol = "tcp"|"udp"|string;
23519 export interface TunnelOption {
23520 /**
23521 * The external IP address of the VPN tunnel.
23522 */
23523 OutsideIpAddress?: String;
23524 /**
23525 * The range of inside IP addresses for the tunnel.
23526 */
23527 TunnelInsideCidr?: String;
23528 /**
23529 * The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and the customer gateway.
23530 */
23531 PreSharedKey?: String;
23532 /**
23533 * The lifetime for phase 1 of the IKE negotiation, in seconds.
23534 */
23535 Phase1LifetimeSeconds?: Integer;
23536 /**
23537 * The lifetime for phase 2 of the IKE negotiation, in seconds.
23538 */
23539 Phase2LifetimeSeconds?: Integer;
23540 /**
23541 * The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the VPN connection performs an IKE rekey.
23542 */
23543 RekeyMarginTimeSeconds?: Integer;
23544 /**
23545 * The percentage of the rekey window determined by RekeyMarginTimeSeconds during which the rekey time is randomly selected.
23546 */
23547 RekeyFuzzPercentage?: Integer;
23548 /**
23549 * The number of packets in an IKE replay window.
23550 */
23551 ReplayWindowSize?: Integer;
23552 /**
23553 * The number of seconds after which a DPD timeout occurs.
23554 */
23555 DpdTimeoutSeconds?: Integer;
23556 /**
23557 * The permitted encryption algorithms for the VPN tunnel for phase 1 IKE negotiations.
23558 */
23559 Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsList;
23560 /**
23561 * The permitted encryption algorithms for the VPN tunnel for phase 2 IKE negotiations.
23562 */
23563 Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsList;
23564 /**
23565 * The permitted integrity algorithms for the VPN tunnel for phase 1 IKE negotiations.
23566 */
23567 Phase1IntegrityAlgorithms?: Phase1IntegrityAlgorithmsList;
23568 /**
23569 * The permitted integrity algorithms for the VPN tunnel for phase 2 IKE negotiations.
23570 */
23571 Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsList;
23572 /**
23573 * The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE negotiations.
23574 */
23575 Phase1DHGroupNumbers?: Phase1DHGroupNumbersList;
23576 /**
23577 * The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE negotiations.
23578 */
23579 Phase2DHGroupNumbers?: Phase2DHGroupNumbersList;
23580 /**
23581 * The IKE versions that are permitted for the VPN tunnel.
23582 */
23583 IkeVersions?: IKEVersionsList;
23584 }
23585 export type TunnelOptionsList = TunnelOption[];
23586 export interface UnassignIpv6AddressesRequest {
23587 /**
23588 * The IPv6 addresses to unassign from the network interface.
23589 */
23590 Ipv6Addresses: Ipv6AddressList;
23591 /**
23592 * The ID of the network interface.
23593 */
23594 NetworkInterfaceId: NetworkInterfaceId;
23595 }
23596 export interface UnassignIpv6AddressesResult {
23597 /**
23598 * The ID of the network interface.
23599 */
23600 NetworkInterfaceId?: String;
23601 /**
23602 * The IPv6 addresses that have been unassigned from the network interface.
23603 */
23604 UnassignedIpv6Addresses?: Ipv6AddressList;
23605 }
23606 export interface UnassignPrivateIpAddressesRequest {
23607 /**
23608 * The ID of the network interface.
23609 */
23610 NetworkInterfaceId: NetworkInterfaceId;
23611 /**
23612 * 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.
23613 */
23614 PrivateIpAddresses: PrivateIpAddressStringList;
23615 }
23616 export type UnlimitedSupportedInstanceFamily = "t2"|"t3"|"t3a"|string;
23617 export interface UnmonitorInstancesRequest {
23618 /**
23619 * The IDs of the instances.
23620 */
23621 InstanceIds: InstanceIdStringList;
23622 /**
23623 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
23624 */
23625 DryRun?: Boolean;
23626 }
23627 export interface UnmonitorInstancesResult {
23628 /**
23629 * The monitoring information.
23630 */
23631 InstanceMonitorings?: InstanceMonitoringList;
23632 }
23633 export type UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.Malformed"|"InvalidInstanceID.NotFound"|"IncorrectInstanceState"|"InstanceCreditSpecification.NotSupported"|string;
23634 export interface UnsuccessfulInstanceCreditSpecificationItem {
23635 /**
23636 * The ID of the instance.
23637 */
23638 InstanceId?: String;
23639 /**
23640 * The applicable error for the burstable performance instance whose credit option for CPU usage was not modified.
23641 */
23642 Error?: UnsuccessfulInstanceCreditSpecificationItemError;
23643 }
23644 export interface UnsuccessfulInstanceCreditSpecificationItemError {
23645 /**
23646 * The error code.
23647 */
23648 Code?: UnsuccessfulInstanceCreditSpecificationErrorCode;
23649 /**
23650 * The applicable error message.
23651 */
23652 Message?: String;
23653 }
23654 export type UnsuccessfulInstanceCreditSpecificationSet = UnsuccessfulInstanceCreditSpecificationItem[];
23655 export interface UnsuccessfulItem {
23656 /**
23657 * Information about the error.
23658 */
23659 Error?: UnsuccessfulItemError;
23660 /**
23661 * The ID of the resource.
23662 */
23663 ResourceId?: String;
23664 }
23665 export interface UnsuccessfulItemError {
23666 /**
23667 * The error code.
23668 */
23669 Code?: String;
23670 /**
23671 * The error message accompanying the error code.
23672 */
23673 Message?: String;
23674 }
23675 export type UnsuccessfulItemList = UnsuccessfulItem[];
23676 export type UnsuccessfulItemSet = UnsuccessfulItem[];
23677 export interface UpdateSecurityGroupRuleDescriptionsEgressRequest {
23678 /**
23679 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
23680 */
23681 DryRun?: Boolean;
23682 /**
23683 * 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.
23684 */
23685 GroupId?: SecurityGroupId;
23686 /**
23687 * [Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
23688 */
23689 GroupName?: SecurityGroupName;
23690 /**
23691 * The IP permissions for the security group rule.
23692 */
23693 IpPermissions: IpPermissionList;
23694 }
23695 export interface UpdateSecurityGroupRuleDescriptionsEgressResult {
23696 /**
23697 * Returns true if the request succeeds; otherwise, returns an error.
23698 */
23699 Return?: Boolean;
23700 }
23701 export interface UpdateSecurityGroupRuleDescriptionsIngressRequest {
23702 /**
23703 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
23704 */
23705 DryRun?: Boolean;
23706 /**
23707 * 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.
23708 */
23709 GroupId?: SecurityGroupId;
23710 /**
23711 * [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.
23712 */
23713 GroupName?: SecurityGroupName;
23714 /**
23715 * The IP permissions for the security group rule.
23716 */
23717 IpPermissions: IpPermissionList;
23718 }
23719 export interface UpdateSecurityGroupRuleDescriptionsIngressResult {
23720 /**
23721 * Returns true if the request succeeds; otherwise, returns an error.
23722 */
23723 Return?: Boolean;
23724 }
23725 export type UsageClassType = "spot"|"on-demand"|string;
23726 export type UsageClassTypeList = UsageClassType[];
23727 export interface UserBucket {
23728 /**
23729 * The name of the S3 bucket where the disk image is located.
23730 */
23731 S3Bucket?: String;
23732 /**
23733 * The file name of the disk image.
23734 */
23735 S3Key?: String;
23736 }
23737 export interface UserBucketDetails {
23738 /**
23739 * The S3 bucket from which the disk image was created.
23740 */
23741 S3Bucket?: String;
23742 /**
23743 * The file name of the disk image.
23744 */
23745 S3Key?: String;
23746 }
23747 export interface UserData {
23748 /**
23749 * 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.
23750 */
23751 Data?: String;
23752 }
23753 export type UserGroupStringList = String[];
23754 export interface UserIdGroupPair {
23755 /**
23756 * 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 ._-:/()#,@[]+=;{}!$*
23757 */
23758 Description?: String;
23759 /**
23760 * The ID of the security group.
23761 */
23762 GroupId?: String;
23763 /**
23764 * 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.
23765 */
23766 GroupName?: String;
23767 /**
23768 * The status of a VPC peering connection, if applicable.
23769 */
23770 PeeringStatus?: String;
23771 /**
23772 * 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.
23773 */
23774 UserId?: String;
23775 /**
23776 * The ID of the VPC for the referenced security group, if applicable.
23777 */
23778 VpcId?: String;
23779 /**
23780 * The ID of the VPC peering connection, if applicable.
23781 */
23782 VpcPeeringConnectionId?: String;
23783 }
23784 export type UserIdGroupPairList = UserIdGroupPair[];
23785 export type UserIdGroupPairSet = UserIdGroupPair[];
23786 export type UserIdStringList = String[];
23787 export type VCpuCount = number;
23788 export interface VCpuInfo {
23789 /**
23790 * The default number of vCPUs for the instance type.
23791 */
23792 DefaultVCpus?: VCpuCount;
23793 /**
23794 * The default number of cores for the instance type.
23795 */
23796 DefaultCores?: CoreCount;
23797 /**
23798 * The default number of threads per core for the instance type.
23799 */
23800 DefaultThreadsPerCore?: ThreadsPerCore;
23801 /**
23802 * List of the valid number of cores that can be configured for the instance type.
23803 */
23804 ValidCores?: CoreCountList;
23805 /**
23806 * List of the valid number of threads per core that can be configured for the instance type.
23807 */
23808 ValidThreadsPerCore?: ThreadsPerCoreList;
23809 }
23810 export type ValueStringList = String[];
23811 export type VersionDescription = string;
23812 export type VersionStringList = String[];
23813 export interface VgwTelemetry {
23814 /**
23815 * The number of accepted routes.
23816 */
23817 AcceptedRouteCount?: Integer;
23818 /**
23819 * The date and time of the last change in status.
23820 */
23821 LastStatusChange?: DateTime;
23822 /**
23823 * The Internet-routable IP address of the virtual private gateway's outside interface.
23824 */
23825 OutsideIpAddress?: String;
23826 /**
23827 * The status of the VPN tunnel.
23828 */
23829 Status?: TelemetryStatus;
23830 /**
23831 * If an error occurs, a description of the error.
23832 */
23833 StatusMessage?: String;
23834 /**
23835 * The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.
23836 */
23837 CertificateArn?: String;
23838 }
23839 export type VgwTelemetryList = VgwTelemetry[];
23840 export type VirtualizationType = "hvm"|"paravirtual"|string;
23841 export interface Volume {
23842 /**
23843 * Information about the volume attachments.
23844 */
23845 Attachments?: VolumeAttachmentList;
23846 /**
23847 * The Availability Zone for the volume.
23848 */
23849 AvailabilityZone?: String;
23850 /**
23851 * The time stamp when volume creation was initiated.
23852 */
23853 CreateTime?: DateTime;
23854 /**
23855 * Indicates whether the volume is encrypted.
23856 */
23857 Encrypted?: Boolean;
23858 /**
23859 * The Amazon Resource Name (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.
23860 */
23861 KmsKeyId?: String;
23862 /**
23863 * The Amazon Resource Name (ARN) of the Outpost.
23864 */
23865 OutpostArn?: String;
23866 /**
23867 * The size of the volume, in GiBs.
23868 */
23869 Size?: Integer;
23870 /**
23871 * The snapshot from which the volume was created, if applicable.
23872 */
23873 SnapshotId?: String;
23874 /**
23875 * The volume state.
23876 */
23877 State?: VolumeState;
23878 /**
23879 * The ID of the volume.
23880 */
23881 VolumeId?: String;
23882 /**
23883 * 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.
23884 */
23885 Iops?: Integer;
23886 /**
23887 * Any tags assigned to the volume.
23888 */
23889 Tags?: TagList;
23890 /**
23891 * 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.
23892 */
23893 VolumeType?: VolumeType;
23894 /**
23895 * Indicates whether the volume was created using fast snapshot restore.
23896 */
23897 FastRestored?: Boolean;
23898 /**
23899 * Indicates whether Amazon EBS Multi-Attach is enabled.
23900 */
23901 MultiAttachEnabled?: Boolean;
23902 }
23903 export interface VolumeAttachment {
23904 /**
23905 * The time stamp when the attachment initiated.
23906 */
23907 AttachTime?: DateTime;
23908 /**
23909 * The device name.
23910 */
23911 Device?: String;
23912 /**
23913 * The ID of the instance.
23914 */
23915 InstanceId?: String;
23916 /**
23917 * The attachment state of the volume.
23918 */
23919 State?: VolumeAttachmentState;
23920 /**
23921 * The ID of the volume.
23922 */
23923 VolumeId?: String;
23924 /**
23925 * Indicates whether the EBS volume is deleted on instance termination.
23926 */
23927 DeleteOnTermination?: Boolean;
23928 }
23929 export type VolumeAttachmentList = VolumeAttachment[];
23930 export type VolumeAttachmentState = "attaching"|"attached"|"detaching"|"detached"|"busy"|string;
23931 export type VolumeAttributeName = "autoEnableIO"|"productCodes"|string;
23932 export interface VolumeDetail {
23933 /**
23934 * The size of the volume, in GiB.
23935 */
23936 Size: Long;
23937 }
23938 export type VolumeId = string;
23939 export type VolumeIdStringList = VolumeId[];
23940 export type VolumeList = Volume[];
23941 export interface VolumeModification {
23942 /**
23943 * The ID of the volume.
23944 */
23945 VolumeId?: String;
23946 /**
23947 * The current modification state. The modification state is null for unmodified volumes.
23948 */
23949 ModificationState?: VolumeModificationState;
23950 /**
23951 * A status message about the modification progress or failure.
23952 */
23953 StatusMessage?: String;
23954 /**
23955 * The target size of the volume, in GiB.
23956 */
23957 TargetSize?: Integer;
23958 /**
23959 * The target IOPS rate of the volume.
23960 */
23961 TargetIops?: Integer;
23962 /**
23963 * The target EBS volume type of the volume.
23964 */
23965 TargetVolumeType?: VolumeType;
23966 /**
23967 * The original size of the volume.
23968 */
23969 OriginalSize?: Integer;
23970 /**
23971 * The original IOPS rate of the volume.
23972 */
23973 OriginalIops?: Integer;
23974 /**
23975 * The original EBS volume type of the volume.
23976 */
23977 OriginalVolumeType?: VolumeType;
23978 /**
23979 * The modification progress, from 0 to 100 percent complete.
23980 */
23981 Progress?: Long;
23982 /**
23983 * The modification start time.
23984 */
23985 StartTime?: DateTime;
23986 /**
23987 * The modification completion or failure time.
23988 */
23989 EndTime?: DateTime;
23990 }
23991 export type VolumeModificationList = VolumeModification[];
23992 export type VolumeModificationState = "modifying"|"optimizing"|"completed"|"failed"|string;
23993 export type VolumeState = "creating"|"available"|"in-use"|"deleting"|"deleted"|"error"|string;
23994 export interface VolumeStatusAction {
23995 /**
23996 * The code identifying the operation, for example, enable-volume-io.
23997 */
23998 Code?: String;
23999 /**
24000 * A description of the operation.
24001 */
24002 Description?: String;
24003 /**
24004 * The ID of the event associated with this operation.
24005 */
24006 EventId?: String;
24007 /**
24008 * The event type associated with this operation.
24009 */
24010 EventType?: String;
24011 }
24012 export type VolumeStatusActionsList = VolumeStatusAction[];
24013 export interface VolumeStatusAttachmentStatus {
24014 /**
24015 * The maximum IOPS supported by the attached instance.
24016 */
24017 IoPerformance?: String;
24018 /**
24019 * The ID of the attached instance.
24020 */
24021 InstanceId?: String;
24022 }
24023 export type VolumeStatusAttachmentStatusList = VolumeStatusAttachmentStatus[];
24024 export interface VolumeStatusDetails {
24025 /**
24026 * The name of the volume status.
24027 */
24028 Name?: VolumeStatusName;
24029 /**
24030 * The intended status of the volume status.
24031 */
24032 Status?: String;
24033 }
24034 export type VolumeStatusDetailsList = VolumeStatusDetails[];
24035 export interface VolumeStatusEvent {
24036 /**
24037 * A description of the event.
24038 */
24039 Description?: String;
24040 /**
24041 * The ID of this event.
24042 */
24043 EventId?: String;
24044 /**
24045 * The type of this event.
24046 */
24047 EventType?: String;
24048 /**
24049 * The latest end time of the event.
24050 */
24051 NotAfter?: MillisecondDateTime;
24052 /**
24053 * The earliest start time of the event.
24054 */
24055 NotBefore?: MillisecondDateTime;
24056 /**
24057 * The ID of the instance associated with the event.
24058 */
24059 InstanceId?: String;
24060 }
24061 export type VolumeStatusEventsList = VolumeStatusEvent[];
24062 export interface VolumeStatusInfo {
24063 /**
24064 * The details of the volume status.
24065 */
24066 Details?: VolumeStatusDetailsList;
24067 /**
24068 * The status of the volume.
24069 */
24070 Status?: VolumeStatusInfoStatus;
24071 }
24072 export type VolumeStatusInfoStatus = "ok"|"impaired"|"insufficient-data"|string;
24073 export interface VolumeStatusItem {
24074 /**
24075 * The details of the operation.
24076 */
24077 Actions?: VolumeStatusActionsList;
24078 /**
24079 * The Availability Zone of the volume.
24080 */
24081 AvailabilityZone?: String;
24082 /**
24083 * The Amazon Resource Name (ARN) of the Outpost.
24084 */
24085 OutpostArn?: String;
24086 /**
24087 * A list of events associated with the volume.
24088 */
24089 Events?: VolumeStatusEventsList;
24090 /**
24091 * The volume ID.
24092 */
24093 VolumeId?: String;
24094 /**
24095 * The volume status.
24096 */
24097 VolumeStatus?: VolumeStatusInfo;
24098 /**
24099 * Information about the instances to which the volume is attached.
24100 */
24101 AttachmentStatuses?: VolumeStatusAttachmentStatusList;
24102 }
24103 export type VolumeStatusList = VolumeStatusItem[];
24104 export type VolumeStatusName = "io-enabled"|"io-performance"|string;
24105 export type VolumeType = "standard"|"io1"|"gp2"|"sc1"|"st1"|string;
24106 export interface Vpc {
24107 /**
24108 * The primary IPv4 CIDR block for the VPC.
24109 */
24110 CidrBlock?: String;
24111 /**
24112 * 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).
24113 */
24114 DhcpOptionsId?: String;
24115 /**
24116 * The current state of the VPC.
24117 */
24118 State?: VpcState;
24119 /**
24120 * The ID of the VPC.
24121 */
24122 VpcId?: String;
24123 /**
24124 * The ID of the AWS account that owns the VPC.
24125 */
24126 OwnerId?: String;
24127 /**
24128 * The allowed tenancy of instances launched into the VPC.
24129 */
24130 InstanceTenancy?: Tenancy;
24131 /**
24132 * Information about the IPv6 CIDR blocks associated with the VPC.
24133 */
24134 Ipv6CidrBlockAssociationSet?: VpcIpv6CidrBlockAssociationSet;
24135 /**
24136 * Information about the IPv4 CIDR blocks associated with the VPC.
24137 */
24138 CidrBlockAssociationSet?: VpcCidrBlockAssociationSet;
24139 /**
24140 * Indicates whether the VPC is the default VPC.
24141 */
24142 IsDefault?: Boolean;
24143 /**
24144 * Any tags assigned to the VPC.
24145 */
24146 Tags?: TagList;
24147 }
24148 export interface VpcAttachment {
24149 /**
24150 * The current state of the attachment.
24151 */
24152 State?: AttachmentStatus;
24153 /**
24154 * The ID of the VPC.
24155 */
24156 VpcId?: String;
24157 }
24158 export type VpcAttachmentList = VpcAttachment[];
24159 export type VpcAttributeName = "enableDnsSupport"|"enableDnsHostnames"|string;
24160 export type VpcCidrAssociationId = string;
24161 export interface VpcCidrBlockAssociation {
24162 /**
24163 * The association ID for the IPv4 CIDR block.
24164 */
24165 AssociationId?: String;
24166 /**
24167 * The IPv4 CIDR block.
24168 */
24169 CidrBlock?: String;
24170 /**
24171 * Information about the state of the CIDR block.
24172 */
24173 CidrBlockState?: VpcCidrBlockState;
24174 }
24175 export type VpcCidrBlockAssociationSet = VpcCidrBlockAssociation[];
24176 export interface VpcCidrBlockState {
24177 /**
24178 * The state of the CIDR block.
24179 */
24180 State?: VpcCidrBlockStateCode;
24181 /**
24182 * A message about the status of the CIDR block, if applicable.
24183 */
24184 StatusMessage?: String;
24185 }
24186 export type VpcCidrBlockStateCode = "associating"|"associated"|"disassociating"|"disassociated"|"failing"|"failed"|string;
24187 export interface VpcClassicLink {
24188 /**
24189 * Indicates whether the VPC is enabled for ClassicLink.
24190 */
24191 ClassicLinkEnabled?: Boolean;
24192 /**
24193 * Any tags assigned to the VPC.
24194 */
24195 Tags?: TagList;
24196 /**
24197 * The ID of the VPC.
24198 */
24199 VpcId?: String;
24200 }
24201 export type VpcClassicLinkIdList = VpcId[];
24202 export type VpcClassicLinkList = VpcClassicLink[];
24203 export interface VpcEndpoint {
24204 /**
24205 * The ID of the VPC endpoint.
24206 */
24207 VpcEndpointId?: String;
24208 /**
24209 * The type of endpoint.
24210 */
24211 VpcEndpointType?: VpcEndpointType;
24212 /**
24213 * The ID of the VPC to which the endpoint is associated.
24214 */
24215 VpcId?: String;
24216 /**
24217 * The name of the service to which the endpoint is associated.
24218 */
24219 ServiceName?: String;
24220 /**
24221 * The state of the VPC endpoint.
24222 */
24223 State?: State;
24224 /**
24225 * The policy document associated with the endpoint, if applicable.
24226 */
24227 PolicyDocument?: String;
24228 /**
24229 * (Gateway endpoint) One or more route tables associated with the endpoint.
24230 */
24231 RouteTableIds?: ValueStringList;
24232 /**
24233 * (Interface endpoint) One or more subnets in which the endpoint is located.
24234 */
24235 SubnetIds?: ValueStringList;
24236 /**
24237 * (Interface endpoint) Information about the security groups that are associated with the network interface.
24238 */
24239 Groups?: GroupIdentifierSet;
24240 /**
24241 * (Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.
24242 */
24243 PrivateDnsEnabled?: Boolean;
24244 /**
24245 * Indicates whether the VPC endpoint is being managed by its service.
24246 */
24247 RequesterManaged?: Boolean;
24248 /**
24249 * (Interface endpoint) One or more network interfaces for the endpoint.
24250 */
24251 NetworkInterfaceIds?: ValueStringList;
24252 /**
24253 * (Interface endpoint) The DNS entries for the endpoint.
24254 */
24255 DnsEntries?: DnsEntrySet;
24256 /**
24257 * The date and time that the VPC endpoint was created.
24258 */
24259 CreationTimestamp?: MillisecondDateTime;
24260 /**
24261 * Any tags assigned to the VPC endpoint.
24262 */
24263 Tags?: TagList;
24264 /**
24265 * The ID of the AWS account that owns the VPC endpoint.
24266 */
24267 OwnerId?: String;
24268 /**
24269 * The last error that occurred for VPC endpoint.
24270 */
24271 LastError?: LastError;
24272 }
24273 export interface VpcEndpointConnection {
24274 /**
24275 * The ID of the service to which the endpoint is connected.
24276 */
24277 ServiceId?: String;
24278 /**
24279 * The ID of the VPC endpoint.
24280 */
24281 VpcEndpointId?: String;
24282 /**
24283 * The AWS account ID of the owner of the VPC endpoint.
24284 */
24285 VpcEndpointOwner?: String;
24286 /**
24287 * The state of the VPC endpoint.
24288 */
24289 VpcEndpointState?: State;
24290 /**
24291 * The date and time that the VPC endpoint was created.
24292 */
24293 CreationTimestamp?: MillisecondDateTime;
24294 /**
24295 * The DNS entries for the VPC endpoint.
24296 */
24297 DnsEntries?: DnsEntrySet;
24298 /**
24299 * The Amazon Resource Names (ARNs) of the network load balancers for the service.
24300 */
24301 NetworkLoadBalancerArns?: ValueStringList;
24302 }
24303 export type VpcEndpointConnectionSet = VpcEndpointConnection[];
24304 export type VpcEndpointId = string;
24305 export type VpcEndpointIdList = VpcEndpointId[];
24306 export type VpcEndpointRouteTableIdList = RouteTableId[];
24307 export type VpcEndpointSecurityGroupIdList = SecurityGroupId[];
24308 export type VpcEndpointServiceId = string;
24309 export type VpcEndpointServiceIdList = VpcEndpointServiceId[];
24310 export type VpcEndpointSet = VpcEndpoint[];
24311 export type VpcEndpointSubnetIdList = SubnetId[];
24312 export type VpcEndpointType = "Interface"|"Gateway"|string;
24313 export type VpcFlowLogId = string;
24314 export type VpcId = string;
24315 export type VpcIdStringList = VpcId[];
24316 export interface VpcIpv6CidrBlockAssociation {
24317 /**
24318 * The association ID for the IPv6 CIDR block.
24319 */
24320 AssociationId?: String;
24321 /**
24322 * The IPv6 CIDR block.
24323 */
24324 Ipv6CidrBlock?: String;
24325 /**
24326 * Information about the state of the CIDR block.
24327 */
24328 Ipv6CidrBlockState?: VpcCidrBlockState;
24329 /**
24330 * The name of the location from which we advertise the IPV6 CIDR block.
24331 */
24332 NetworkBorderGroup?: String;
24333 /**
24334 * The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.
24335 */
24336 Ipv6Pool?: String;
24337 }
24338 export type VpcIpv6CidrBlockAssociationSet = VpcIpv6CidrBlockAssociation[];
24339 export type VpcList = Vpc[];
24340 export interface VpcPeeringConnection {
24341 /**
24342 * Information about the accepter VPC. CIDR block information is only returned when describing an active VPC peering connection.
24343 */
24344 AccepterVpcInfo?: VpcPeeringConnectionVpcInfo;
24345 /**
24346 * The time that an unaccepted VPC peering connection will expire.
24347 */
24348 ExpirationTime?: DateTime;
24349 /**
24350 * Information about the requester VPC. CIDR block information is only returned when describing an active VPC peering connection.
24351 */
24352 RequesterVpcInfo?: VpcPeeringConnectionVpcInfo;
24353 /**
24354 * The status of the VPC peering connection.
24355 */
24356 Status?: VpcPeeringConnectionStateReason;
24357 /**
24358 * Any tags assigned to the resource.
24359 */
24360 Tags?: TagList;
24361 /**
24362 * The ID of the VPC peering connection.
24363 */
24364 VpcPeeringConnectionId?: String;
24365 }
24366 export type VpcPeeringConnectionId = string;
24367 export type VpcPeeringConnectionIdList = VpcPeeringConnectionId[];
24368 export type VpcPeeringConnectionList = VpcPeeringConnection[];
24369 export interface VpcPeeringConnectionOptionsDescription {
24370 /**
24371 * Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.
24372 */
24373 AllowDnsResolutionFromRemoteVpc?: Boolean;
24374 /**
24375 * Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.
24376 */
24377 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
24378 /**
24379 * Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.
24380 */
24381 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
24382 }
24383 export interface VpcPeeringConnectionStateReason {
24384 /**
24385 * The status of the VPC peering connection.
24386 */
24387 Code?: VpcPeeringConnectionStateReasonCode;
24388 /**
24389 * A message that provides more information about the status, if applicable.
24390 */
24391 Message?: String;
24392 }
24393 export type VpcPeeringConnectionStateReasonCode = "initiating-request"|"pending-acceptance"|"active"|"deleted"|"rejected"|"failed"|"expired"|"provisioning"|"deleting"|string;
24394 export interface VpcPeeringConnectionVpcInfo {
24395 /**
24396 * The IPv4 CIDR block for the VPC.
24397 */
24398 CidrBlock?: String;
24399 /**
24400 * The IPv6 CIDR block for the VPC.
24401 */
24402 Ipv6CidrBlockSet?: Ipv6CidrBlockSet;
24403 /**
24404 * Information about the IPv4 CIDR blocks for the VPC.
24405 */
24406 CidrBlockSet?: CidrBlockSet;
24407 /**
24408 * The AWS account ID of the VPC owner.
24409 */
24410 OwnerId?: String;
24411 /**
24412 * Information about the VPC peering connection options for the accepter or requester VPC.
24413 */
24414 PeeringOptions?: VpcPeeringConnectionOptionsDescription;
24415 /**
24416 * The ID of the VPC.
24417 */
24418 VpcId?: String;
24419 /**
24420 * The Region in which the VPC is located.
24421 */
24422 Region?: String;
24423 }
24424 export type VpcState = "pending"|"available"|string;
24425 export type VpcTenancy = "default"|string;
24426 export interface VpnConnection {
24427 /**
24428 * 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.
24429 */
24430 CustomerGatewayConfiguration?: String;
24431 /**
24432 * The ID of the customer gateway at your end of the VPN connection.
24433 */
24434 CustomerGatewayId?: String;
24435 /**
24436 * 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.
24437 */
24438 Category?: String;
24439 /**
24440 * The current state of the VPN connection.
24441 */
24442 State?: VpnState;
24443 /**
24444 * The type of VPN connection.
24445 */
24446 Type?: GatewayType;
24447 /**
24448 * The ID of the VPN connection.
24449 */
24450 VpnConnectionId?: String;
24451 /**
24452 * The ID of the virtual private gateway at the AWS side of the VPN connection.
24453 */
24454 VpnGatewayId?: String;
24455 /**
24456 * The ID of the transit gateway associated with the VPN connection.
24457 */
24458 TransitGatewayId?: String;
24459 /**
24460 * The VPN connection options.
24461 */
24462 Options?: VpnConnectionOptions;
24463 /**
24464 * The static routes associated with the VPN connection.
24465 */
24466 Routes?: VpnStaticRouteList;
24467 /**
24468 * Any tags assigned to the VPN connection.
24469 */
24470 Tags?: TagList;
24471 /**
24472 * Information about the VPN tunnel.
24473 */
24474 VgwTelemetry?: VgwTelemetryList;
24475 }
24476 export type VpnConnectionId = string;
24477 export type VpnConnectionIdStringList = VpnConnectionId[];
24478 export type VpnConnectionList = VpnConnection[];
24479 export interface VpnConnectionOptions {
24480 /**
24481 * Indicates whether acceleration is enabled for the VPN connection.
24482 */
24483 EnableAcceleration?: Boolean;
24484 /**
24485 * Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.
24486 */
24487 StaticRoutesOnly?: Boolean;
24488 /**
24489 * Indicates the VPN tunnel options.
24490 */
24491 TunnelOptions?: TunnelOptionsList;
24492 }
24493 export interface VpnConnectionOptionsSpecification {
24494 /**
24495 * Indicate whether to enable acceleration for the VPN connection. Default: false
24496 */
24497 EnableAcceleration?: Boolean;
24498 /**
24499 * 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
24500 */
24501 StaticRoutesOnly?: Boolean;
24502 /**
24503 * The tunnel options for the VPN connection.
24504 */
24505 TunnelOptions?: VpnTunnelOptionsSpecificationsList;
24506 }
24507 export type VpnEcmpSupportValue = "enable"|"disable"|string;
24508 export interface VpnGateway {
24509 /**
24510 * The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.
24511 */
24512 AvailabilityZone?: String;
24513 /**
24514 * The current state of the virtual private gateway.
24515 */
24516 State?: VpnState;
24517 /**
24518 * The type of VPN connection the virtual private gateway supports.
24519 */
24520 Type?: GatewayType;
24521 /**
24522 * Any VPCs attached to the virtual private gateway.
24523 */
24524 VpcAttachments?: VpcAttachmentList;
24525 /**
24526 * The ID of the virtual private gateway.
24527 */
24528 VpnGatewayId?: String;
24529 /**
24530 * The private Autonomous System Number (ASN) for the Amazon side of a BGP session.
24531 */
24532 AmazonSideAsn?: Long;
24533 /**
24534 * Any tags assigned to the virtual private gateway.
24535 */
24536 Tags?: TagList;
24537 }
24538 export type VpnGatewayId = string;
24539 export type VpnGatewayIdStringList = VpnGatewayId[];
24540 export type VpnGatewayList = VpnGateway[];
24541 export type VpnProtocol = "openvpn"|string;
24542 export type VpnState = "pending"|"available"|"deleting"|"deleted"|string;
24543 export interface VpnStaticRoute {
24544 /**
24545 * The CIDR block associated with the local subnet of the customer data center.
24546 */
24547 DestinationCidrBlock?: String;
24548 /**
24549 * Indicates how the routes were provided.
24550 */
24551 Source?: VpnStaticRouteSource;
24552 /**
24553 * The current state of the static route.
24554 */
24555 State?: VpnState;
24556 }
24557 export type VpnStaticRouteList = VpnStaticRoute[];
24558 export type VpnStaticRouteSource = "Static"|string;
24559 export interface VpnTunnelOptionsSpecification {
24560 /**
24561 * 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
24562 */
24563 TunnelInsideCidr?: String;
24564 /**
24565 * The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway. Constraints: Allowed characters are alphanumeric characters, periods (.), and underscores (_). Must be between 8 and 64 characters in length and cannot start with zero (0).
24566 */
24567 PreSharedKey?: String;
24568 /**
24569 * The lifetime for phase 1 of the IKE negotiation, in seconds. Constraints: A value between 900 and 28,800. Default: 28800
24570 */
24571 Phase1LifetimeSeconds?: Integer;
24572 /**
24573 * The lifetime for phase 2 of the IKE negotiation, in seconds. Constraints: A value between 900 and 3,600. The value must be less than the value for Phase1LifetimeSeconds. Default: 3600
24574 */
24575 Phase2LifetimeSeconds?: Integer;
24576 /**
24577 * The margin time, in seconds, before the phase 2 lifetime expires, during which the AWS side of the VPN connection performs an IKE rekey. The exact time of the rekey is randomly selected based on the value for RekeyFuzzPercentage. Constraints: A value between 60 and half of Phase2LifetimeSeconds. Default: 540
24578 */
24579 RekeyMarginTimeSeconds?: Integer;
24580 /**
24581 * The percentage of the rekey window (determined by RekeyMarginTimeSeconds) during which the rekey time is randomly selected. Constraints: A value between 0 and 100. Default: 100
24582 */
24583 RekeyFuzzPercentage?: Integer;
24584 /**
24585 * The number of packets in an IKE replay window. Constraints: A value between 64 and 2048. Default: 1024
24586 */
24587 ReplayWindowSize?: Integer;
24588 /**
24589 * The number of seconds after which a DPD timeout occurs. Constraints: A value between 0 and 30. Default: 30
24590 */
24591 DPDTimeoutSeconds?: Integer;
24592 /**
24593 * One or more encryption algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: AES128 | AES256
24594 */
24595 Phase1EncryptionAlgorithms?: Phase1EncryptionAlgorithmsRequestList;
24596 /**
24597 * One or more encryption algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: AES128 | AES256
24598 */
24599 Phase2EncryptionAlgorithms?: Phase2EncryptionAlgorithmsRequestList;
24600 /**
24601 * One or more integrity algorithms that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: SHA1 | SHA2-256
24602 */
24603 Phase1IntegrityAlgorithms?: Phase1IntegrityAlgorithmsRequestList;
24604 /**
24605 * One or more integrity algorithms that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: SHA1 | SHA2-256
24606 */
24607 Phase2IntegrityAlgorithms?: Phase2IntegrityAlgorithmsRequestList;
24608 /**
24609 * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 1 IKE negotiations. Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 22 | 23 | 24
24610 */
24611 Phase1DHGroupNumbers?: Phase1DHGroupNumbersRequestList;
24612 /**
24613 * One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel for phase 2 IKE negotiations. Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 22 | 23 | 24
24614 */
24615 Phase2DHGroupNumbers?: Phase2DHGroupNumbersRequestList;
24616 /**
24617 * The IKE versions that are permitted for the VPN tunnel. Valid values: ikev1 | ikev2
24618 */
24619 IKEVersions?: IKEVersionsRequestList;
24620 }
24621 export type VpnTunnelOptionsSpecificationsList = VpnTunnelOptionsSpecification[];
24622 export interface WithdrawByoipCidrRequest {
24623 /**
24624 * The address range, in CIDR notation.
24625 */
24626 Cidr: String;
24627 /**
24628 * Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation. Otherwise, it is UnauthorizedOperation.
24629 */
24630 DryRun?: Boolean;
24631 }
24632 export interface WithdrawByoipCidrResult {
24633 /**
24634 * Information about the address pool.
24635 */
24636 ByoipCidr?: ByoipCidr;
24637 }
24638 export type ZoneIdStringList = String[];
24639 export type ZoneNameStringList = String[];
24640 export type scope = "Availability Zone"|"Region"|string;
24641 export type totalFpgaMemory = number;
24642 export type totalGpuMemory = number;
24643 /**
24644 * 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.
24645 */
24646 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;
24647 export interface ClientApiVersions {
24648 /**
24649 * 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.
24650 */
24651 apiVersion?: apiVersion;
24652 }
24653 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
24654 /**
24655 * Contains interfaces for use with the EC2 client.
24656 */
24657 export import Types = EC2;
24658}
24659export = EC2;