@aws-sdk/client-ec2 3.391.0 → 3.394.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 (50) hide show
  1. package/dist-cjs/EC2Client.js +4 -2
  2. package/dist-cjs/clientConfiguration.js +2 -0
  3. package/dist-cjs/models/models_3.js +1 -6
  4. package/dist-cjs/models/models_4.js +5 -5
  5. package/dist-cjs/models/models_5.js +5 -1
  6. package/dist-cjs/protocols/Aws_ec2.js +48 -0
  7. package/dist-cjs/runtimeConfig.shared.js +1 -0
  8. package/dist-cjs/runtimeExtensions.js +16 -0
  9. package/dist-es/EC2Client.js +4 -2
  10. package/dist-es/clientConfiguration.js +1 -0
  11. package/dist-es/models/models_3.js +0 -4
  12. package/dist-es/models/models_4.js +4 -4
  13. package/dist-es/models/models_5.js +4 -0
  14. package/dist-es/protocols/Aws_ec2.js +48 -0
  15. package/dist-es/runtimeConfig.shared.js +1 -0
  16. package/dist-es/runtimeExtensions.js +12 -0
  17. package/dist-types/EC2Client.d.ts +6 -1
  18. package/dist-types/clientConfiguration.d.ts +6 -0
  19. package/dist-types/commands/CreateSubnetCidrReservationCommand.d.ts +3 -1
  20. package/dist-types/commands/CreateVpcEndpointCommand.d.ts +7 -0
  21. package/dist-types/commands/DeleteLaunchTemplateVersionsCommand.d.ts +9 -4
  22. package/dist-types/commands/ImportClientVpnClientCertificateRevocationListCommand.d.ts +2 -1
  23. package/dist-types/commands/ModifyVpcEndpointCommand.d.ts +7 -0
  24. package/dist-types/models/models_1.d.ts +1 -3
  25. package/dist-types/models/models_2.d.ts +47 -39
  26. package/dist-types/models/models_3.d.ts +171 -31
  27. package/dist-types/models/models_4.d.ts +13 -13
  28. package/dist-types/models/models_5.d.ts +13 -11
  29. package/dist-types/models/models_6.d.ts +20 -21
  30. package/dist-types/models/models_7.d.ts +17 -1
  31. package/dist-types/runtimeConfig.browser.d.ts +1 -0
  32. package/dist-types/runtimeConfig.d.ts +1 -0
  33. package/dist-types/runtimeConfig.native.d.ts +1 -0
  34. package/dist-types/runtimeConfig.shared.d.ts +1 -0
  35. package/dist-types/runtimeExtensions.d.ts +17 -0
  36. package/dist-types/ts3.4/EC2Client.d.ts +3 -0
  37. package/dist-types/ts3.4/clientConfiguration.d.ts +2 -0
  38. package/dist-types/ts3.4/commands/ImportClientVpnClientCertificateRevocationListCommand.d.ts +2 -4
  39. package/dist-types/ts3.4/models/models_2.d.ts +6 -4
  40. package/dist-types/ts3.4/models/models_3.d.ts +5 -7
  41. package/dist-types/ts3.4/models/models_4.d.ts +6 -7
  42. package/dist-types/ts3.4/models/models_5.d.ts +7 -8
  43. package/dist-types/ts3.4/models/models_6.d.ts +5 -4
  44. package/dist-types/ts3.4/models/models_7.d.ts +4 -1
  45. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +1 -0
  46. package/dist-types/ts3.4/runtimeConfig.d.ts +1 -0
  47. package/dist-types/ts3.4/runtimeConfig.native.d.ts +1 -0
  48. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +1 -0
  49. package/dist-types/ts3.4/runtimeExtensions.d.ts +11 -0
  50. package/package.json +1 -1
@@ -14,6 +14,7 @@ const smithy_client_1 = require("@smithy/smithy-client");
14
14
  Object.defineProperty(exports, "__Client", { enumerable: true, get: function () { return smithy_client_1.Client; } });
15
15
  const EndpointParameters_1 = require("./endpoint/EndpointParameters");
16
16
  const runtimeConfig_1 = require("./runtimeConfig");
