@aws-sdk/client-ec2 3.557.0 → 3.562.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 (59) hide show
  1. package/README.md +16 -0
  2. package/dist-cjs/index.js +171 -26
  3. package/dist-es/EC2.js +4 -0
  4. package/dist-es/commands/DisableImageDeregistrationProtectionCommand.js +24 -0
  5. package/dist-es/commands/EnableImageDeregistrationProtectionCommand.js +24 -0
  6. package/dist-es/commands/index.js +2 -0
  7. package/dist-es/models/models_3.js +1 -0
  8. package/dist-es/models/models_4.js +1 -0
  9. package/dist-es/models/models_5.js +0 -11
  10. package/dist-es/models/models_6.js +11 -0
  11. package/dist-es/protocols/Aws_ec2.js +116 -13
  12. package/dist-types/EC2.d.ts +14 -0
  13. package/dist-types/EC2Client.d.ts +4 -2
  14. package/dist-types/commands/CreateDhcpOptionsCommand.d.ts +1 -1
  15. package/dist-types/commands/CreateLaunchTemplateCommand.d.ts +3 -3
  16. package/dist-types/commands/CreateLaunchTemplateVersionCommand.d.ts +6 -5
  17. package/dist-types/commands/DescribeImageAttributeCommand.d.ts +2 -1
  18. package/dist-types/commands/DescribeImagesCommand.d.ts +6 -0
  19. package/dist-types/commands/DescribeInstancesCommand.d.ts +4 -0
  20. package/dist-types/commands/DescribeNetworkInterfaceAttributeCommand.d.ts +2 -1
  21. package/dist-types/commands/DescribeNetworkInterfacesCommand.d.ts +4 -0
  22. package/dist-types/commands/DescribeSnapshotsCommand.d.ts +4 -0
  23. package/dist-types/commands/DescribeTagsCommand.d.ts +4 -0
  24. package/dist-types/commands/DescribeVolumesCommand.d.ts +4 -0
  25. package/dist-types/commands/DisableImageDeregistrationProtectionCommand.d.ts +66 -0
  26. package/dist-types/commands/EnableImageDeregistrationProtectionCommand.d.ts +66 -0
  27. package/dist-types/commands/GetIpamDiscoveredAccountsCommand.d.ts +2 -1
  28. package/dist-types/commands/GetIpamDiscoveredPublicAddressesCommand.d.ts +1 -2
  29. package/dist-types/commands/ModifyNetworkInterfaceAttributeCommand.d.ts +1 -0
  30. package/dist-types/commands/ProvisionPublicIpv4PoolCidrCommand.d.ts +2 -1
  31. package/dist-types/commands/PurchaseCapacityBlockCommand.d.ts +1 -1
  32. package/dist-types/commands/PurchaseHostReservationCommand.d.ts +1 -2
  33. package/dist-types/commands/index.d.ts +2 -0
  34. package/dist-types/models/models_0.d.ts +1 -1
  35. package/dist-types/models/models_1.d.ts +14 -14
  36. package/dist-types/models/models_2.d.ts +8 -8
  37. package/dist-types/models/models_3.d.ts +22 -0
  38. package/dist-types/models/models_4.d.ts +10 -5
  39. package/dist-types/models/models_5.d.ts +65 -83
  40. package/dist-types/models/models_6.d.ts +92 -99
  41. package/dist-types/models/models_7.d.ts +103 -15
  42. package/dist-types/protocols/Aws_ec2.d.ts +18 -0
  43. package/dist-types/ts3.4/EC2.d.ts +46 -0
  44. package/dist-types/ts3.4/EC2Client.d.ts +12 -0
  45. package/dist-types/ts3.4/commands/DisableImageDeregistrationProtectionCommand.d.ts +39 -0
  46. package/dist-types/ts3.4/commands/EnableImageDeregistrationProtectionCommand.d.ts +39 -0
  47. package/dist-types/ts3.4/commands/GetIpamDiscoveredAccountsCommand.d.ts +2 -4
  48. package/dist-types/ts3.4/commands/GetIpamDiscoveredPublicAddressesCommand.d.ts +4 -2
  49. package/dist-types/ts3.4/commands/ProvisionPublicIpv4PoolCidrCommand.d.ts +2 -4
  50. package/dist-types/ts3.4/commands/PurchaseCapacityBlockCommand.d.ts +1 -1
  51. package/dist-types/ts3.4/commands/PurchaseHostReservationCommand.d.ts +4 -2
  52. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  53. package/dist-types/ts3.4/models/models_3.d.ts +4 -0
  54. package/dist-types/ts3.4/models/models_4.d.ts +2 -0
  55. package/dist-types/ts3.4/models/models_5.d.ts +15 -27
  56. package/dist-types/ts3.4/models/models_6.d.ts +29 -27
  57. package/dist-types/ts3.4/models/models_7.d.ts +24 -0
  58. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +24 -0
  59. package/package.json +1 -1
