@aws-sdk/client-ec2 3.1097.0 → 3.1098.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +21 -0
  2. package/dist-cjs/index.js +113 -11
  3. package/dist-es/EC2.js +8 -0
  4. package/dist-es/commands/CreateTransitGatewayPolicyTableEntryCommand.js +4 -0
  5. package/dist-es/commands/DeleteTransitGatewayPolicyTableEntryCommand.js +4 -0
  6. package/dist-es/commands/ModifyTransitGatewayPolicyTableEntryCommand.js +4 -0
  7. package/dist-es/commands/index.js +3 -0
  8. package/dist-es/models/enums.js +4 -0
  9. package/dist-es/pagination/GetTransitGatewayPolicyTableEntriesPaginator.js +4 -0
  10. package/dist-es/pagination/index.js +1 -0
  11. package/dist-es/schemas/schemas_0.js +77 -10
  12. package/dist-types/EC2.d.ts +28 -0
  13. package/dist-types/EC2Client.d.ts +5 -2
  14. package/dist-types/commands/CreateTransitGatewayPolicyTableEntryCommand.d.ts +100 -0
  15. package/dist-types/commands/DeleteRouteCommand.d.ts +1 -1
  16. package/dist-types/commands/DeleteRouteServerCommand.d.ts +1 -1
  17. package/dist-types/commands/DeleteRouteServerEndpointCommand.d.ts +1 -1
  18. package/dist-types/commands/DeleteRouteServerPeerCommand.d.ts +1 -1
  19. package/dist-types/commands/DeleteTransitGatewayPolicyTableEntryCommand.d.ts +88 -0
  20. package/dist-types/commands/DescribeImageUsageReportEntriesCommand.d.ts +1 -1
  21. package/dist-types/commands/DescribeImageUsageReportsCommand.d.ts +1 -2
  22. package/dist-types/commands/DescribeImagesCommand.d.ts +1 -1
  23. package/dist-types/commands/DescribeTransitGatewayAttachmentsCommand.d.ts +1 -0
  24. package/dist-types/commands/GetActiveVpnTunnelStatusCommand.d.ts +1 -1
  25. package/dist-types/commands/GetAllowedImagesSettingsCommand.d.ts +1 -1
  26. package/dist-types/commands/GetAssociatedEnclaveCertificateIamRolesCommand.d.ts +1 -2
  27. package/dist-types/commands/GetTransitGatewayPolicyTableEntriesCommand.d.ts +2 -0
  28. package/dist-types/commands/ModifyIpamCommand.d.ts +2 -1
  29. package/dist-types/commands/ModifyIpamPolicyAllocationRulesCommand.d.ts +1 -1
  30. package/dist-types/commands/ModifyIpamPoolCommand.d.ts +1 -1
  31. package/dist-types/commands/ModifyTransitGatewayPolicyTableEntryCommand.d.ts +100 -0
  32. package/dist-types/commands/UnassignPrivateNatGatewayAddressCommand.d.ts +1 -1
  33. package/dist-types/commands/UnlockSnapshotCommand.d.ts +1 -1
  34. package/dist-types/commands/UnmonitorInstancesCommand.d.ts +1 -1
  35. package/dist-types/commands/UpdateCapacityManagerMonitoredTagKeysCommand.d.ts +1 -1
  36. package/dist-types/commands/index.d.ts +3 -0
  37. package/dist-types/models/enums.d.ts +12 -0
  38. package/dist-types/models/models_2.d.ts +175 -116
  39. package/dist-types/models/models_3.d.ts +148 -802
  40. package/dist-types/models/models_4.d.ts +803 -350
  41. package/dist-types/models/models_5.d.ts +355 -262
  42. package/dist-types/models/models_6.d.ts +305 -227
  43. package/dist-types/models/models_7.d.ts +200 -150
  44. package/dist-types/models/models_8.d.ts +145 -1
  45. package/dist-types/pagination/GetTransitGatewayPolicyTableEntriesPaginator.d.ts +7 -0
  46. package/dist-types/pagination/index.d.ts +1 -0
  47. package/dist-types/schemas/schemas_0.d.ts +11 -0
  48. package/dist-types/ts3.4/EC2.d.ts +58 -0
  49. package/dist-types/ts3.4/EC2Client.d.ts +18 -0
  50. package/dist-types/ts3.4/commands/CreateTransitGatewayPolicyTableEntryCommand.d.ts +42 -0
  51. package/dist-types/ts3.4/commands/DeleteRouteCommand.d.ts +1 -1
  52. package/dist-types/ts3.4/commands/DeleteRouteServerCommand.d.ts +1 -1
  53. package/dist-types/ts3.4/commands/DeleteRouteServerEndpointCommand.d.ts +1 -1
  54. package/dist-types/ts3.4/commands/DeleteRouteServerPeerCommand.d.ts +1 -1
  55. package/dist-types/ts3.4/commands/DeleteTransitGatewayPolicyTableEntryCommand.d.ts +42 -0
  56. package/dist-types/ts3.4/commands/DescribeImageUsageReportEntriesCommand.d.ts +1 -1
  57. package/dist-types/ts3.4/commands/DescribeImageUsageReportsCommand.d.ts +4 -2
  58. package/dist-types/ts3.4/commands/DescribeImagesCommand.d.ts +1 -1
  59. package/dist-types/ts3.4/commands/GetActiveVpnTunnelStatusCommand.d.ts +1 -1
  60. package/dist-types/ts3.4/commands/GetAllowedImagesSettingsCommand.d.ts +1 -1
  61. package/dist-types/ts3.4/commands/GetAssociatedEnclaveCertificateIamRolesCommand.d.ts +4 -2
  62. package/dist-types/ts3.4/commands/ModifyIpamCommand.d.ts +2 -1
  63. package/dist-types/ts3.4/commands/ModifyIpamPolicyAllocationRulesCommand.d.ts +1 -1
  64. package/dist-types/ts3.4/commands/ModifyIpamPoolCommand.d.ts +1 -1
  65. package/dist-types/ts3.4/commands/ModifyTransitGatewayPolicyTableEntryCommand.d.ts +42 -0
  66. package/dist-types/ts3.4/commands/UnassignPrivateNatGatewayAddressCommand.d.ts +1 -1
  67. package/dist-types/ts3.4/commands/UnlockSnapshotCommand.d.ts +1 -1
  68. package/dist-types/ts3.4/commands/UnmonitorInstancesCommand.d.ts +1 -1
  69. package/dist-types/ts3.4/commands/UpdateCapacityManagerMonitoredTagKeysCommand.d.ts +1 -1
  70. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  71. package/dist-types/ts3.4/models/enums.d.ts +6 -0
  72. package/dist-types/ts3.4/models/models_2.d.ts +41 -30
  73. package/dist-types/ts3.4/models/models_3.d.ts +40 -105
  74. package/dist-types/ts3.4/models/models_4.d.ts +98 -61
  75. package/dist-types/ts3.4/models/models_5.d.ts +68 -46
  76. package/dist-types/ts3.4/models/models_6.d.ts +43 -50
  77. package/dist-types/ts3.4/models/models_7.d.ts +49 -36
  78. package/dist-types/ts3.4/models/models_8.d.ts +36 -1
  79. package/dist-types/ts3.4/pagination/GetTransitGatewayPolicyTableEntriesPaginator.d.ts +11 -0
  80. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  81. package/dist-types/ts3.4/schemas/schemas_0.d.ts +11 -0
  82. package/package.json +8 -8