17
+ const runtimeExtensions_1 = require("./runtimeExtensions");
17
18
  class EC2Client extends smithy_client_1.Client {
18
19
  constructor(...[configuration]) {
19
20
  const _config_0 = (0, runtimeConfig_1.getRuntimeConfig)(configuration || {});
@@ -24,8 +25,9 @@ class EC2Client extends smithy_client_1.Client {
24
25
  const _config_5 = (0, middleware_host_header_1.resolveHostHeaderConfig)(_config_4);
25
26
  const _config_6 = (0, middleware_signing_1.resolveAwsAuthConfig)(_config_5);
26
27
  const _config_7 = (0, middleware_user_agent_1.resolveUserAgentConfig)(_config_6);
27
- super(_config_7);
28
- this.config = _config_7;
28
+ const _config_8 = (0, runtimeExtensions_1.resolveRuntimeExtensions)(_config_7, configuration?.extensions || []);
29
+ super(_config_8);
30
+ this.config = _config_8;
29
31
  this.middlewareStack.use((0, middleware_retry_1.getRetryPlugin)(this.config));
30
32
  this.middlewareStack.use((0, middleware_content_length_1.getContentLengthPlugin)(this.config));
31
33
  this.middlewareStack.use((0, middleware_host_header_1.getHostHeaderPlugin)(this.config));
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ImportSnapshotTaskFilterSensitiveLog = exports.SnapshotTaskDetailFilterSensitiveLog = exports.DescribeImportImageTasksResultFilterSensitiveLog = exports.ImportImageTaskFilterSensitiveLog = exports.SnapshotDetailFilterSensitiveLog = exports.DescribeConversionTasksResultFilterSensitiveLog = exports.ConversionTaskFilterSensitiveLog = exports.ImportVolumeTaskDetailsFilterSensitiveLog = exports.ImportInstanceTaskDetailsFilterSensitiveLog = exports.ImportInstanceVolumeDetailItemFilterSensitiveLog = exports.DiskImageDescriptionFilterSensitiveLog = exports.DeleteVerifiedAccessTrustProviderResultFilterSensitiveLog = exports.InstanceLifecycleType = exports.InstanceBootModeValues = exports.InstanceAttributeName = exports.VirtualizationType = exports.TpmSupportValues = exports.ImageState = exports.DeviceType = exports.ImdsSupportValues = exports.ImageTypeValues = exports.HypervisorType = exports.BootModeValues = exports.ArchitectureValues = exports.ImageAttributeName = exports.ReservationState = exports.PaymentOption = exports.FpgaImageStateCode = exports.ProductCodeValues = exports.PermissionGroup = exports.FpgaImageAttributeName = exports.FleetActivityStatus = exports.FleetEventType = exports.FastSnapshotRestoreStateCode = exports.FastLaunchStateCode = exports.FastLaunchResourceType = exports.ElasticGpuState = exports.ElasticGpuStatus = exports.ConversionTaskState = exports.VpnProtocol = exports.ClientVpnEndpointAttributeStatusCode = exports.AssociatedNetworkType = exports.ClientVpnConnectionStatusCode = exports.StatisticType = exports.PeriodType = exports.MetricType = exports.AvailabilityZoneState = exports.AvailabilityZoneOptInStatus = exports.IpamPoolCidrState = exports.IpamPoolCidrFailureCode = void 0;
4
- exports.DescribeImportSnapshotTasksResultFilterSensitiveLog = void 0;
3
+ exports.DescribeImportSnapshotTasksResultFilterSensitiveLog = exports.ImportSnapshotTaskFilterSensitiveLog = exports.SnapshotTaskDetailFilterSensitiveLog = exports.DescribeImportImageTasksResultFilterSensitiveLog = exports.ImportImageTaskFilterSensitiveLog = exports.SnapshotDetailFilterSensitiveLog = exports.DescribeConversionTasksResultFilterSensitiveLog = exports.ConversionTaskFilterSensitiveLog = exports.ImportVolumeTaskDetailsFilterSensitiveLog = exports.ImportInstanceTaskDetailsFilterSensitiveLog = exports.ImportInstanceVolumeDetailItemFilterSensitiveLog = exports.DiskImageDescriptionFilterSensitiveLog = exports.DeleteVerifiedAccessTrustProviderResultFilterSensitiveLog = exports.InstanceBootModeValues = exports.InstanceAttributeName = exports.VirtualizationType = exports.TpmSupportValues = exports.ImageState = exports.DeviceType = exports.ImdsSupportValues = exports.ImageTypeValues = exports.HypervisorType = exports.BootModeValues = exports.ArchitectureValues = exports.ImageAttributeName = exports.ReservationState = exports.PaymentOption = exports.FpgaImageStateCode = exports.ProductCodeValues = exports.PermissionGroup = exports.FpgaImageAttributeName = exports.FleetActivityStatus = exports.FleetEventType = exports.FastSnapshotRestoreStateCode = exports.FastLaunchStateCode = exports.FastLaunchResourceType = exports.ElasticGpuState = exports.ElasticGpuStatus = exports.ConversionTaskState = exports.VpnProtocol = exports.ClientVpnEndpointAttributeStatusCode = exports.AssociatedNetworkType = exports.ClientVpnConnectionStatusCode = exports.StatisticType = exports.PeriodType = exports.MetricType = exports.AvailabilityZoneState = exports.AvailabilityZoneOptInStatus = exports.IpamPoolCidrState = exports.IpamPoolCidrFailureCode = void 0;
5
4
  const smithy_client_1 = require("@smithy/smithy-client");
6
5
  const models_0_1 = require("./models_0");
7
6
  exports.IpamPoolCidrFailureCode = {
@@ -211,10 +210,6 @@ exports.InstanceBootModeValues = {
211
210
  legacy_bios: "legacy-bios",
212
211
  uefi: "uefi",
213
212
  };
214
- exports.InstanceLifecycleType = {
215
- scheduled: "scheduled",
216
- spot: "spot",
217
- };
218
213
  const DeleteVerifiedAccessTrustProviderResultFilterSensitiveLog = (obj) => ({
219
214
  ...obj,
220
215
  ...(obj.VerifiedAccessTrustProvider && {
@@ -1,9 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SpotFleetRequestConfigDataFilterSensitiveLog = exports.SpotFleetLaunchSpecificationFilterSensitiveLog = exports.DescribeLaunchTemplateVersionsResultFilterSensitiveLog = exports.VerifiedAccessLogDeliveryStatusCode = exports.SpotInstanceState = exports.ReplacementStrategy = exports.OnDemandAllocationStrategy = exports.ExcessCapacityTerminationPolicy = exports.EventType = exports.TieringOperationStatus = exports.SnapshotAttributeName = exports.ReservedInstanceState = exports.Scope = exports.RecurringChargeFrequency = exports.RIProductDescription = exports.OfferingTypeValues = exports.OfferingClassType = exports.NetworkInterfaceAttribute = exports.AnalysisStatus = exports.FindingsFound = exports.MoveStatus = exports.UsageClassType = exports.RootDeviceType = exports.BootModeType = exports.SupportedAdditionalProcessorFeature = exports.ArchitectureType = exports.PlacementGroupStrategy = exports.NitroTpmSupport = exports.NitroEnclavesSupport = exports.EnaSupport = exports.EphemeralNvmeSupport = exports.InstanceStorageEncryptionSupport = exports.DiskType = exports.InstanceTypeHypervisor = exports.EbsNvmeSupport = exports.EbsEncryptionSupport = exports.EbsOptimizedSupport = exports.LocationType = exports.SummaryStatus = exports.StatusType = exports.StatusName = exports.EventCode = exports.InstanceStateName = exports.MonitoringState = exports.InstanceMetadataOptionsState = exports.InstanceMetadataTagsState = exports.HttpTokensState = exports.InstanceMetadataProtocolState = exports.InstanceMetadataEndpointState = exports.InstanceAutoRecoveryState = void 0;
3
+ exports.SpotFleetRequestConfigDataFilterSensitiveLog = exports.SpotFleetLaunchSpecificationFilterSensitiveLog = exports.DescribeLaunchTemplateVersionsResultFilterSensitiveLog = exports.SpotInstanceState = exports.ReplacementStrategy = exports.OnDemandAllocationStrategy = exports.ExcessCapacityTerminationPolicy = exports.EventType = exports.TieringOperationStatus = exports.SnapshotAttributeName = exports.ReservedInstanceState = exports.Scope = exports.RecurringChargeFrequency = exports.RIProductDescription = exports.OfferingTypeValues = exports.OfferingClassType = exports.NetworkInterfaceAttribute = exports.AnalysisStatus = exports.FindingsFound = exports.MoveStatus = exports.UsageClassType = exports.RootDeviceType = exports.BootModeType = exports.SupportedAdditionalProcessorFeature = exports.ArchitectureType = exports.PlacementGroupStrategy = exports.NitroTpmSupport = exports.NitroEnclavesSupport = exports.EnaSupport = exports.EphemeralNvmeSupport = exports.InstanceStorageEncryptionSupport = exports.DiskType = exports.InstanceTypeHypervisor = exports.EbsNvmeSupport = exports.EbsEncryptionSupport = exports.EbsOptimizedSupport = exports.LocationType = exports.SummaryStatus = exports.StatusType = exports.StatusName = exports.EventCode = exports.InstanceStateName = exports.MonitoringState = exports.InstanceMetadataOptionsState = exports.InstanceMetadataTagsState = exports.HttpTokensState = exports.InstanceMetadataProtocolState = exports.InstanceMetadataEndpointState = exports.InstanceAutoRecoveryState = exports.InstanceLifecycleType = void 0;
4
4
  exports.DescribeSpotInstanceRequestsResultFilterSensitiveLog = exports.SpotInstanceRequestFilterSensitiveLog = exports.LaunchSpecificationFilterSensitiveLog = exports.DescribeSpotFleetRequestsResponseFilterSensitiveLog = exports.SpotFleetRequestConfigFilterSensitiveLog = void 0;
5
5
  const smithy_client_1 = require("@smithy/smithy-client");
6
6
  const models_1_1 = require("./models_1");
7
+ exports.InstanceLifecycleType = {
8
+ scheduled: "scheduled",
9
+ spot: "spot",
10
+ };
7
11
  exports.InstanceAutoRecoveryState = {
8
12
  default: "default",
9
13
  disabled: "disabled",
@@ -235,10 +239,6 @@ exports.SpotInstanceState = {
235
239
  failed: "failed",
236
240
  open: "open",
237
241
  };
238
- exports.VerifiedAccessLogDeliveryStatusCode = {
239
- FAILED: "failed",
240
- SUCCESS: "success",
241
- };
242
242
  const DescribeLaunchTemplateVersionsResultFilterSensitiveLog = (obj) => ({
243
243
  ...obj,
244
244
  ...(obj.LaunchTemplateVersions && {
@@ -1,10 +1,14 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GetVpnConnectionDeviceSampleConfigurationResultFilterSensitiveLog = exports.GetLaunchTemplateDataResultFilterSensitiveLog = exports.DetachVerifiedAccessTrustProviderResultFilterSensitiveLog = exports.DescribeVpnConnectionsResultFilterSensitiveLog = exports.DescribeVerifiedAccessTrustProvidersResultFilterSensitiveLog = exports.IpamManagementState = exports.IpamResourceType = exports.IpamDiscoveryFailureCode = exports.IpamAddressHistoryResourceType = exports.IpamOverlapStatus = exports.IpamComplianceStatus = exports.PartitionLoadFrequency = exports.UnlimitedSupportedInstanceFamily = exports.ClientCertificateRevocationListStatusCode = exports.TransitGatewayPropagationState = exports.VpcAttributeName = exports.VolumeStatusInfoStatus = exports.VolumeStatusName = exports.VolumeModificationState = exports.VolumeAttributeName = void 0;
3
+ exports.GetVpnConnectionDeviceSampleConfigurationResultFilterSensitiveLog = exports.GetLaunchTemplateDataResultFilterSensitiveLog = exports.DetachVerifiedAccessTrustProviderResultFilterSensitiveLog = exports.DescribeVpnConnectionsResultFilterSensitiveLog = exports.DescribeVerifiedAccessTrustProvidersResultFilterSensitiveLog = exports.IpamManagementState = exports.IpamResourceType = exports.IpamDiscoveryFailureCode = exports.IpamAddressHistoryResourceType = exports.IpamOverlapStatus = exports.IpamComplianceStatus = exports.PartitionLoadFrequency = exports.UnlimitedSupportedInstanceFamily = exports.ClientCertificateRevocationListStatusCode = exports.TransitGatewayPropagationState = exports.VpcAttributeName = exports.VolumeStatusInfoStatus = exports.VolumeStatusName = exports.VolumeModificationState = exports.VolumeAttributeName = exports.VerifiedAccessLogDeliveryStatusCode = void 0;
4
4
  const smithy_client_1 = require("@smithy/smithy-client");
5
5
  const models_0_1 = require("./models_0");
6
6
  const models_1_1 = require("./models_1");
7
7
  const models_2_1 = require("./models_2");
8
+ exports.VerifiedAccessLogDeliveryStatusCode = {
9
+ FAILED: "failed",
10
+ SUCCESS: "success",
11
+ };
8
12
  exports.VolumeAttributeName = {
9
13
  autoEnableIO: "autoEnableIO",
10
14
  productCodes: "productCodes",
@@ -27152,6 +27152,16 @@ const se_CreateVpcEndpointRequest = (input, context) => {
27152
27152
  entries[loc] = value;
27153
27153
  });
27154
27154
  }
27155
+ if (input.SubnetConfigurations != null) {
27156
+ const memberEntries = se_SubnetConfigurationsList(input.SubnetConfigurations, context);
27157
+ if (input.SubnetConfigurations?.length === 0) {
27158
+ entries.SubnetConfiguration = [];
27159
+ }
27160
+ Object.entries(memberEntries).forEach(([key, value]) => {
27161
+ const loc = `SubnetConfiguration.${key.substring(key.indexOf(".") + 1)}`;
27162
+ entries[loc] = value;
27163
+ });
27164
+ }
27155
27165
  return entries;
27156
27166
  };
27157
27167
  const se_CreateVpcEndpointServiceConfigurationRequest = (input, context) => {
@@ -39322,6 +39332,16 @@ const se_ModifyVpcEndpointRequest = (input, context) => {
39322
39332
  if (input.PrivateDnsEnabled != null) {
39323
39333
  entries["PrivateDnsEnabled"] = input.PrivateDnsEnabled;
39324
39334
  }
39335
+ if (input.SubnetConfigurations != null) {
39336
+ const memberEntries = se_SubnetConfigurationsList(input.SubnetConfigurations, context);
39337
+ if (input.SubnetConfigurations?.length === 0) {
39338
+ entries.SubnetConfiguration = [];
39339
+ }
39340
+ Object.entries(memberEntries).forEach(([key, value]) => {
39341
+ const loc = `SubnetConfiguration.${key.substring(key.indexOf(".") + 1)}`;
39342
+ entries[loc] = value;
39343
+ });
39344
+ }
39325
39345
  return entries;
39326
39346
  };
39327
39347
  const se_ModifyVpcEndpointServiceConfigurationRequest = (input, context) => {
@@ -43622,6 +43642,34 @@ const se_StorageLocation = (input, context) => {
43622
43642
  }
43623
43643
  return entries;
43624
43644
  };
43645
+ const se_SubnetConfiguration = (input, context) => {
43646
+ const entries = {};
43647
+ if (input.SubnetId != null) {
43648
+ entries["SubnetId"] = input.SubnetId;
43649
+ }
43650
+ if (input.Ipv4 != null) {
43651
+ entries["Ipv4"] = input.Ipv4;
43652
+ }
43653
+ if (input.Ipv6 != null) {
43654
+ entries["Ipv6"] = input.Ipv6;
43655
+ }
43656
+ return entries;
43657
+ };
43658
+ const se_SubnetConfigurationsList = (input, context) => {
43659
+ const entries = {};
43660
+ let counter = 1;
43661
+ for (const entry of input) {
43662
+ if (entry === null) {
43663
+ continue;
43664
+ }
43665
+ const memberEntries = se_SubnetConfiguration(entry, context);
43666
+ Object.entries(memberEntries).forEach(([key, value]) => {
43667
+ entries[`Item.${counter}.${key}`] = value;
43668
+ });
43669
+ counter++;
43670
+ }
43671
+ return entries;
43672
+ };
43625
43673
  const se_SubnetIdStringList = (input, context) => {
43626
43674
  const entries = {};
43627
43675
  let counter = 1;
@@ -12,6 +12,7 @@ const getRuntimeConfig = (config) => ({
12
12
  base64Encoder: config?.base64Encoder ?? util_base64_1.toBase64,
13
13
  disableHostPrefix: config?.disableHostPrefix ?? false,
14
14
  endpointProvider: config?.endpointProvider ?? endpointResolver_1.defaultEndpointResolver,
15
+ extensions: config?.extensions ?? [],
15
16
  logger: config?.logger ?? new smithy_client_1.NoOpLogger(),
16
17
  serviceId: config?.serviceId ?? "EC2",
17
18
  urlParser: config?.urlParser ?? url_parser_1.parseUrl,
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveRuntimeExtensions = void 0;
4
+ const types_1 = require("@smithy/types");
5
+ const asPartial = (t) => t;
6
+ const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
7
+ const clientConfiguration = {
8
+ ...asPartial((0, types_1.getDefaultClientConfiguration)(runtimeConfig)),
9
+ };
10
+ extensions.forEach((extension) => extension.configureClient(clientConfiguration));
11
+ return {
12
+ ...runtimeConfig,
13
+ ...(0, types_1.resolveDefaultRuntimeConfig)(clientConfiguration),
14
+ };
15
+ };
16
+ exports.resolveRuntimeExtensions = resolveRuntimeExtensions;
@@ -10,6 +10,7 @@ import { getRetryPlugin, resolveRetryConfig } from "@smithy/middleware-retry";
10
10
  import { Client as __Client, } from "@smithy/smithy-client";
11
11
  import { resolveClientEndpointParameters, } from "./endpoint/EndpointParameters";
12
12
  import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
13
+ import { resolveRuntimeExtensions } from "./runtimeExtensions";
13
14
  export { __Client };
14
15
  export class EC2Client extends __Client {
15
16
  constructor(...[configuration]) {
@@ -21,8 +22,9 @@ export class EC2Client extends __Client {
21
22
  const _config_5 = resolveHostHeaderConfig(_config_4);
22
23
  const _config_6 = resolveAwsAuthConfig(_config_5);
23
24
  const _config_7 = resolveUserAgentConfig(_config_6);
24
- super(_config_7);
25
- this.config = _config_7;
25
+ const _config_8 = resolveRuntimeExtensions(_config_7, configuration?.extensions || []);
26
+ super(_config_8);
27
+ this.config = _config_8;
26
28
  this.middlewareStack.use(getRetryPlugin(this.config));
27
29
  this.middlewareStack.use(getContentLengthPlugin(this.config));
28
30
  this.middlewareStack.use(getHostHeaderPlugin(this.config));
@@ -0,0 +1 @@
1
+ export {};
@@ -207,10 +207,6 @@ export const InstanceBootModeValues = {
207
207
  legacy_bios: "legacy-bios",
208
208
  uefi: "uefi",
209
209
  };
210
- export const InstanceLifecycleType = {
211
- scheduled: "scheduled",
212
- spot: "spot",
213
- };
214
210
  export const DeleteVerifiedAccessTrustProviderResultFilterSensitiveLog = (obj) => ({
215
211
  ...obj,
216
212
  ...(obj.VerifiedAccessTrustProvider && {
@@ -1,5 +1,9 @@
1
1
  import { SENSITIVE_STRING } from "@smithy/smithy-client";
2
2
  import { LaunchTemplateVersionFilterSensitiveLog, } from "./models_1";
3
+ export const InstanceLifecycleType = {
4
+ scheduled: "scheduled",
5
+ spot: "spot",
6
+ };
3
7
  export const InstanceAutoRecoveryState = {
4
8
  default: "default",
5
9
  disabled: "disabled",
@@ -231,10 +235,6 @@ export const SpotInstanceState = {
231
235
  failed: "failed",
232
236
  open: "open",
233
237
  };
234
- export const VerifiedAccessLogDeliveryStatusCode = {
235
- FAILED: "failed",
236
- SUCCESS: "success",
237
- };
238
238
  export const DescribeLaunchTemplateVersionsResultFilterSensitiveLog = (obj) => ({
239
239
  ...obj,
240
240
  ...(obj.LaunchTemplateVersions && {
@@ -2,6 +2,10 @@ import { SENSITIVE_STRING } from "@smithy/smithy-client";
2
2
  import { VerifiedAccessTrustProviderFilterSensitiveLog, } from "./models_0";
3
3
  import { ResponseLaunchTemplateDataFilterSensitiveLog, } from "./models_1";
4
4
  import { VpnConnectionFilterSensitiveLog, } from "./models_2";
5
+ export const VerifiedAccessLogDeliveryStatusCode = {
6
+ FAILED: "failed",
7
+ SUCCESS: "success",
8
+ };
5
9
  export const VolumeAttributeName = {
6
10
  autoEnableIO: "autoEnableIO",
7
11
  productCodes: "productCodes",
@@ -25938,6 +25938,16 @@ const se_CreateVpcEndpointRequest = (input, context) => {
25938
25938
  entries[loc] = value;
25939
25939
  });
25940
25940
  }
25941
+ if (input.SubnetConfigurations != null) {
25942
+ const memberEntries = se_SubnetConfigurationsList(input.SubnetConfigurations, context);
25943
+ if (input.SubnetConfigurations?.length === 0) {
25944
+ entries.SubnetConfiguration = [];
25945
+ }
25946
+ Object.entries(memberEntries).forEach(([key, value]) => {
25947
+ const loc = `SubnetConfiguration.${key.substring(key.indexOf(".") + 1)}`;
25948
+ entries[loc] = value;
25949
+ });
25950
+ }
25941
25951
  return entries;
25942
25952
  };
25943
25953
  const se_CreateVpcEndpointServiceConfigurationRequest = (input, context) => {
@@ -38108,6 +38118,16 @@ const se_ModifyVpcEndpointRequest = (input, context) => {
38108
38118
  if (input.PrivateDnsEnabled != null) {
38109
38119
  entries["PrivateDnsEnabled"] = input.PrivateDnsEnabled;
38110
38120
  }
38121
+ if (input.SubnetConfigurations != null) {
38122
+ const memberEntries = se_SubnetConfigurationsList(input.SubnetConfigurations, context);
38123
+ if (input.SubnetConfigurations?.length === 0) {
38124
+ entries.SubnetConfiguration = [];
38125
+ }
38126
+ Object.entries(memberEntries).forEach(([key, value]) => {
38127
+ const loc = `SubnetConfiguration.${key.substring(key.indexOf(".") + 1)}`;
38128
+ entries[loc] = value;
38129
+ });
38130
+ }
38111
38131
  return entries;
38112
38132
  };
38113
38133
  const se_ModifyVpcEndpointServiceConfigurationRequest = (input, context) => {
@@ -42408,6 +42428,34 @@ const se_StorageLocation = (input, context) => {
42408
42428
  }
42409
42429
  return entries;
42410
42430
  };
42431
+ const se_SubnetConfiguration = (input, context) => {
42432
+ const entries = {};
42433
+ if (input.SubnetId != null) {
42434
+ entries["SubnetId"] = input.SubnetId;
42435
+ }
42436
+ if (input.Ipv4 != null) {
42437
+ entries["Ipv4"] = input.Ipv4;
42438
+ }
42439
+ if (input.Ipv6 != null) {
42440
+ entries["Ipv6"] = input.Ipv6;
42441
+ }
42442
+ return entries;
42443
+ };
42444
+ const se_SubnetConfigurationsList = (input, context) => {
42445
+ const entries = {};
42446
+ let counter = 1;
42447
+ for (const entry of input) {
42448
+ if (entry === null) {
42449
+ continue;
42450
+ }
42451
+ const memberEntries = se_SubnetConfiguration(entry, context);
42452
+ Object.entries(memberEntries).forEach(([key, value]) => {
42453
+ entries[`Item.${counter}.${key}`] = value;
42454
+ });
42455
+ counter++;
42456
+ }
42457
+ return entries;
42458
+ };
42411
42459
  const se_SubnetIdStringList = (input, context) => {
42412
42460
  const entries = {};
42413
42461
  let counter = 1;
@@ -9,6 +9,7 @@ export const getRuntimeConfig = (config) => ({
9
9
  base64Encoder: config?.base64Encoder ?? toBase64,
10
10
  disableHostPrefix: config?.disableHostPrefix ?? false,
11
11
  endpointProvider: config?.endpointProvider ?? defaultEndpointResolver,
12
+ extensions: config?.extensions ?? [],
12
13
  logger: config?.logger ?? new NoOpLogger(),
13
14
  serviceId: config?.serviceId ?? "EC2",
14
15
  urlParser: config?.urlParser ?? parseUrl,
@@ -0,0 +1,12 @@
1
+ import { getDefaultClientConfiguration, resolveDefaultRuntimeConfig } from "@smithy/types";
2
+ const asPartial = (t) => t;
3
+ export const resolveRuntimeExtensions = (runtimeConfig, extensions) => {
4
+ const clientConfiguration = {
5
+ ...asPartial(getDefaultClientConfiguration(runtimeConfig)),
6
+ };
7
+ extensions.forEach((extension) => extension.configureClient(clientConfiguration));
8
+ return {
9
+ ...runtimeConfig,
10
+ ...resolveDefaultRuntimeConfig(clientConfiguration),
11
+ };
12
+ };
@@ -603,6 +603,7 @@ import { UpdateSecurityGroupRuleDescriptionsEgressCommandInput, UpdateSecurityGr
603
603
  import { UpdateSecurityGroupRuleDescriptionsIngressCommandInput, UpdateSecurityGroupRuleDescriptionsIngressCommandOutput } from "./commands/UpdateSecurityGroupRuleDescriptionsIngressCommand";
604
604
  import { WithdrawByoipCidrCommandInput, WithdrawByoipCidrCommandOutput } from "./commands/WithdrawByoipCidrCommand";
605
605
  import { ClientInputEndpointParameters, ClientResolvedEndpointParameters, EndpointParameters } from "./endpoint/EndpointParameters";
606
+ import { RuntimeExtension, RuntimeExtensionsConfig } from "./runtimeExtensions";
606
607
  export { __Client };
607
608
  /**
608
609
  * @public
@@ -710,6 +711,10 @@ export interface ClientDefaults extends Partial<__SmithyResolvedConfiguration<__
710
711
  * Optional logger for logging debug/info/warn/error.
711
712
  */
712
713
  logger?: __Logger;
714
+ /**
715
+ * Optional extensions
716
+ */
717
+ extensions?: RuntimeExtension[];
713
718
  /**
714
719
  * The {@link @smithy/smithy-client#DefaultsMode} that will be used to determine how certain default configuration options are resolved in the SDK.
715
720
  */
@@ -729,7 +734,7 @@ export interface EC2ClientConfig extends EC2ClientConfigType {
729
734
  /**
730
735
  * @public
731
736
  */
732
- export type EC2ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & AwsAuthResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
737
+ export type EC2ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & RegionResolvedConfig & EndpointResolvedConfig<EndpointParameters> & RetryResolvedConfig & HostHeaderResolvedConfig & AwsAuthResolvedConfig & UserAgentResolvedConfig & ClientResolvedEndpointParameters;
733
738
  /**
734
739
  * @public
735
740
  *
@@ -0,0 +1,6 @@
1
+ import { DefaultClientConfiguration } from "@smithy/types";
2
+ /**
3
+ * @internal
4
+ */
5
+ export interface EC2ClientConfiguration extends DefaultClientConfiguration {
6
+ }
@@ -23,7 +23,9 @@ export interface CreateSubnetCidrReservationCommandOutput extends CreateSubnetCi
23
23
  }
24
24
  /**
25
25
  * @public
26
- * <p>Creates a subnet CIDR reservation. For information about subnet CIDR reservations, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/subnet-cidr-reservation.html">Subnet CIDR reservations</a> in the <i>Amazon Virtual Private Cloud User Guide</i>.</p>
26
+ * <p>Creates a subnet CIDR reservation. For more information, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/subnet-cidr-reservation.html">Subnet CIDR reservations</a>
27
+ * in the <i>Amazon Virtual Private Cloud User Guide</i> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html">Assign prefixes
28
+ * to network interfaces</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
27
29
  * @example
28
30
  * Use a bare-bones client and the command you need to make an API call.
29
31
  * ```javascript
@@ -66,6 +66,13 @@ export interface CreateVpcEndpointCommandOutput extends CreateVpcEndpointResult,
66
66
  * ],
67
67
  * },
68
68
  * ],
69
+ * SubnetConfigurations: [ // SubnetConfigurationsList
70
+ * { // SubnetConfiguration
71
+ * SubnetId: "STRING_VALUE",
72
+ * Ipv4: "STRING_VALUE",
73
+ * Ipv6: "STRING_VALUE",
74
+ * },
75
+ * ],
69
76
  * };
70
77
  * const command = new CreateVpcEndpointCommand(input);
71
78
  * const response = await client.send(command);
@@ -23,10 +23,15 @@ export interface DeleteLaunchTemplateVersionsCommandOutput extends DeleteLaunchT
23
23
  }
24
24
  /**
25
25
  * @public
26
- * <p>Deletes one or more versions of a launch template. You cannot delete the default
27
- * version of a launch template; you must first assign a different version as the default.
28
- * If the default version is the only version for the launch template, you must delete the
29
- * entire launch template using <a>DeleteLaunchTemplate</a>.</p>
26
+ * <p>Deletes one or more versions of a launch template.</p>
27
+ * <p>You can't delete the default version of a launch template; you must first assign a
28
+ * different version as the default. If the default version is the only version for the
29
+ * launch template, you must delete the entire launch template using <a>DeleteLaunchTemplate</a>.</p>
30
+ * <p>You can delete up to 200 launch template versions in a single request. To delete more
31
+ * than 200 versions in a single request, use <a>DeleteLaunchTemplate</a>, which
32
+ * deletes the launch template and all of its versions.</p>
33
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-launch-template-versions.html#delete-launch-template-version">Delete a launch template version</a> in the <i>EC2 User
34
+ * Guide</i>.</p>
30
35
  * @example
31
36
  * Use a bare-bones client and the command you need to make an API call.
32
37
  * ```javascript
@@ -2,7 +2,8 @@ import { EndpointParameterInstructions } from "@smithy/middleware-endpoint";
2
2
  import { Command as $Command } from "@smithy/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@smithy/types";
4
4
  import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client";
5
- import { ImportClientVpnClientCertificateRevocationListRequest, ImportClientVpnClientCertificateRevocationListResult } from "../models/models_5";
5
+ import { ImportClientVpnClientCertificateRevocationListRequest } from "../models/models_5";
6
+ import { ImportClientVpnClientCertificateRevocationListResult } from "../models/models_6";
6
7
  /**
7
8
  * @public
8
9
  */
@@ -62,6 +62,13 @@ export interface ModifyVpcEndpointCommandOutput extends ModifyVpcEndpointResult,
62
62
  * PrivateDnsOnlyForInboundResolverEndpoint: true || false,
63
63
  * },
64
64
  * PrivateDnsEnabled: true || false,
65
+ * SubnetConfigurations: [ // SubnetConfigurationsList
66
+ * { // SubnetConfiguration
67
+ * SubnetId: "STRING_VALUE",
68
+ * Ipv4: "STRING_VALUE",
69
+ * Ipv6: "STRING_VALUE",
70
+ * },
71
+ * ],
65
72
  * };
66
73
  * const command = new ModifyVpcEndpointCommand(input);
67
74
  * const response = await client.send(command);
@@ -3356,9 +3356,7 @@ export interface CreateFlowLogsRequest {
3356
3356
  * field. For more information about the available fields, see <a href="https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html#flow-log-records">Flow log
3357
3357
  * records</a> in the <i>Amazon VPC User Guide</i> or <a href="https://docs.aws.amazon.com/vpc/latest/tgw/tgw-flow-logs.html#flow-log-records">Transit Gateway Flow Log
3358
3358
  * records</a> in the <i>Amazon Web Services Transit Gateway Guide</i>.</p>
3359
- * <p>Specify the fields using the <code>$\{field-id\}</code> format, separated by spaces. For
3360
- * the CLI, surround this parameter value with single quotes on Linux or
3361
- * double quotes on Windows.</p>
3359
+ * <p>Specify the fields using the <code>$\{field-id\}</code> format, separated by spaces.</p>
3362
3360
  */
3363
3361
  LogFormat?: string;
3364
3362
  /**
@@ -1343,33 +1343,24 @@ export interface CreateSubnetCidrReservationRequest {
1343
1343
  Cidr: string | undefined;
1344
1344
  /**
1345
1345
  * @public
1346
- * <p>The type of reservation.</p>
1347
- * <p>The following are valid values:</p>
1346
+ * <p>The type of reservation. The reservation type determines how the reserved IP addresses are
1347
+ * assigned to resources.</p>
1348
1348
  * <ul>
1349
1349
  * <li>
1350
1350
  * <p>
1351
- * <code>prefix</code>: The Amazon EC2
1352
- * Prefix
1353
- * Delegation feature assigns the IP addresses to network interfaces that are
1354
- * associated with an instance. For information about Prefix
1355
- * Delegation,
1356
- * see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-delegation.html">Prefix Delegation
1357
- * for Amazon EC2 network interfaces</a> in the
1358
- * <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
1351
+ * <code>prefix</code> - Amazon Web Services assigns the reserved IP addresses to
1352
+ * network interfaces.</p>
1359
1353
  * </li>
1360
1354
  * <li>
1361
1355
  * <p>
1362
- * <code>explicit</code>: You manually assign the IP addresses to resources that
1363
- * reside in your subnet. </p>
1356
+ * <code>explicit</code> - You assign the reserved IP addresses to network interfaces.</p>
1364
1357
  * </li>
1365
1358
  * </ul>
1366
1359
  */
1367
1360
  ReservationType: SubnetCidrReservationType | string | undefined;
1368
1361
  /**
1369
1362
  * @public
1370
- * <p>The
1371
- * description
1372
- * to assign to the subnet CIDR reservation.</p>
1363
+ * <p>The description to assign to the subnet CIDR reservation.</p>
1373
1364
  */
1374
1365
  Description?: string;
1375
1366
  /**
@@ -1417,10 +1408,7 @@ export interface SubnetCidrReservation {
1417
1408
  OwnerId?: string;
1418
1409
  /**
1419
1410
  * @public
1420
- * <p>The
1421
- * description
1422
- * assigned to the subnet CIDR
1423
- * reservation.</p>
1411
+ * <p>The description assigned to the subnet CIDR reservation.</p>
1424
1412
  */
1425
1413
  Description?: string;
1426
1414
  /**
@@ -1780,6 +1768,7 @@ export interface CreateTrafficMirrorSessionRequest {
1780
1768
  * set this value to 100, then the first 100 bytes that meet the filter criteria are copied to
1781
1769
  * the target.</p>
1782
1770
  * <p>If you do not want to mirror the entire packet, use the <code>PacketLength</code> parameter to specify the number of bytes in each packet to mirror.</p>
1771
+ * <p>For sessions with Network Load Balancer (NLB) Traffic Mirror targets the default <code>PacketLength</code> will be set to 8500. Valid values are 1-8500. Setting a <code>PacketLength</code> greater than 8500 will result in an error response.</p>
1783
1772
  */
1784
1773
  PacketLength?: number;
1785
1774
  /**
@@ -4459,6 +4448,35 @@ export declare const IpAddressType: {
4459
4448
  * @public
4460
4449
  */
4461
4450
  export type IpAddressType = (typeof IpAddressType)[keyof typeof IpAddressType];
4451
+ /**
4452
+ * @public
4453
+ * <p>Describes the configuration of a subnet for a VPC endpoint.</p>
4454
+ */
4455
+ export interface SubnetConfiguration {
4456
+ /**
4457
+ * @public
4458
+ * <p>The ID of the subnet.</p>
4459
+ */
4460
+ SubnetId?: string;
4461
+ /**
4462
+ * @public
4463
+ * <p>The IPv4 address to assign to the endpoint network interface in the subnet. You must provide
4464
+ * an IPv4 address if the VPC endpoint supports IPv4.</p>
4465
+ * <p>If you specify an IPv4 address when modifying a VPC endpoint, we replace the existing
4466
+ * endpoint network interface with a new endpoint network interface with this IP address.
4467
+ * This process temporarily disconnects the subnet and the VPC endpoint.</p>
4468
+ */
4469
+ Ipv4?: string;
4470
+ /**
4471
+ * @public
4472
+ * <p>The IPv6 address to assign to the endpoint network interface in the subnet. You must provide
4473
+ * an IPv6 address if the VPC endpoint supports IPv6.</p>
4474
+ * <p>If you specify an IPv6 address when modifying a VPC endpoint, we replace the existing
4475
+ * endpoint network interface with a new endpoint network interface with this IP address.
4476
+ * This process temporarily disconnects the subnet and the VPC endpoint.</p>
4477
+ */
4478
+ Ipv6?: string;
4479
+ }
4462
4480
  /**
4463
4481
  * @public
4464
4482
  * @enum
@@ -4513,14 +4531,14 @@ export interface CreateVpcEndpointRequest {
4513
4531
  RouteTableIds?: string[];
4514
4532
  /**
4515
4533
  * @public
4516
- * <p>(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create an endpoint
4517
- * network interface. For a Gateway Load Balancer endpoint, you can specify only one subnet.</p>
4534
+ * <p>(Interface and Gateway Load Balancer endpoints) The IDs of the subnets in which to create endpoint
4535
+ * network interfaces. For a Gateway Load Balancer endpoint, you can specify only one subnet.</p>
4518
4536
  */
4519
4537
  SubnetIds?: string[];
4520
4538
  /**
4521
4539
  * @public
4522
4540
  * <p>(Interface endpoint) The IDs of the security groups to associate with the
4523
- * endpoint network interface. If this parameter is not specified, we use the default
4541
+ * endpoint network interfaces. If this parameter is not specified, we use the default
4524
4542
  * security group for the VPC.</p>
4525
4543
  */
4526
4544
  SecurityGroupIds?: string[];
@@ -4563,6 +4581,11 @@ export interface CreateVpcEndpointRequest {
4563
4581
  * <p>The tags to associate with the endpoint.</p>
4564
4582
  */
4565
4583
  TagSpecifications?: TagSpecification[];
4584
+ /**
4585
+ * @public
4586
+ * <p>The subnet configurations for the endpoint.</p>
4587
+ */
4588
+ SubnetConfigurations?: SubnetConfiguration[];
4566
4589
  }
4567
4590
  /**
4568
4591
  * @public
@@ -6977,7 +7000,8 @@ export interface DeleteLaunchTemplateVersionsRequest {
6977
7000
  LaunchTemplateName?: string;
6978
7001
  /**
6979
7002
  * @public
6980
- * <p>The version numbers of one or more launch template versions to delete.</p>
7003
+ * <p>The version numbers of one or more launch template versions to delete. You can specify
7004
+ * up to 200 launch template version numbers.</p>
6981
7005
  */
6982
7006
  Versions: string[] | undefined;
6983
7007
  }
@@ -7534,22 +7558,6 @@ export declare const DeleteQueuedReservedInstancesErrorCode: {
7534
7558
  * @public
7535
7559
  */
7536
7560
  export type DeleteQueuedReservedInstancesErrorCode = (typeof DeleteQueuedReservedInstancesErrorCode)[keyof typeof DeleteQueuedReservedInstancesErrorCode];
7537
- /**
7538
- * @public
7539
- * <p>Describes the error for a Reserved Instance whose queued purchase could not be deleted.</p>
7540
- */
7541
- export interface DeleteQueuedReservedInstancesError {
7542
- /**
7543
- * @public
7544
- * <p>The error code.</p>
7545
- */
7546
- Code?: DeleteQueuedReservedInstancesErrorCode | string;
7547
- /**
7548
- * @public
7549
- * <p>The error message.</p>
7550
- */
7551
- Message?: string;
7552
- }
7553
7561
  /**
7554
7562
  * @internal
7555
7563
  */