@@ -499,7 +499,8 @@ export interface DescribeTagsRequest {
499
499
  * </li>
500
500
  * <li>
501
501
  * <p>
502
- * <code>resource-type</code> - The resource type (<code>customer-gateway</code> | <code>dedicated-host</code> | <code>dhcp-options</code> | <code>elastic-ip</code> | <code>fleet</code> | <code>fpga-image</code> | <code>host-reservation</code> | <code>image</code> | <code>instance</code> | <code>internet-gateway</code> | <code>key-pair</code> | <code>launch-template</code> | <code>natgateway</code> | <code>network-acl</code> | <code>network-interface</code> | <code>placement-group</code> | <code>reserved-instances</code> | <code>route-table</code> | <code>security-group</code> | <code>snapshot</code> | <code>spot-instances-request</code> | <code>subnet</code> | <code>volume</code> | <code>vpc</code> | <code>vpc-endpoint</code> | <code>vpc-endpoint-service</code> | <code>vpc-peering-connection</code> | <code>vpn-connection</code> | <code>vpn-gateway</code>).</p>
502
+ * <code>resource-type</code> - The resource type. For a list of possible values, see
503
+ * <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_TagSpecification.html">TagSpecification</a>.</p>
503
504
  * </li>
504
505
  * <li>
505
506
  * <p>
@@ -4531,6 +4532,33 @@ export interface DisableImageDeprecationResult {
4531
4532
  */
4532
4533
  Return?: boolean;
4533
4534
  }
4535
+ /**
4536
+ * @public
4537
+ */
4538
+ export interface DisableImageDeregistrationProtectionRequest {
4539
+ /**
4540
+ * <p>The ID of the AMI.</p>
4541
+ * @public
4542
+ */
4543
+ ImageId: string | undefined;
4544
+ /**
4545
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
4546
+ * and provides an error response. If you have the required permissions, the error response is
4547
+ * <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
4548
+ * @public
4549
+ */
4550
+ DryRun?: boolean;
4551
+ }
4552
+ /**
4553
+ * @public
4554
+ */
4555
+ export interface DisableImageDeregistrationProtectionResult {
4556
+ /**
4557
+ * <p>Returns <code>true</code> if the request succeeds; otherwise, it returns an error.</p>
4558
+ * @public
4559
+ */
4560
+ Return?: string;
4561
+ }
4534
4562
  /**
4535
4563
  * @public
4536
4564
  */
@@ -5744,6 +5772,39 @@ export interface EnableImageDeprecationResult {
5744
5772
  */
5745
5773
  Return?: boolean;
5746
5774
  }
5775
+ /**
5776
+ * @public
5777
+ */
5778
+ export interface EnableImageDeregistrationProtectionRequest {
5779
+ /**
5780
+ * <p>The ID of the AMI.</p>
5781
+ * @public
5782
+ */
5783
+ ImageId: string | undefined;
5784
+ /**
5785
+ * <p>If <code>true</code>, enforces deregistration protection for 24 hours after deregistration
5786
+ * protection is disabled.</p>
5787
+ * @public
5788
+ */
5789
+ WithCooldown?: boolean;
5790
+ /**
5791
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
5792
+ * and provides an error response. If you have the required permissions, the error response is
5793
+ * <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
5794
+ * @public
5795
+ */
5796
+ DryRun?: boolean;
5797
+ }
5798
+ /**
5799
+ * @public
5800
+ */
5801
+ export interface EnableImageDeregistrationProtectionResult {
5802
+ /**
5803
+ * <p>Returns <code>true</code> if the request succeeds; otherwise, it returns an error.</p>
5804
+ * @public
5805
+ */
5806
+ Return?: string;
5807
+ }
5747
5808
  /**
5748
5809
  * @public
5749
5810
  */
@@ -6311,14 +6372,14 @@ export interface AssociatedRole {
6311
6372
  */
6312
6373
  CertificateS3BucketName?: string;
6313
6374
  /**
6314
- * <p>The key of the Amazon S3 object ey where the certificate, certificate chain, and encrypted private key bundle
6315
- * is stored. The object key is formated as follows: <code>role_arn</code>/<code>certificate_arn</code>.
6375
+ * <p>The key of the Amazon S3 object where the certificate, certificate chain, and encrypted private key bundle
6376
+ * are stored. The object key is formatted as follows: <code>role_arn</code>/<code>certificate_arn</code>.
6316
6377
  * </p>
6317
6378
  * @public
6318
6379
  */
6319
6380
  CertificateS3ObjectKey?: string;
6320
6381
  /**
6321
- * <p>The ID of the KMS customer master key (CMK) used to encrypt the private key.</p>
6382
+ * <p>The ID of the KMS key used to encrypt the private key.</p>
6322
6383
  * @public
6323
6384
  */
6324
6385
  EncryptionKmsKeyId?: string;
@@ -7675,85 +7736,6 @@ export interface IpamDiscoveredAccount {
7675
7736
  */
7676
7737
  LastSuccessfulDiscoveryTime?: Date;
7677
7738
  }
7678
- /**
7679
- * @public
7680
- */
7681
- export interface GetIpamDiscoveredAccountsResult {
7682
- /**
7683
- * <p>Discovered accounts.</p>
7684
- * @public
7685
- */
7686
- IpamDiscoveredAccounts?: IpamDiscoveredAccount[];
7687
- /**
7688
- * <p>Specify the pagination token from a previous request to retrieve the next page of results.</p>
7689
- * @public
7690
- */
7691
- NextToken?: string;
7692
- }
7693
- /**
7694
- * @public
7695
- */
7696
- export interface GetIpamDiscoveredPublicAddressesRequest {
7697
- /**
7698
- * <p>A check for whether you have the required permissions for the action without actually making the request
7699
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
7700
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
7701
- * @public
7702
- */
7703
- DryRun?: boolean;
7704
- /**
7705
- * <p>An IPAM resource discovery ID.</p>
7706
- * @public
7707
- */
7708
- IpamResourceDiscoveryId: string | undefined;
7709
- /**
7710
- * <p>The Amazon Web Services Region for the IP address.</p>
7711
- * @public
7712
- */
7713
- AddressRegion: string | undefined;
7714
- /**
7715
- * <p>Filters.</p>
7716
- * @public
7717
- */
7718
- Filters?: Filter[];
7719
- /**
7720
- * <p>The token for the next page of results.</p>
7721
- * @public
7722
- */
7723
- NextToken?: string;
7724
- /**
7725
- * <p>The maximum number of IPAM discovered public addresses to return in one page of results.</p>
7726
- * @public
7727
- */
7728
- MaxResults?: number;
7729
- }
7730
- /**
7731
- * @public
7732
- * @enum
7733
- */
7734
- export declare const IpamPublicAddressType: {
7735
- readonly AMAZON_OWNED_EIP: "amazon-owned-eip";
7736
- readonly BYOIP: "byoip";
7737
- readonly EC2_PUBLIC_IP: "ec2-public-ip";
7738
- readonly SERVICE_MANAGED_BYOIP: "service-managed-byoip";
7739
- readonly SERVICE_MANAGED_IP: "service-managed-ip";
7740
- };
7741
- /**
7742
- * @public
7743
- */
7744
- export type IpamPublicAddressType = (typeof IpamPublicAddressType)[keyof typeof IpamPublicAddressType];
7745
- /**
7746
- * @public
7747
- * @enum
7748
- */
7749
- export declare const IpamPublicAddressAssociationStatus: {
7750
- readonly ASSOCIATED: "associated";
7751
- readonly DISASSOCIATED: "disassociated";
7752
- };
7753
- /**
7754
- * @public
7755
- */
7756
- export type IpamPublicAddressAssociationStatus = (typeof IpamPublicAddressAssociationStatus)[keyof typeof IpamPublicAddressAssociationStatus];
7757
7739
  /**
7758
7740
  * @internal
7759
7741
  */
@@ -1,9 +1,88 @@
1
- import { _InstanceType, AccessScopeAnalysisFinding, AddedPrincipal, AddIpamOperatingRegion, AddPrefixListEntry, AddressAttribute, Affinity, ApplianceModeSupportValue, AutoPlacement, ByoipCidr, CapacityReservation, CapacityReservationInstancePlatform, CurrencyCodeValues, DnsSupportValue, EnaSrdSpecification, EndDateType, HostMaintenance, HostRecovery, InstanceEventWindow, IpamPoolAllocation, Ipv6SupportValue, SecurityGroupReferencingSupportValue, SubnetAssociation, Tag, TagSpecification, TargetConfigurationRequest, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, UnsuccessfulItem, VerifiedAccessInstance, VerifiedAccessSseSpecificationResponse, VerifiedAccessTrustProvider } from "./models_0";
1
+ import { _InstanceType, AccessScopeAnalysisFinding, AddedPrincipal, AddIpamOperatingRegion, AddPrefixListEntry, AddressAttribute, Affinity, ApplianceModeSupportValue, AutoPlacement, ByoipCidr, DnsSupportValue, EnaSrdSpecification, EndDateType, HostMaintenance, HostRecovery, InstanceEventWindow, IpamPoolAllocation, Ipv6SupportValue, SecurityGroupReferencingSupportValue, SubnetAssociation, Tag, TagSpecification, TargetConfigurationRequest, TransitGatewayAssociationState, TransitGatewayAttachmentResourceType, TransitGatewayPolicyTableAssociation, TransitGatewayVpcAttachment, UnsuccessfulItem, VerifiedAccessInstance, VerifiedAccessSseSpecificationResponse, VerifiedAccessTrustProvider } from "./models_0";
2
2
  import { AttributeValue, CapacityReservationPreference, CapacityReservationTarget, ClientConnectOptions, ClientLoginBannerOptions, ConnectionLogOptions, ConnectionTrackingSpecificationRequest, DiskImageFormat, FleetExcessCapacityTerminationPolicy, FleetLaunchTemplateConfigRequest, HostnameType, InstanceEventWindowTimeRangeRequest, InstanceRequirementsRequest, Ipam, IpamPool, IpamResourceDiscovery, IpamResourceTag, IpamScope, IpamTier, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, NetworkInsightsAccessScopeContent, Placement, PlatformValues, RequestIpamResourceTag, ResponseLaunchTemplateData, SelfServicePortal, ShutdownBehavior, TargetCapacitySpecificationRequest, TargetCapacityUnitType, VolumeType } from "./models_1";
3
3
  import { AutoAcceptSharedAttachmentsValue, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, DnsOptionsSpecification, IKEVersionsRequestListValue, IpAddressType, PayerResponsibility, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, SubnetCidrReservation, SubnetConfiguration, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, VerifiedAccessEndpoint, VerifiedAccessEndpointProtocol, VerifiedAccessGroup, VerifiedAccessSseSpecificationRequest, VpnConnection, VpnEcmpSupportValue, VpnTunnelLogOptionsSpecification } from "./models_2";
4
4
  import { ArchitectureValues, BootModeValues, Byoasn, ConversionTask, Filter, FpgaImageAttribute, FpgaImageAttributeName, ImportImageLicenseConfigurationResponse, IpamPoolCidr, LaunchPermission, PermissionGroup, SnapshotDetail, VirtualizationType } from "./models_3";
5
- import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, Monitoring, PublicIpv4PoolRange, ReservedInstancesConfiguration, SnapshotAttributeName, SnapshotTaskDetail } from "./models_4";
6
- import { InstanceFamilyCreditSpecification, IpamComplianceStatus, IpamOverlapStatus, IpamPublicAddressAssociationStatus, IpamPublicAddressType, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
5
+ import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, Monitoring, ReservedInstancesConfiguration, SnapshotAttributeName, SnapshotTaskDetail } from "./models_4";
6
+ import { InstanceFamilyCreditSpecification, IpamComplianceStatus, IpamDiscoveredAccount, IpamOverlapStatus, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
7
+ /**
8
+ * @public
9
+ */
10
+ export interface GetIpamDiscoveredAccountsResult {
11
+ /**
12
+ * <p>Discovered accounts.</p>
13
+ * @public
14
+ */
15
+ IpamDiscoveredAccounts?: IpamDiscoveredAccount[];
16
+ /**
17
+ * <p>Specify the pagination token from a previous request to retrieve the next page of results.</p>
18
+ * @public
19
+ */
20
+ NextToken?: string;
21
+ }
22
+ /**
23
+ * @public
24
+ */
25
+ export interface GetIpamDiscoveredPublicAddressesRequest {
26
+ /**
27
+ * <p>A check for whether you have the required permissions for the action without actually making the request
28
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
29
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
30
+ * @public
31
+ */
32
+ DryRun?: boolean;
33
+ /**
34
+ * <p>An IPAM resource discovery ID.</p>
35
+ * @public
36
+ */
37
+ IpamResourceDiscoveryId: string | undefined;
38
+ /**
39
+ * <p>The Amazon Web Services Region for the IP address.</p>
40
+ * @public
41
+ */
42
+ AddressRegion: string | undefined;
43
+ /**
44
+ * <p>Filters.</p>
45
+ * @public
46
+ */
47
+ Filters?: Filter[];
48
+ /**
49
+ * <p>The token for the next page of results.</p>
50
+ * @public
51
+ */
52
+ NextToken?: string;
53
+ /**
54
+ * <p>The maximum number of IPAM discovered public addresses to return in one page of results.</p>
55
+ * @public
56
+ */
57
+ MaxResults?: number;
58
+ }
59
+ /**
60
+ * @public
61
+ * @enum
62
+ */
63
+ export declare const IpamPublicAddressType: {
64
+ readonly AMAZON_OWNED_EIP: "amazon-owned-eip";
65
+ readonly BYOIP: "byoip";
66
+ readonly EC2_PUBLIC_IP: "ec2-public-ip";
67
+ readonly SERVICE_MANAGED_BYOIP: "service-managed-byoip";
68
+ readonly SERVICE_MANAGED_IP: "service-managed-ip";
69
+ };
70
+ /**
71
+ * @public
72
+ */
73
+ export type IpamPublicAddressType = (typeof IpamPublicAddressType)[keyof typeof IpamPublicAddressType];
74
+ /**
75
+ * @public
76
+ * @enum
77
+ */
78
+ export declare const IpamPublicAddressAssociationStatus: {
79
+ readonly ASSOCIATED: "associated";
80
+ readonly DISASSOCIATED: "disassociated";
81
+ };
82
+ /**
83
+ * @public
84
+ */
85
+ export type IpamPublicAddressAssociationStatus = (typeof IpamPublicAddressAssociationStatus)[keyof typeof IpamPublicAddressAssociationStatus];
7
86
  /**
8
87
  * <p>The security group that the resource with the public IP address is in.</p>
9
88
  * @public
@@ -5253,15 +5332,15 @@ export interface ModifyLaunchTemplateRequest {
5253
5332
  ClientToken?: string;
5254
5333
  /**
5255
5334
  * <p>The ID of the launch template.</p>
5256
- * <p>You must specify either the <code>LaunchTemplateId</code> or the
5257
- * <code>LaunchTemplateName</code>, but not both.</p>
5335
+ * <p>You must specify either the launch template ID or the
5336
+ * launch template name, but not both.</p>
5258
5337
  * @public
5259
5338
  */
5260
5339
  LaunchTemplateId?: string;
5261
5340
  /**
5262
5341
  * <p>The name of the launch template.</p>
5263
- * <p>You must specify either the <code>LaunchTemplateName</code> or the
5264
- * <code>LaunchTemplateId</code>, but not both.</p>
5342
+ * <p>You must specify either the launch template ID or the
5343
+ * launch template name, but not both.</p>
5265
5344
  * @public
5266
5345
  */
5267
5346
  LaunchTemplateName?: string;
@@ -5487,6 +5566,12 @@ export interface ModifyNetworkInterfaceAttributeRequest {
5487
5566
  * @public
5488
5567
  */
5489
5568
  ConnectionTrackingSpecification?: ConnectionTrackingSpecificationRequest;
5569
+ /**
5570
+ * <p>Indicates whether to assign a public IPv4 address to a network interface.
5571
+ * This option can be enabled for any network interface but will only apply to the primary network interface (eth0).</p>
5572
+ * @public
5573
+ */
5574
+ AssociatePublicIpAddress?: boolean;
5490
5575
  }
5491
5576
  /**
5492
5577
  * @public
@@ -8205,98 +8290,6 @@ export interface ProvisionPublicIpv4PoolCidrRequest {
8205
8290
  */
8206
8291
  NetmaskLength: number | undefined;
8207
8292
  }
8208
- /**
8209
- * @public
8210
- */
8211
- export interface ProvisionPublicIpv4PoolCidrResult {
8212
- /**
8213
- * <p>The ID of the pool that you want to provision the CIDR to.</p>
8214
- * @public
8215
- */
8216
- PoolId?: string;
8217
- /**
8218
- * <p>Information about the address range of the public IPv4 pool.</p>
8219
- * @public
8220
- */
8221
- PoolAddressRange?: PublicIpv4PoolRange;
8222
- }
8223
- /**
8224
- * @public
8225
- */
8226
- export interface PurchaseCapacityBlockRequest {
8227
- /**
8228
- * <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>
8229
- * @public
8230
- */
8231
- DryRun?: boolean;
8232
- /**
8233
- * <p>The tags to apply to the Capacity Block during launch.</p>
8234
- * @public
8235
- */
8236
- TagSpecifications?: TagSpecification[];
8237
- /**
8238
- * <p>The ID of the Capacity Block offering.</p>
8239
- * @public
8240
- */
8241
- CapacityBlockOfferingId: string | undefined;
8242
- /**
8243
- * <p>The type of operating system for which to reserve capacity.</p>
8244
- * @public
8245
- */
8246
- InstancePlatform: CapacityReservationInstancePlatform | undefined;
8247
- }
8248
- /**
8249
- * @public
8250
- */
8251
- export interface PurchaseCapacityBlockResult {
8252
- /**
8253
- * <p>The Capacity Reservation.</p>
8254
- * @public
8255
- */
8256
- CapacityReservation?: CapacityReservation;
8257
- }
8258
- /**
8259
- * @public
8260
- */
8261
- export interface PurchaseHostReservationRequest {
8262
- /**
8263
- * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring Idempotency</a>.</p>
8264
- * @public
8265
- */
8266
- ClientToken?: string;
8267
- /**
8268
- * <p>The currency in which the <code>totalUpfrontPrice</code>, <code>LimitPrice</code>, and
8269
- * <code>totalHourlyPrice</code> amounts are specified. At this time, the only
8270
- * supported currency is <code>USD</code>.</p>
8271
- * @public
8272
- */
8273
- CurrencyCode?: CurrencyCodeValues;
8274
- /**
8275
- * <p>The IDs of the Dedicated Hosts with which the reservation will be associated.</p>
8276
- * @public
8277
- */
8278
- HostIdSet: string[] | undefined;
8279
- /**
8280
- * <p>The specified limit is checked against the total upfront cost of the reservation
8281
- * (calculated as the offering's upfront cost multiplied by the host count). If the total
8282
- * upfront cost is greater than the specified price limit, the request fails. This is used
8283
- * to ensure that the purchase does not exceed the expected upfront cost of the purchase.
8284
- * At this time, the only supported currency is <code>USD</code>. For example, to indicate
8285
- * a limit price of USD 100, specify 100.00.</p>
8286
- * @public
8287
- */
8288
- LimitPrice?: string;
8289
- /**
8290
- * <p>The ID of the offering.</p>
8291
- * @public
8292
- */
8293
- OfferingId: string | undefined;
8294
- /**
8295
- * <p>The tags to apply to the Dedicated Host Reservation during purchase.</p>
8296
- * @public
8297
- */
8298
- TagSpecifications?: TagSpecification[];
8299
- }
8300
8293
  /**
8301
8294
  * @internal
8302
8295
  */
@@ -1,10 +1,102 @@
1
- import { _InstanceType, AddressAttribute, AddressAttributeName, ByoipCidr, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, IpPermission, NatGatewayAddress, PortRange, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
1
+ import { _InstanceType, AddressAttribute, AddressAttributeName, ByoipCidr, CapacityReservation, CapacityReservationInstancePlatform, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, IpPermission, NatGatewayAddress, PortRange, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
2
2
  import { AmdSevSnpSpecification, BlockDeviceMapping, CreditSpecificationRequest, ElasticGpuSpecification, HostnameType, IcmpTypeCode, InstanceInterruptionBehavior, InstanceIpv6Address, LocalGatewayRoute, ManagedPrefixList, MarketType, Placement, RuleAction, ShutdownBehavior, SpotInstanceType } from "./models_1";
3
3
  import { SnapshotState, SSEType, TransitGatewayRoute } from "./models_2";
4
4
  import { ArchitectureValues, BootModeValues, ClientVpnConnectionStatus, Filter, ImdsSupportValues, InstanceTagNotificationAttribute, TpmSupportValues } from "./models_3";
5
- import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_4";
5
+ import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, PublicIpv4PoolRange, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_4";
6
6
  import { Purchase } from "./models_5";
7
7
  import { CapacityReservationSpecification, InstanceMonitoring, Status } from "./models_6";
8
+ /**
9
+ * @public
10
+ */
11
+ export interface ProvisionPublicIpv4PoolCidrResult {
12
+ /**
13
+ * <p>The ID of the pool that you want to provision the CIDR to.</p>
14
+ * @public
15
+ */
16
+ PoolId?: string;
17
+ /**
18
+ * <p>Information about the address range of the public IPv4 pool.</p>
19
+ * @public
20
+ */
21
+ PoolAddressRange?: PublicIpv4PoolRange;
22
+ }
23
+ /**
24
+ * @public
25
+ */
26
+ export interface PurchaseCapacityBlockRequest {
27
+ /**
28
+ * <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>
29
+ * @public
30
+ */
31
+ DryRun?: boolean;
32
+ /**
33
+ * <p>The tags to apply to the Capacity Block during launch.</p>
34
+ * @public
35
+ */
36
+ TagSpecifications?: TagSpecification[];
37
+ /**
38
+ * <p>The ID of the Capacity Block offering.</p>
39
+ * @public
40
+ */
41
+ CapacityBlockOfferingId: string | undefined;
42
+ /**
43
+ * <p>The type of operating system for which to reserve capacity.</p>
44
+ * @public
45
+ */
46
+ InstancePlatform: CapacityReservationInstancePlatform | undefined;
47
+ }
48
+ /**
49
+ * @public
50
+ */
51
+ export interface PurchaseCapacityBlockResult {
52
+ /**
53
+ * <p>The Capacity Reservation.</p>
54
+ * @public
55
+ */
56
+ CapacityReservation?: CapacityReservation;
57
+ }
58
+ /**
59
+ * @public
60
+ */
61
+ export interface PurchaseHostReservationRequest {
62
+ /**
63
+ * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring Idempotency</a>.</p>
64
+ * @public
65
+ */
66
+ ClientToken?: string;
67
+ /**
68
+ * <p>The currency in which the <code>totalUpfrontPrice</code>, <code>LimitPrice</code>, and
69
+ * <code>totalHourlyPrice</code> amounts are specified. At this time, the only
70
+ * supported currency is <code>USD</code>.</p>
71
+ * @public
72
+ */
73
+ CurrencyCode?: CurrencyCodeValues;
74
+ /**
75
+ * <p>The IDs of the Dedicated Hosts with which the reservation will be associated.</p>
76
+ * @public
77
+ */
78
+ HostIdSet: string[] | undefined;
79
+ /**
80
+ * <p>The specified limit is checked against the total upfront cost of the reservation
81
+ * (calculated as the offering's upfront cost multiplied by the host count). If the total
82
+ * upfront cost is greater than the specified price limit, the request fails. This is used
83
+ * to ensure that the purchase does not exceed the expected upfront cost of the purchase.
84
+ * At this time, the only supported currency is <code>USD</code>. For example, to indicate
85
+ * a limit price of USD 100, specify 100.00.</p>
86
+ * @public
87
+ */
88
+ LimitPrice?: string;
89
+ /**
90
+ * <p>The ID of the offering.</p>
91
+ * @public
92
+ */
93
+ OfferingId: string | undefined;
94
+ /**
95
+ * <p>The tags to apply to the Dedicated Host Reservation during purchase.</p>
96
+ * @public
97
+ */
98
+ TagSpecifications?: TagSpecification[];
99
+ }
8
100
  /**
9
101
  * @public
10
102
  */
@@ -2247,32 +2339,29 @@ export interface InstanceMarketOptionsRequest {
2247
2339
  SpotOptions?: SpotMarketOptions;
2248
2340
  }
2249
2341
  /**
2250
- * <p>The launch template to use. You must specify either the launch template ID or launch
2251
- * template name in the request, but not both.</p>
2342
+ * <p>Describes the launch template to use.</p>
2252
2343
  * @public
2253
2344
  */
2254
2345
  export interface LaunchTemplateSpecification {
2255
2346
  /**
2256
2347
  * <p>The ID of the launch template.</p>
2257
- * <p>You must specify the <code>LaunchTemplateId</code> or the
2258
- * <code>LaunchTemplateName</code>, but not both.</p>
2348
+ * <p>You must specify either the launch template ID or the
2349
+ * launch template name, but not both.</p>
2259
2350
  * @public
2260
2351
  */
2261
2352
  LaunchTemplateId?: string;
2262
2353
  /**
2263
2354
  * <p>The name of the launch template.</p>
2264
- * <p>You must specify the <code>LaunchTemplateName</code> or the
2265
- * <code>LaunchTemplateId</code>, but not both.</p>
2355
+ * <p>You must specify either the launch template ID or the
2356
+ * launch template name, but not both.</p>
2266
2357
  * @public
2267
2358
  */
2268
2359
  LaunchTemplateName?: string;
2269
2360
  /**
2270
2361
  * <p>The launch template version number, <code>$Latest</code>, or
2271
2362
  * <code>$Default</code>.</p>
2272
- * <p>If the value is <code>$Latest</code>, Amazon EC2 uses the latest version of the launch
2273
- * template.</p>
2274
- * <p>If the value is <code>$Default</code>, Amazon EC2 uses the default version of the
2275
- * launch template.</p>
2363
+ * <p>A value of <code>$Latest</code> uses the latest version of the launch template.</p>
2364
+ * <p>A value of <code>$Default</code> uses the default version of the launch template.</p>
2276
2365
  * <p>Default: The default version of the launch template.</p>
2277
2366
  * @public
2278
2367
  */
@@ -2653,9 +2742,8 @@ export interface RunInstancesRequest {
2653
2742
  */
2654
2743
  TagSpecifications?: TagSpecification[];
2655
2744
  /**
2656
- * <p>The launch template to use to launch the instances. Any parameters that you specify in
2657
- * <a>RunInstances</a> override the same parameters in the launch template.
2658
- * You can specify either the name or ID of a launch template, but not both.</p>
2745
+ * <p>The launch template. Any additional parameters that you specify for the new instance
2746
+ * overwrite the corresponding parameters included in the launch template.</p>
2659
2747
  * @public
2660
2748
  */
2661
2749
  LaunchTemplate?: LaunchTemplateSpecification;
@@ -383,6 +383,7 @@ import { DisableFastSnapshotRestoresCommandInput, DisableFastSnapshotRestoresCom
383
383
  import { DisableImageBlockPublicAccessCommandInput, DisableImageBlockPublicAccessCommandOutput } from "../commands/DisableImageBlockPublicAccessCommand";
384
384
  import { DisableImageCommandInput, DisableImageCommandOutput } from "../commands/DisableImageCommand";
385
385
  import { DisableImageDeprecationCommandInput, DisableImageDeprecationCommandOutput } from "../commands/DisableImageDeprecationCommand";
386
+ import { DisableImageDeregistrationProtectionCommandInput, DisableImageDeregistrationProtectionCommandOutput } from "../commands/DisableImageDeregistrationProtectionCommand";
386
387
  import { DisableIpamOrganizationAdminAccountCommandInput, DisableIpamOrganizationAdminAccountCommandOutput } from "../commands/DisableIpamOrganizationAdminAccountCommand";
387
388
  import { DisableSerialConsoleAccessCommandInput, DisableSerialConsoleAccessCommandOutput } from "../commands/DisableSerialConsoleAccessCommand";
388
389
  import { DisableSnapshotBlockPublicAccessCommandInput, DisableSnapshotBlockPublicAccessCommandOutput } from "../commands/DisableSnapshotBlockPublicAccessCommand";
@@ -413,6 +414,7 @@ import { EnableFastSnapshotRestoresCommandInput, EnableFastSnapshotRestoresComma
413
414
  import { EnableImageBlockPublicAccessCommandInput, EnableImageBlockPublicAccessCommandOutput } from "../commands/EnableImageBlockPublicAccessCommand";
414
415
  import { EnableImageCommandInput, EnableImageCommandOutput } from "../commands/EnableImageCommand";
415
416
  import { EnableImageDeprecationCommandInput, EnableImageDeprecationCommandOutput } from "../commands/EnableImageDeprecationCommand";
417
+ import { EnableImageDeregistrationProtectionCommandInput, EnableImageDeregistrationProtectionCommandOutput } from "../commands/EnableImageDeregistrationProtectionCommand";
416
418
  import { EnableIpamOrganizationAdminAccountCommandInput, EnableIpamOrganizationAdminAccountCommandOutput } from "../commands/EnableIpamOrganizationAdminAccountCommand";
417
419
  import { EnableReachabilityAnalyzerOrganizationSharingCommandInput, EnableReachabilityAnalyzerOrganizationSharingCommandOutput } from "../commands/EnableReachabilityAnalyzerOrganizationSharingCommand";
418
420
  import { EnableSerialConsoleAccessCommandInput, EnableSerialConsoleAccessCommandOutput } from "../commands/EnableSerialConsoleAccessCommand";
@@ -2150,6 +2152,10 @@ export declare const se_DisableImageBlockPublicAccessCommand: (input: DisableIma
2150
2152
  * serializeAws_ec2DisableImageDeprecationCommand
2151
2153
  */
2152
2154
  export declare const se_DisableImageDeprecationCommand: (input: DisableImageDeprecationCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2155
+ /**
2156
+ * serializeAws_ec2DisableImageDeregistrationProtectionCommand
2157
+ */
2158
+ export declare const se_DisableImageDeregistrationProtectionCommand: (input: DisableImageDeregistrationProtectionCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2153
2159
  /**
2154
2160
  * serializeAws_ec2DisableIpamOrganizationAdminAccountCommand
2155
2161
  */
@@ -2270,6 +2276,10 @@ export declare const se_EnableImageBlockPublicAccessCommand: (input: EnableImage
2270
2276
  * serializeAws_ec2EnableImageDeprecationCommand
2271
2277
  */
2272
2278
  export declare const se_EnableImageDeprecationCommand: (input: EnableImageDeprecationCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2279
+ /**
2280
+ * serializeAws_ec2EnableImageDeregistrationProtectionCommand
2281
+ */
2282
+ export declare const se_EnableImageDeregistrationProtectionCommand: (input: EnableImageDeregistrationProtectionCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2273
2283
  /**
2274
2284
  * serializeAws_ec2EnableIpamOrganizationAdminAccountCommand
2275
2285
  */
@@ -4622,6 +4632,10 @@ export declare const de_DisableImageBlockPublicAccessCommand: (output: __HttpRes
4622
4632
  * deserializeAws_ec2DisableImageDeprecationCommand
4623
4633
  */
4624
4634
  export declare const de_DisableImageDeprecationCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DisableImageDeprecationCommandOutput>;
4635
+ /**
4636
+ * deserializeAws_ec2DisableImageDeregistrationProtectionCommand
4637
+ */
4638
+ export declare const de_DisableImageDeregistrationProtectionCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DisableImageDeregistrationProtectionCommandOutput>;
4625
4639
  /**
4626
4640
  * deserializeAws_ec2DisableIpamOrganizationAdminAccountCommand
4627
4641
  */
@@ -4742,6 +4756,10 @@ export declare const de_EnableImageBlockPublicAccessCommand: (output: __HttpResp
4742
4756
  * deserializeAws_ec2EnableImageDeprecationCommand
4743
4757
  */
4744
4758
  export declare const de_EnableImageDeprecationCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<EnableImageDeprecationCommandOutput>;
4759
+ /**
4760
+ * deserializeAws_ec2EnableImageDeregistrationProtectionCommand
4761
+ */
4762
+ export declare const de_EnableImageDeregistrationProtectionCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<EnableImageDeregistrationProtectionCommandOutput>;
4745
4763
  /**
4746
4764
  * deserializeAws_ec2EnableIpamOrganizationAdminAccountCommand
4747
4765
  */