@@ -1,9 +1,355 @@
1
- import type { _InstanceType, ActivityStatus, AllocationStrategy, AllowedImagesSettingsDisabledState, AllowedImagesSettingsEnabledState, BatchState, CapacityManagerStatus, ClientCertificateRevocationListStatusCode, DeviceTrustProviderType, DiskImageFormat, DnsNameState, ExcessCapacityTerminationPolicy, FastLaunchResourceType, FastLaunchStateCode, FastSnapshotRestoreStateCode, FleetType, ImageBlockPublicAccessDisabledState, ImageBlockPublicAccessEnabledState, InitializationType, InstanceInterruptionBehavior, InternetGatewayBlockMode, IpAddressType, ManagedBy, MetricType, OnDemandAllocationStrategy, PayerResponsibility, ResourceType, RIProductDescription, RouteServerPropagationState, SecurityGroupVpcAssociationState, ServiceConnectivityType, SnapshotBlockPublicAccessState, SpotInstanceState, SpotInstanceType, State, StatisticType, TargetCapacityUnitType, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayAttachmentState, TransitGatewayPropagationState, UserTrustProviderType, VerifiedAccessLogDeliveryStatusCode, VolumeAttributeName, VolumeModificationState, VolumeStatusInfoStatus, VolumeStatusName, VolumeType, VpcAttributeName, VpcBlockPublicAccessExclusionsAllowed, VpcBlockPublicAccessState } from "./enums";
2
- import type { ActiveVpnTunnelStatus, AddressTransfer, AllowedPrincipal, AsnAssociation, AssociationStatus, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpamResourceDiscoveryAssociation, NatGatewayAddress, OperatorResponse, RouteServerAssociation, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, TransitGatewayAssociation, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, TrunkInterfaceAssociation, UserIdGroupPair, VerifiedAccessInstance, VerifiedAccessTrustProvider, Volume, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, VpcPeeringConnection } from "./models_0";
3
- import type { BlockDeviceMapping, GroupIdentifier, Subnet, Vpc, VpcEncryptionControl } from "./models_1";
1
+ import type { _InstanceType, ActivityStatus, AllocationStrategy, AllowedImagesSettingsDisabledState, AllowedImagesSettingsEnabledState, BatchState, CapacityManagerStatus, ClientCertificateRevocationListStatusCode, DeviceTrustProviderType, DiskImageFormat, DnsNameState, ExcessCapacityTerminationPolicy, FastLaunchResourceType, FastLaunchStateCode, FastSnapshotRestoreStateCode, FleetType, ImageBlockPublicAccessDisabledState, ImageBlockPublicAccessEnabledState, InitializationType, InstanceInterruptionBehavior, InternetGatewayBlockMode, IpAddressType, ManagedBy, MetricType, OnDemandAllocationStrategy, PayerResponsibility, ReplacementStrategy, ResourceType, RIProductDescription, RouteServerPropagationState, SecurityGroupVpcAssociationState, ServiceConnectivityType, SnapshotBlockPublicAccessState, SpotInstanceState, SpotInstanceType, State, StatisticType, TargetCapacityUnitType, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayAttachmentState, TransitGatewayPropagationState, UserTrustProviderType, VerifiedAccessLogDeliveryStatusCode, VolumeAttributeName, VolumeModificationState, VolumeStatusInfoStatus, VolumeStatusName, VolumeType, VpcAttributeName, VpcBlockPublicAccessExclusionsAllowed, VpcBlockPublicAccessState } from "./enums";
2
+ import type { AddressTransfer, AllowedPrincipal, AsnAssociation, AssociationStatus, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpamResourceDiscoveryAssociation, NatGatewayAddress, OperatorResponse, RouteServerAssociation, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, TransitGatewayAssociation, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, TrunkInterfaceAssociation, UserIdGroupPair, VerifiedAccessInstance, VerifiedAccessTrustProvider, Volume, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, VpcPeeringConnection } from "./models_0";
3
+ import type { BlockDeviceMapping, FleetLaunchTemplateSpecification, GroupIdentifier, InstanceRequirements, Subnet, Vpc, VpcEncryptionControl } from "./models_1";
4
4
  import type { ConnectionNotification, DnsEntry, PayerResponsibilityEntry, ServiceConfiguration, ServiceTypeDetail, SpotInstanceStateFault, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorSession, TrafficMirrorTarget, TransitGateway, TransitGatewayConnect, TransitGatewayConnectPeer, TransitGatewayMeteringPolicy, TransitGatewayMulticastDomain, TransitGatewayPolicyTable, TransitGatewayRouteTable, TransitGatewayRouteTableAnnouncement, VerifiedAccessEndpoint, VerifiedAccessGroup, VpcBlockPublicAccessExclusion, VpcEndpoint, VpnConcentrator, VpnConnection, VpnGateway } from "./models_2";
5
5
  import type { ExportTaskS3Location, FastLaunchLaunchTemplateSpecificationResponse, FastLaunchSnapshotConfigurationResponse, Filter, ProductCode } from "./models_3";
6
- import type { AttributeBooleanValue, InstanceNetworkInterfaceSpecification, LaunchTemplateConfig, LoadBalancersConfig, RegisteredInstance, SpotCapacityRebalance, SpotFleetLaunchSpecification, SpotPlacement } from "./models_4";
6
+ import type { AttributeBooleanValue, InstanceNetworkInterfaceSpecification, RegisteredInstance, SpotFleetMonitoring, SpotFleetTagSpecification, SpotPlacement } from "./models_4";
7
+ /**
8
+ * <p>Describes the launch specification for one or more Spot Instances. If you include
9
+ * On-Demand capacity in your fleet request or want to specify an EFA network device, you
10
+ * can't use <code>SpotFleetLaunchSpecification</code>; you must use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html">LaunchTemplateConfig</a>.</p>
11
+ * @public
12
+ */
13
+ export interface SpotFleetLaunchSpecification {
14
+ /**
15
+ * <p>Deprecated.</p>
16
+ * @public
17
+ */
18
+ AddressingType?: string | undefined;
19
+ /**
20
+ * <p>One or more block devices that are mapped to the Spot Instances. You can't specify both
21
+ * a snapshot ID and an encryption value. This is because only blank volumes can be
22
+ * encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its
23
+ * encryption status is used for the volume encryption status.</p>
24
+ * @public
25
+ */
26
+ BlockDeviceMappings?: BlockDeviceMapping[] | undefined;
27
+ /**
28
+ * <p>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.</p>
29
+ * <p>Default: <code>false</code>
30
+ * </p>
31
+ * @public
32
+ */
33
+ EbsOptimized?: boolean | undefined;
34
+ /**
35
+ * <p>The IAM instance profile.</p>
36
+ * @public
37
+ */
38
+ IamInstanceProfile?: IamInstanceProfileSpecification | undefined;
39
+ /**
40
+ * <p>The ID of the AMI.</p>
41
+ * @public
42
+ */
43
+ ImageId?: string | undefined;
44
+ /**
45
+ * <p>The instance type.</p>
46
+ * @public
47
+ */
48
+ InstanceType?: _InstanceType | undefined;
49
+ /**
50
+ * <p>The ID of the kernel.</p>
51
+ * @public
52
+ */
53
+ KernelId?: string | undefined;
54
+ /**
55
+ * <p>The name of the key pair.</p>
56
+ * @public
57
+ */
58
+ KeyName?: string | undefined;
59
+ /**
60
+ * <p>Enable or disable monitoring for the instances.</p>
61
+ * @public
62
+ */
63
+ Monitoring?: SpotFleetMonitoring | undefined;
64
+ /**
65
+ * <p>The network interfaces.</p>
66
+ * <note>
67
+ * <p>
68
+ * <code>SpotFleetLaunchSpecification</code> does not support Elastic Fabric Adapter (EFA).
69
+ * You must use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html">LaunchTemplateConfig</a> instead.</p>
70
+ * </note>
71
+ * @public
72
+ */
73
+ NetworkInterfaces?: InstanceNetworkInterfaceSpecification[] | undefined;
74
+ /**
75
+ * <p>The placement information.</p>
76
+ * @public
77
+ */
78
+ Placement?: SpotPlacement | undefined;
79
+ /**
80
+ * <p>The ID of the RAM disk. Some kernels require additional drivers at launch. Check the kernel
81
+ * requirements for information about whether you need to specify a RAM disk. To find kernel
82
+ * requirements, refer to the Amazon Web Services Resource Center and search for the kernel ID.</p>
83
+ * @public
84
+ */
85
+ RamdiskId?: string | undefined;
86
+ /**
87
+ * <p>The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to
88
+ * increased interruptions. If you do not specify this parameter, you will pay the current Spot price.</p>
89
+ * <important>
90
+ * <p>If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.</p>
91
+ * </important>
92
+ * @public
93
+ */
94
+ SpotPrice?: string | undefined;
95
+ /**
96
+ * <p>The IDs of the subnets in which to launch the instances. To specify multiple subnets, separate
97
+ * them using commas; for example, "subnet-1234abcdeexample1, subnet-0987cdef6example2".</p>
98
+ * <p>If you specify a network interface, you must specify any subnets as part of the
99
+ * network interface instead of using this parameter.</p>
100
+ * @public
101
+ */
102
+ SubnetId?: string | undefined;
103
+ /**
104
+ * <p>The base64-encoded user data that instances use when starting up. User data is limited to 16 KB.</p>
105
+ * @public
106
+ */
107
+ UserData?: string | undefined;
108
+ /**
109
+ * <p>The number of units provided by the specified instance type. These are the same units
110
+ * that you chose to set the target capacity in terms of instances, or a performance
111
+ * characteristic such as vCPUs, memory, or I/O.</p>
112
+ * <p>If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the
113
+ * number of instances to the next whole number. If this value is not specified, the default
114
+ * is 1.</p>
115
+ * <note>
116
+ * <p>When specifying weights, the price used in the <code>lowestPrice</code> and
117
+ * <code>priceCapacityOptimized</code> allocation strategies is per
118
+ * <i>unit</i> hour (where the instance price is divided by the specified
119
+ * weight). However, if all the specified weights are above the requested
120
+ * <code>TargetCapacity</code>, resulting in only 1 instance being launched, the price
121
+ * used is per <i>instance</i> hour.</p>
122
+ * </note>
123
+ * @public
124
+ */
125
+ WeightedCapacity?: number | undefined;
126
+ /**
127
+ * <p>The tags to apply during creation.</p>
128
+ * @public
129
+ */
130
+ TagSpecifications?: SpotFleetTagSpecification[] | undefined;
131
+ /**
132
+ * <p>The attributes for the instance types. When you specify instance attributes, Amazon EC2 will
133
+ * identify instance types with those attributes.</p>
134
+ * <note>
135
+ * <p>If you specify <code>InstanceRequirements</code>, you can't specify
136
+ * <code>InstanceType</code>.</p>
137
+ * </note>
138
+ * @public
139
+ */
140
+ InstanceRequirements?: InstanceRequirements | undefined;
141
+ /**
142
+ * <p>The security groups.</p>
143
+ * <p>If you specify a network interface, you must specify any security groups as part of
144
+ * the network interface instead of using this parameter.</p>
145
+ * @public
146
+ */
147
+ SecurityGroups?: GroupIdentifier[] | undefined;
148
+ }
149
+ /**
150
+ * <p>Describes overrides for a launch template.</p>
151
+ * @public
152
+ */
153
+ export interface LaunchTemplateOverrides {
154
+ /**
155
+ * <p>The instance type.</p>
156
+ * @public
157
+ */
158
+ InstanceType?: _InstanceType | undefined;
159
+ /**
160
+ * <p>The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to
161
+ * increased interruptions. If you do not specify this parameter, you will pay the current Spot price.</p>
162
+ * <important>
163
+ * <p>If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.</p>
164
+ * </important>
165
+ * @public
166
+ */
167
+ SpotPrice?: string | undefined;
168
+ /**
169
+ * <p>The ID of the subnet in which to launch the instances.</p>
170
+ * @public
171
+ */
172
+ SubnetId?: string | undefined;
173
+ /**
174
+ * <p>The Availability Zone in which to launch the instances. For example,
175
+ * <code>us-east-2a</code>.</p>
176
+ * <p>Either <code>AvailabilityZone</code> or <code>AvailabilityZoneId</code> must be
177
+ * specified in the request, but not both.</p>
178
+ * @public
179
+ */
180
+ AvailabilityZone?: string | undefined;
181
+ /**
182
+ * <p>The number of units provided by the specified instance type. These are the same units
183
+ * that you chose to set the target capacity in terms of instances, or a performance
184
+ * characteristic such as vCPUs, memory, or I/O.</p>
185
+ * <p>If the target capacity divided by this value is not a whole number, Amazon EC2 rounds the
186
+ * number of instances to the next whole number. If this value is not specified, the default
187
+ * is 1.</p>
188
+ * <note>
189
+ * <p>When specifying weights, the price used in the <code>lowestPrice</code> and
190
+ * <code>priceCapacityOptimized</code> allocation strategies is per
191
+ * <i>unit</i> hour (where the instance price is divided by the specified
192
+ * weight). However, if all the specified weights are above the requested
193
+ * <code>TargetCapacity</code>, resulting in only 1 instance being launched, the price
194
+ * used is per <i>instance</i> hour.</p>
195
+ * </note>
196
+ * @public
197
+ */
198
+ WeightedCapacity?: number | undefined;
199
+ /**
200
+ * <p>The priority for the launch template override. The highest priority is launched
201
+ * first.</p>
202
+ * <p>If <code>OnDemandAllocationStrategy</code> is set to <code>prioritized</code>, Spot Fleet
203
+ * uses priority to determine which launch template override to use first in fulfilling
204
+ * On-Demand capacity.</p>
205
+ * <p>If the Spot <code>AllocationStrategy</code> is set to
206
+ * <code>capacityOptimizedPrioritized</code>, Spot Fleet uses priority on a best-effort basis
207
+ * to determine which launch template override to use in fulfilling Spot capacity, but
208
+ * optimizes for capacity first.</p>
209
+ * <p>Valid values are whole numbers starting at <code>0</code>. The lower the number, the
210
+ * higher the priority. If no number is set, the launch template override has the lowest
211
+ * priority. You can set the same priority for different launch template overrides.</p>
212
+ * @public
213
+ */
214
+ Priority?: number | undefined;
215
+ /**
216
+ * <p>The instance requirements. When you specify instance requirements, Amazon EC2 will identify
217
+ * instance types with the provided requirements, and then use your On-Demand and Spot
218
+ * allocation strategies to launch instances from these instance types, in the same way as
219
+ * when you specify a list of instance types.</p>
220
+ * <note>
221
+ * <p>If you specify <code>InstanceRequirements</code>, you can't specify
222
+ * <code>InstanceType</code>.</p>
223
+ * </note>
224
+ * @public
225
+ */
226
+ InstanceRequirements?: InstanceRequirements | undefined;
227
+ /**
228
+ * <p>The ID of the Availability Zone in which to launch the instances. For example,
229
+ * <code>use2-az1</code>.</p>
230
+ * <p>Either <code>AvailabilityZone</code> or <code>AvailabilityZoneId</code> must be
231
+ * specified in the request, but not both.</p>
232
+ * @public
233
+ */
234
+ AvailabilityZoneId?: string | undefined;
235
+ }
236
+ /**
237
+ * <p>Describes a launch template and overrides.</p>
238
+ * @public
239
+ */
240
+ export interface LaunchTemplateConfig {
241
+ /**
242
+ * <p>The launch template to use. Make sure that the launch template does not contain the
243
+ * <code>NetworkInterfaceId</code> parameter because you can't specify a network interface
244
+ * ID in a Spot Fleet.</p>
245
+ * @public
246
+ */
247
+ LaunchTemplateSpecification?: FleetLaunchTemplateSpecification | undefined;
248
+ /**
249
+ * <p>Any parameters that you specify override the same parameters in the launch
250
+ * template.</p>
251
+ * @public
252
+ */
253
+ Overrides?: LaunchTemplateOverrides[] | undefined;
254
+ }
255
+ /**
256
+ * <p>Describes a Classic Load Balancer.</p>
257
+ * @public
258
+ */
259
+ export interface ClassicLoadBalancer {
260
+ /**
261
+ * <p>The name of the load balancer.</p>
262
+ * @public
263
+ */
264
+ Name?: string | undefined;
265
+ }
266
+ /**
267
+ * <p>Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers
268
+ * the running Spot Instances with these Classic Load Balancers.</p>
269
+ * @public
270
+ */
271
+ export interface ClassicLoadBalancersConfig {
272
+ /**
273
+ * <p>One or more Classic Load Balancers.</p>
274
+ * @public
275
+ */
276
+ ClassicLoadBalancers?: ClassicLoadBalancer[] | undefined;
277
+ }
278
+ /**
279
+ * <p>Describes a load balancer target group.</p>
280
+ * @public
281
+ */
282
+ export interface TargetGroup {
283
+ /**
284
+ * <p>The Amazon Resource Name (ARN) of the target group.</p>
285
+ * @public
286
+ */
287
+ Arn?: string | undefined;
288
+ }
289
+ /**
290
+ * <p>Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the
291
+ * running Spot Instances with these target groups.</p>
292
+ * @public
293
+ */
294
+ export interface TargetGroupsConfig {
295
+ /**
296
+ * <p>One or more target groups.</p>
297
+ * @public
298
+ */
299
+ TargetGroups?: TargetGroup[] | undefined;
300
+ }
301
+ /**
302
+ * <p>Describes the Classic Load Balancers and target groups to attach to a Spot Fleet
303
+ * request.</p>
304
+ * @public
305
+ */
306
+ export interface LoadBalancersConfig {
307
+ /**
308
+ * <p>The Classic Load Balancers.</p>
309
+ * @public
310
+ */
311
+ ClassicLoadBalancersConfig?: ClassicLoadBalancersConfig | undefined;
312
+ /**
313
+ * <p>The target groups.</p>
314
+ * @public
315
+ */
316
+ TargetGroupsConfig?: TargetGroupsConfig | undefined;
317
+ }
318
+ /**
319
+ * <p>The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your
320
+ * Spot Instance is at an elevated risk of being interrupted. For more information, see
321
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html">Capacity
322
+ * rebalancing</a> in the <i>Amazon EC2 User Guide</i>.</p>
323
+ * @public
324
+ */
325
+ export interface SpotCapacityRebalance {
326
+ /**
327
+ * <p>The replacement strategy to use. Only available for fleets of type
328
+ * <code>maintain</code>.</p>
329
+ * <p>
330
+ * <code>launch</code> - Spot Fleet launches a new replacement Spot Instance when a
331
+ * rebalance notification is emitted for an existing Spot Instance in the fleet. Spot Fleet
332
+ * does not terminate the instances that receive a rebalance notification. You can
333
+ * terminate the old instances, or you can leave them running. You are charged for all
334
+ * instances while they are running. </p>
335
+ * <p>
336
+ * <code>launch-before-terminate</code> - Spot Fleet launches a new replacement Spot
337
+ * Instance when a rebalance notification is emitted for an existing Spot Instance in the
338
+ * fleet, and then, after a delay that you specify (in <code>TerminationDelay</code>),
339
+ * terminates the instances that received a rebalance notification.</p>
340
+ * @public
341
+ */
342
+ ReplacementStrategy?: ReplacementStrategy | undefined;
343
+ /**
344
+ * <p>The amount of time (in seconds) that Amazon EC2 waits before terminating the old Spot
345
+ * Instance after launching a new replacement Spot Instance.</p>
346
+ * <p>Required when <code>ReplacementStrategy</code> is set to <code>launch-before-terminate</code>.</p>
347
+ * <p>Not valid when <code>ReplacementStrategy</code> is set to <code>launch</code>.</p>
348
+ * <p>Valid values: Minimum value of <code>120</code> seconds. Maximum value of <code>7200</code> seconds.</p>
349
+ * @public
350
+ */
351
+ TerminationDelay?: number | undefined;
352
+ }
7
353
  /**
8
354
  * <p>The strategies for managing your Spot Instances that are at an elevated risk of being
9
355
  * interrupted.</p>
@@ -1936,6 +2282,11 @@ export interface TransitGatewayAttachmentAssociation {
1936
2282
  * @public
1937
2283
  */
1938
2284
  TransitGatewayRouteTableId?: string | undefined;
2285
+ /**
2286
+ * <p>The ID of the transit gateway policy table associated with the attachment.</p>
2287
+ * @public
2288
+ */
2289
+ TransitGatewayPolicyTableId?: string | undefined;
1939
2290
  /**
1940
2291
  * <p>The state of the association.</p>
1941
2292
  * @public
@@ -8554,261 +8905,3 @@ export interface ExportVerifiedAccessInstanceClientConfigurationResult {
8554
8905
  */
8555
8906
  OpenVpnConfigurations?: VerifiedAccessInstanceOpenVpnClientConfiguration[] | undefined;
8556
8907
  }
8557
- /**
8558
- * @public
8559
- */
8560
- export interface GetActiveVpnTunnelStatusRequest {
8561
- /**
8562
- * <p>The ID of the VPN connection for which to retrieve the active tunnel status.</p>
8563
- * @public
8564
- */
8565
- VpnConnectionId: string | undefined;
8566
- /**
8567
- * <p>The external IP address of the VPN tunnel for which to retrieve the active status.</p>
8568
- * @public
8569
- */
8570
- VpnTunnelOutsideIpAddress: string | undefined;
8571
- /**
8572
- * <p>Checks whether you have the required permissions for the action, without actually making the request.</p>
8573
- * @public
8574
- */
8575
- DryRun?: boolean | undefined;
8576
- }
8577
- /**
8578
- * @public
8579
- */
8580
- export interface GetActiveVpnTunnelStatusResult {
8581
- /**
8582
- * <p>Information about the current security configuration of the VPN tunnel.</p>
8583
- * @public
8584
- */
8585
- ActiveVpnTunnelStatus?: ActiveVpnTunnelStatus | undefined;
8586
- }
8587
- /**
8588
- * @public
8589
- */
8590
- export interface GetAllowedImagesSettingsRequest {
8591
- /**
8592
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8593
- * and provides an error response. If you have the required permissions, the error response is
8594
- * <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8595
- * @public
8596
- */
8597
- DryRun?: boolean | undefined;
8598
- }
8599
- /**
8600
- * <p>The maximum age for allowed images.</p>
8601
- * @public
8602
- */
8603
- export interface CreationDateCondition {
8604
- /**
8605
- * <p>The maximum number of days that have elapsed since the image was created. For example, a
8606
- * value of <code>300</code> allows images that were created within the last 300 days.</p>
8607
- * @public
8608
- */
8609
- MaximumDaysSinceCreated?: number | undefined;
8610
- }
8611
- /**
8612
- * <p>The maximum period since deprecation for allowed images.</p>
8613
- * @public
8614
- */
8615
- export interface DeprecationTimeCondition {
8616
- /**
8617
- * <p>The maximum number of days that have elapsed since the image was deprecated. When set to
8618
- * <code>0</code>, no deprecated images are allowed.</p>
8619
- * @public
8620
- */
8621
- MaximumDaysSinceDeprecated?: number | undefined;
8622
- }
8623
- /**
8624
- * <p>The watermark filter criteria for an allowed image. Each entry can specify one or more
8625
- * fields. All specified fields must match the same watermark on the image.</p>
8626
- * @public
8627
- */
8628
- export interface ImageWatermarkFilterResponse {
8629
- /**
8630
- * <p>The <code>accountId:name</code> of the watermark. Supports wildcards (<code>*</code>,
8631
- * <code>?</code>).</p>
8632
- * @public
8633
- */
8634
- WatermarkKey?: string | undefined;
8635
- /**
8636
- * <p>The Region where the watermark was originally created. Supports wildcards (<code>*</code>,
8637
- * <code>?</code>).</p>
8638
- * @public
8639
- */
8640
- SourceImageRegion?: string | undefined;
8641
- /**
8642
- * <p>The maximum number of days that have elapsed since the source image was
8643
- * created.</p>
8644
- * <p>Constraints: Minimum value of 0. Maximum value of 2147483647.</p>
8645
- * @public
8646
- */
8647
- MaximumDaysSinceSourceImageCreated?: number | undefined;
8648
- /**
8649
- * <p>The maximum number of days that have elapsed since the watermark was attached to the
8650
- * image.</p>
8651
- * <p>Constraints: Minimum value of 0. Maximum value of 2147483647.</p>
8652
- * @public
8653
- */
8654
- MaximumDaysSinceWatermarkCreated?: number | undefined;
8655
- }
8656
- /**
8657
- * <p>The criteria that are evaluated to determine which AMIs are discoverable and usable in
8658
- * your account for the specified Amazon Web Services Region.</p>
8659
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-allowed-amis.html#how-allowed-amis-works">How Allowed AMIs
8660
- * works</a> in the <i>Amazon EC2 User Guide</i>.</p>
8661
- * @public
8662
- */
8663
- export interface ImageCriterion {
8664
- /**
8665
- * <p>The image providers whose images are allowed.</p>
8666
- * <p>Possible values:</p>
8667
- * <ul>
8668
- * <li>
8669
- * <p>
8670
- * <code>amazon</code>: Allow AMIs created by Amazon or verified providers.</p>
8671
- * </li>
8672
- * <li>
8673
- * <p>
8674
- * <code>aws-marketplace</code>: Allow AMIs created by verified providers in the Amazon Web Services
8675
- * Marketplace.</p>
8676
- * </li>
8677
- * <li>
8678
- * <p>
8679
- * <code>aws-backup-vault</code>: Allow AMIs created by Amazon Web Services Backup. </p>
8680
- * </li>
8681
- * <li>
8682
- * <p>12-digit account ID: Allow AMIs created by this account. One or more account IDs can be
8683
- * specified.</p>
8684
- * </li>
8685
- * <li>
8686
- * <p>
8687
- * <code>none</code>: Allow AMIs created by your own account only.</p>
8688
- * </li>
8689
- * </ul>
8690
- * <p>Maximum: 200 values</p>
8691
- * @public
8692
- */
8693
- ImageProviders?: string[] | undefined;
8694
- /**
8695
- * <p>The Amazon Web Services Marketplace product codes for allowed images.</p>
8696
- * <p>Length: 1-25 characters</p>
8697
- * <p>Valid characters: Letters (<code>A–Z, a–z</code>) and numbers (<code>0–9</code>)</p>
8698
- * <p>Maximum: 50 values</p>
8699
- * @public
8700
- */
8701
- MarketplaceProductCodes?: string[] | undefined;
8702
- /**
8703
- * <p>The names of allowed images. Names can include wildcards (<code>?</code> and
8704
- * <code>*</code>).</p>
8705
- * <p>Length: 1–128 characters. With <code>?</code>, the minimum is 3 characters.</p>
8706
- * <p>Valid characters:</p>
8707
- * <ul>
8708
- * <li>
8709
- * <p>Letters: <code>A–Z, a–z</code>
8710
- * </p>
8711
- * </li>
8712
- * <li>
8713
- * <p>Numbers: <code>0–9</code>
8714
- * </p>
8715
- * </li>
8716
- * <li>
8717
- * <p>Special characters: <code>( ) [ ] . / - ' @ _ * ?</code>
8718
- * </p>
8719
- * </li>
8720
- * <li>
8721
- * <p>Spaces</p>
8722
- * </li>
8723
- * </ul>
8724
- * <p>Maximum: 50 values</p>
8725
- * @public
8726
- */
8727
- ImageNames?: string[] | undefined;
8728
- /**
8729
- * <p>The maximum period since deprecation for allowed images.</p>
8730
- * @public
8731
- */
8732
- DeprecationTimeCondition?: DeprecationTimeCondition | undefined;
8733
- /**
8734
- * <p>The maximum age for allowed images.</p>
8735
- * @public
8736
- */
8737
- CreationDateCondition?: CreationDateCondition | undefined;
8738
- /**
8739
- * <p>The watermark criteria that an AMI must match to be allowed. An AMI is allowed if it
8740
- * carries at least one watermark that satisfies an ImageWatermarkFilter. A watermark satisfies a
8741
- * filter when all specified fields in the ImageWatermarkFilter match the corresponding values on
8742
- * the watermark of the AMI.</p>
8743
- * <p>Maximum: 50 values</p>
8744
- * @public
8745
- */
8746
- ImageWatermarks?: ImageWatermarkFilterResponse[] | undefined;
8747
- }
8748
- /**
8749
- * @public
8750
- */
8751
- export interface GetAllowedImagesSettingsResult {
8752
- /**
8753
- * <p>The current state of the Allowed AMIs setting at the account level in the specified Amazon Web Services
8754
- * Region.</p>
8755
- * <p>Possible values:</p>
8756
- * <ul>
8757
- * <li>
8758
- * <p>
8759
- * <code>disabled</code>: All AMIs are allowed.</p>
8760
- * </li>
8761
- * <li>
8762
- * <p>
8763
- * <code>audit-mode</code>: All AMIs are allowed, but the <code>ImageAllowed</code> field
8764
- * is set to <code>true</code> if the AMI would be allowed with the current list of criteria
8765
- * if allowed AMIs was enabled.</p>
8766
- * </li>
8767
- * <li>
8768
- * <p>
8769
- * <code>enabled</code>: Only AMIs matching the image criteria are discoverable and
8770
- * available for use.</p>
8771
- * </li>
8772
- * </ul>
8773
- * @public
8774
- */
8775
- State?: string | undefined;
8776
- /**
8777
- * <p>The list of criteria for images that are discoverable and usable in the account in the
8778
- * specified Amazon Web Services Region.</p>
8779
- * @public
8780
- */
8781
- ImageCriteria?: ImageCriterion[] | undefined;
8782
- /**
8783
- * <p>The entity that manages the Allowed AMIs settings. Possible values include:</p>
8784
- * <ul>
8785
- * <li>
8786
- * <p>
8787
- * <code>account</code> - The Allowed AMIs settings is managed by the account.</p>
8788
- * </li>
8789
- * <li>
8790
- * <p>
8791
- * <code>declarative-policy</code> - The Allowed AMIs settings is managed by a
8792
- * declarative policy and can't be modified by the account.</p>
8793
- * </li>
8794
- * </ul>
8795
- * @public
8796
- */
8797
- ManagedBy?: ManagedBy | undefined;
8798
- }
8799
- /**
8800
- * @public
8801
- */
8802
- export interface GetAssociatedEnclaveCertificateIamRolesRequest {
8803
- /**
8804
- * <p>The ARN of the ACM certificate for which to view the associated IAM roles, encryption keys, and Amazon
8805
- * S3 object information.</p>
8806
- * @public
8807
- */
8808
- CertificateArn: string | undefined;
8809
- /**
8810
- * <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8811
- * @public
8812
- */
8813
- DryRun?: boolean | undefined;
8814
- }