@aws-sdk/client-ec2 3.525.0 → 3.529.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 (42) hide show
  1. package/dist-cjs/index.js +584 -596
  2. package/dist-es/protocols/Aws_ec2.js +22 -34
  3. package/dist-types/commands/BundleInstanceCommand.d.ts +4 -2
  4. package/dist-types/commands/CancelImageLaunchPermissionCommand.d.ts +3 -4
  5. package/dist-types/commands/CopyImageCommand.d.ts +24 -16
  6. package/dist-types/commands/CreateImageCommand.d.ts +6 -5
  7. package/dist-types/commands/CreateRestoreImageTaskCommand.d.ts +3 -3
  8. package/dist-types/commands/CreateStoreImageTaskCommand.d.ts +1 -1
  9. package/dist-types/commands/DeregisterImageCommand.d.ts +11 -11
  10. package/dist-types/commands/DescribeBundleTasksCommand.d.ts +8 -1
  11. package/dist-types/commands/DescribeCapacityBlockOfferingsCommand.d.ts +1 -1
  12. package/dist-types/commands/DescribeFleetInstancesCommand.d.ts +7 -1
  13. package/dist-types/commands/DescribeFleetsCommand.d.ts +7 -2
  14. package/dist-types/commands/DescribeImageAttributeCommand.d.ts +6 -1
  15. package/dist-types/commands/DescribeImagesCommand.d.ts +9 -3
  16. package/dist-types/commands/DescribeInstanceStatusCommand.d.ts +5 -0
  17. package/dist-types/commands/DescribeInstancesCommand.d.ts +5 -0
  18. package/dist-types/commands/DescribeReservedInstancesCommand.d.ts +5 -0
  19. package/dist-types/commands/DescribeReservedInstancesListingsCommand.d.ts +5 -0
  20. package/dist-types/commands/DescribeReservedInstancesModificationsCommand.d.ts +5 -0
  21. package/dist-types/commands/DescribeReservedInstancesOfferingsCommand.d.ts +5 -0
  22. package/dist-types/commands/DescribeStoreImageTasksCommand.d.ts +1 -1
  23. package/dist-types/commands/DisableFastLaunchCommand.d.ts +6 -4
  24. package/dist-types/commands/DisableImageBlockPublicAccessCommand.d.ts +2 -2
  25. package/dist-types/commands/EnableFastLaunchCommand.d.ts +8 -7
  26. package/dist-types/commands/EnableImageDeprecationCommand.d.ts +2 -1
  27. package/dist-types/commands/ListImagesInRecycleBinCommand.d.ts +2 -2
  28. package/dist-types/commands/ModifyImageAttributeCommand.d.ts +7 -5
  29. package/dist-types/commands/ModifyInstancePlacementCommand.d.ts +1 -1
  30. package/dist-types/commands/RegisterImageCommand.d.ts +24 -13
  31. package/dist-types/commands/RestoreImageFromRecycleBinCommand.d.ts +2 -1
  32. package/dist-types/models/models_0.d.ts +42 -22
  33. package/dist-types/models/models_1.d.ts +51 -28
  34. package/dist-types/models/models_2.d.ts +5 -4
  35. package/dist-types/models/models_3.d.ts +86 -76
  36. package/dist-types/models/models_4.d.ts +13 -4
  37. package/dist-types/models/models_5.d.ts +40 -33
  38. package/dist-types/models/models_6.d.ts +67 -43
  39. package/dist-types/models/models_7.d.ts +3 -2
  40. package/dist-types/ts3.4/models/models_0.d.ts +1 -0
  41. package/dist-types/ts3.4/models/models_6.d.ts +1 -0
  42. package/package.json +4 -5
@@ -26,8 +26,8 @@ declare const RegisterImageCommand_base: {
26
26
  };
27
27
  /**
28
28
  * @public
29
- * <p>Registers an AMI. When you're creating an AMI, this is the final step you must complete
30
- * before you can launch an instance from the AMI. For more information about creating AMIs, see
29
+ * <p>Registers an AMI. When you're creating an instance-store backed AMI, registering the AMI
30
+ * is the final step in the creation process. For more information about creating AMIs, see
31
31
  * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami.html">Create your
32
32
  * own AMI</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
33
33
  * <note>
@@ -36,23 +36,23 @@ declare const RegisterImageCommand_base: {
36
36
  * always use <a>CreateImage</a> unless you have a specific reason to use
37
37
  * RegisterImage.</p>
38
38
  * </note>
39
- * <p>If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration.
40
- * If you make changes to an image, deregister the previous image and register the new image.</p>
39
+ * <p>If needed, you can deregister an AMI at any time. Any modifications you make to an AMI
40
+ * backed by an instance store volume invalidates its registration. If you make changes to an
41
+ * image, deregister the previous image and register the new image.</p>
41
42
  * <p>
42
43
  * <b>Register a snapshot of a root device volume</b>
43
44
  * </p>
44
- * <p>You can use <code>RegisterImage</code> to create an Amazon EBS-backed Linux AMI from
45
- * a snapshot of a root device volume. You specify the snapshot using a block device mapping.
46
- * You can't set the encryption state of the volume using the block device mapping. If the
47
- * snapshot is encrypted, or encryption by default is enabled, the root volume of an instance
48
- * launched from the AMI is encrypted.</p>
49
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html#creating-launching-ami-from-snapshot">Create a Linux AMI from a snapshot</a> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIEncryption.html">Use encryption with Amazon EBS-backed AMIs</a>
50
- * in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
45
+ * <p>You can use <code>RegisterImage</code> to create an Amazon EBS-backed Linux AMI from a snapshot
46
+ * of a root device volume. You specify the snapshot using a block device mapping. You can't set
47
+ * the encryption state of the volume using the block device mapping. If the snapshot is
48
+ * encrypted, or encryption by default is enabled, the root volume of an instance launched from
49
+ * the AMI is encrypted.</p>
50
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/creating-an-ami-ebs.html#creating-launching-ami-from-snapshot">Create a Linux AMI from a snapshot</a> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIEncryption.html">Use encryption with Amazon EBS-backed
51
+ * AMIs</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
51
52
  * <p>
52
53
  * <b>Amazon Web Services Marketplace product codes</b>
53
54
  * </p>
54
- * <p>If any snapshots have Amazon Web Services Marketplace product codes, they are copied to the new
55
- * AMI.</p>
55
+ * <p>If any snapshots have Amazon Web Services Marketplace product codes, they are copied to the new AMI.</p>
56
56
  * <p>Windows and some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE
57
57
  * Linux Enterprise Server (SLES), use the Amazon EC2 billing product code associated with an AMI to
58
58
  * verify the subscription status for package updates. To create a new AMI for operating systems
@@ -118,6 +118,17 @@ declare const RegisterImageCommand_base: {
118
118
  * TpmSupport: "v2.0",
119
119
  * UefiData: "STRING_VALUE",
120
120
  * ImdsSupport: "v2.0",
121
+ * TagSpecifications: [ // TagSpecificationList
122
+ * { // TagSpecification
123
+ * ResourceType: "capacity-reservation" || "client-vpn-endpoint" || "customer-gateway" || "carrier-gateway" || "coip-pool" || "dedicated-host" || "dhcp-options" || "egress-only-internet-gateway" || "elastic-ip" || "elastic-gpu" || "export-image-task" || "export-instance-task" || "fleet" || "fpga-image" || "host-reservation" || "image" || "import-image-task" || "import-snapshot-task" || "instance" || "instance-event-window" || "internet-gateway" || "ipam" || "ipam-pool" || "ipam-scope" || "ipv4pool-ec2" || "ipv6pool-ec2" || "key-pair" || "launch-template" || "local-gateway" || "local-gateway-route-table" || "local-gateway-virtual-interface" || "local-gateway-virtual-interface-group" || "local-gateway-route-table-vpc-association" || "local-gateway-route-table-virtual-interface-group-association" || "natgateway" || "network-acl" || "network-interface" || "network-insights-analysis" || "network-insights-path" || "network-insights-access-scope" || "network-insights-access-scope-analysis" || "placement-group" || "prefix-list" || "replace-root-volume-task" || "reserved-instances" || "route-table" || "security-group" || "security-group-rule" || "snapshot" || "spot-fleet-request" || "spot-instances-request" || "subnet" || "subnet-cidr-reservation" || "traffic-mirror-filter" || "traffic-mirror-session" || "traffic-mirror-target" || "transit-gateway" || "transit-gateway-attachment" || "transit-gateway-connect-peer" || "transit-gateway-multicast-domain" || "transit-gateway-policy-table" || "transit-gateway-route-table" || "transit-gateway-route-table-announcement" || "volume" || "vpc" || "vpc-endpoint" || "vpc-endpoint-connection" || "vpc-endpoint-service" || "vpc-endpoint-service-permission" || "vpc-peering-connection" || "vpn-connection" || "vpn-gateway" || "vpc-flow-log" || "capacity-reservation-fleet" || "traffic-mirror-filter-rule" || "vpc-endpoint-connection-device-type" || "verified-access-instance" || "verified-access-group" || "verified-access-endpoint" || "verified-access-policy" || "verified-access-trust-provider" || "vpn-connection-device-type" || "vpc-block-public-access-exclusion" || "ipam-resource-discovery" || "ipam-resource-discovery-association" || "instance-connect-endpoint",
124
+ * Tags: [ // TagList
125
+ * { // Tag
126
+ * Key: "STRING_VALUE",
127
+ * Value: "STRING_VALUE",
128
+ * },
129
+ * ],
130
+ * },
131
+ * ],
121
132
  * };
122
133
  * const command = new RegisterImageCommand(input);
123
134
  * const response = await client.send(command);
@@ -26,7 +26,8 @@ declare const RestoreImageFromRecycleBinCommand_base: {
26
26
  };
27
27
  /**
28
28
  * @public
29
- * <p>Restores an AMI from the Recycle Bin. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html">Recycle Bin</a> in the <i>Amazon EC2 User Guide</i>.</p>
29
+ * <p>Restores an AMI from the Recycle Bin. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/recycle-bin.html">Recycle Bin</a> in
30
+ * the <i>Amazon EC2 User Guide</i>.</p>
30
31
  * @example
31
32
  * Use a bare-bones client and the command you need to make an API call.
32
33
  * ```javascript
@@ -5998,20 +5998,22 @@ export interface AuthorizeSecurityGroupIngressResult {
5998
5998
  }
5999
5999
  /**
6000
6000
  * @public
6001
- * <p>Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.</p>
6001
+ * <p>Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed
6002
+ * AMI.</p>
6002
6003
  */
6003
6004
  export interface S3Storage {
6004
6005
  /**
6005
6006
  * @public
6006
6007
  * <p>The access key ID of the owner of the bucket. Before you specify a value for your access
6007
- * key ID, review and follow the guidance in <a href="https://docs.aws.amazon.com/accounts/latest/reference/best-practices.html">Best
6008
- * Practices for Amazon Web Services accounts</a> in the <i>Account ManagementReference
6009
- * Guide</i>.</p>
6008
+ * key ID, review and follow the guidance in <a href="https://docs.aws.amazon.com/accounts/latest/reference/best-practices.html">Best Practices for Amazon Web Services
6009
+ * accounts</a> in the <i>Account ManagementReference Guide</i>.</p>
6010
6010
  */
6011
6011
  AWSAccessKeyId?: string;
6012
6012
  /**
6013
6013
  * @public
6014
- * <p>The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.</p>
6014
+ * <p>The bucket in which to store the AMI. You can specify a bucket that you already own or a
6015
+ * new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone
6016
+ * else, Amazon EC2 returns an error.</p>
6015
6017
  */
6016
6018
  Bucket?: string;
6017
6019
  /**
@@ -6021,7 +6023,8 @@ export interface S3Storage {
6021
6023
  Prefix?: string;
6022
6024
  /**
6023
6025
  * @public
6024
- * <p>An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.</p>
6026
+ * <p>An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your
6027
+ * behalf.</p>
6025
6028
  */
6026
6029
  UploadPolicy?: Uint8Array;
6027
6030
  /**
@@ -6049,14 +6052,14 @@ export interface BundleInstanceRequest {
6049
6052
  /**
6050
6053
  * @public
6051
6054
  * <p>The ID of the instance to bundle.</p>
6052
- * <p>Type: String</p>
6053
6055
  * <p>Default: None</p>
6054
- * <p>Required: Yes</p>
6055
6056
  */
6056
6057
  InstanceId: string | undefined;
6057
6058
  /**
6058
6059
  * @public
6059
- * <p>The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.</p>
6060
+ * <p>The bucket in which to store the AMI. You can specify a bucket that you already own or a
6061
+ * new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone
6062
+ * else, Amazon EC2 returns an error.</p>
6060
6063
  */
6061
6064
  Storage: Storage | undefined;
6062
6065
  /**
@@ -6858,9 +6861,9 @@ export interface CopyFpgaImageResult {
6858
6861
  export interface CopyImageRequest {
6859
6862
  /**
6860
6863
  * @public
6861
- * <p>Unique, case-sensitive identifier you provide to ensure
6862
- * 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>
6863
- * in the <i>Amazon EC2 API Reference</i>.</p>
6864
+ * <p>Unique, case-sensitive identifier you provide to ensure idempotency of the request. For
6865
+ * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring idempotency</a>
6866
+ * in the <i>Amazon EC2 API Reference</i>.</p>
6864
6867
  */
6865
6868
  ClientToken?: string;
6866
6869
  /**
@@ -6879,9 +6882,9 @@ export interface CopyImageRequest {
6879
6882
  Encrypted?: boolean;
6880
6883
  /**
6881
6884
  * @public
6882
- * <p>The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating
6883
- * encrypted volumes. If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used.
6884
- * If you specify a KMS key, you must also set the encrypted state to <code>true</code>.</p>
6885
+ * <p>The identifier of the symmetric Key Management Service (KMS) KMS key to use when creating encrypted volumes.
6886
+ * If this parameter is not specified, your Amazon Web Services managed KMS key for Amazon EBS is used. If you
6887
+ * specify a KMS key, you must also set the encrypted state to <code>true</code>.</p>
6885
6888
  * <p>You can specify a KMS key using any of the following:</p>
6886
6889
  * <ul>
6887
6890
  * <li>
@@ -6897,8 +6900,8 @@ export interface CopyImageRequest {
6897
6900
  * <p>Alias ARN. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias.</p>
6898
6901
  * </li>
6899
6902
  * </ul>
6900
- * <p>Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier that is not valid,
6901
- * the action can appear to complete, but eventually fails.</p>
6903
+ * <p>Amazon Web Services authenticates the KMS key asynchronously. Therefore, if you specify an identifier
6904
+ * that is not valid, the action can appear to complete, but eventually fails.</p>
6902
6905
  * <p>The specified KMS key must exist in the destination Region.</p>
6903
6906
  * <p>Amazon EBS does not support asymmetric KMS keys.</p>
6904
6907
  */
@@ -6920,11 +6923,10 @@ export interface CopyImageRequest {
6920
6923
  SourceRegion: string | undefined;
6921
6924
  /**
6922
6925
  * @public
6923
- * <p>The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only
6924
- * specify this parameter when copying an AMI from an Amazon Web Services Region to an Outpost.
6925
- * The AMI must be in the Region of the destination Outpost. You cannot copy an
6926
- * AMI from an Outpost to a Region, from one Outpost to another, or within the same
6927
- * Outpost.</p>
6926
+ * <p>The Amazon Resource Name (ARN) of the Outpost to which to copy the AMI. Only specify this
6927
+ * parameter when copying an AMI from an Amazon Web Services Region to an Outpost. The AMI must be in the
6928
+ * Region of the destination Outpost. You cannot copy an AMI from an Outpost to a Region, from
6929
+ * one Outpost to another, or within the same Outpost.</p>
6928
6930
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/snapshots-outposts.html#copy-amis"> Copy AMIs from an Amazon Web Services
6929
6931
  * Region to an Outpost</a> in the <i>Amazon EC2 User Guide</i>.</p>
6930
6932
  */
@@ -6952,6 +6954,24 @@ export interface CopyImageRequest {
6952
6954
  * <p>Default: Your user-defined AMI tags are not copied.</p>
6953
6955
  */
6954
6956
  CopyImageTags?: boolean;
6957
+ /**
6958
+ * @public
6959
+ * <p>The tags to apply to the new AMI and new snapshots. You can tag the AMI, the snapshots, or
6960
+ * both.</p>
6961
+ * <ul>
6962
+ * <li>
6963
+ * <p>To tag the new AMI, the value for <code>ResourceType</code> must be
6964
+ * <code>image</code>.</p>
6965
+ * </li>
6966
+ * <li>
6967
+ * <p>To tag the new snapshots, the value for <code>ResourceType</code> must be
6968
+ * <code>snapshot</code>. The same tag is applied to all the new snapshots.</p>
6969
+ * </li>
6970
+ * </ul>
6971
+ * <p>If you specify other values for <code>ResourceType</code>, the request fails.</p>
6972
+ * <p>To tag an AMI or snapshot after it has been created, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html">CreateTags</a>.</p>
6973
+ */
6974
+ TagSpecifications?: TagSpecification[];
6955
6975
  }
6956
6976
  /**
6957
6977
  * @public
@@ -1659,16 +1659,18 @@ export interface InstanceRequirementsRequest {
1659
1659
  * selects instance types with your attributes, it will exclude instance types whose Spot
1660
1660
  * price exceeds your specified threshold.</p>
1661
1661
  * <p>The parameter accepts an integer, which Amazon EC2 interprets as a percentage.</p>
1662
- * <p>To indicate no price protection threshold, specify a high value, such as <code>999999</code>.</p>
1663
1662
  * <p>If you set <code>TargetCapacityUnitType</code> to <code>vcpu</code> or
1664
1663
  * <code>memory-mib</code>, the price protection threshold is applied based on the
1665
1664
  * per-vCPU or per-memory price instead of the per-instance price.</p>
1666
1665
  * <p>This parameter is not supported for <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html">GetSpotPlacementScores</a> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html">GetInstanceTypesFromInstanceRequirements</a>.</p>
1667
1666
  * <note>
1668
1667
  * <p>Only one of <code>SpotMaxPricePercentageOverLowestPrice</code> or
1669
- * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
1670
- * don't specify either, then <code>SpotMaxPricePercentageOverLowestPrice</code> is used
1671
- * and the value for that parameter defaults to <code>100</code>.</p>
1668
+ * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
1669
+ * don't specify either, Amazon EC2 will automatically apply optimal price protection to
1670
+ * consistently select from a wide range of instance types. To indicate no price protection
1671
+ * threshold for Spot Instances, meaning you want to consider all instance types that match your
1672
+ * attributes, include one of these parameters and specify a high value, such as
1673
+ * <code>999999</code>.</p>
1672
1674
  * </note>
1673
1675
  * <p>Default: <code>100</code>
1674
1676
  * </p>
@@ -1932,16 +1934,17 @@ export interface InstanceRequirementsRequest {
1932
1934
  * selects instance types with your attributes, it will exclude instance types whose price
1933
1935
  * exceeds your specified threshold.</p>
1934
1936
  * <p>The parameter accepts an integer, which Amazon EC2 interprets as a percentage.</p>
1935
- * <p>To indicate no price protection threshold, specify a high value, such as
1936
- * <code>999999</code>.</p>
1937
1937
  * <p>If you set <code>DesiredCapacityType</code> to <code>vcpu</code> or
1938
1938
  * <code>memory-mib</code>, the price protection threshold is based on the per vCPU or per
1939
1939
  * memory price instead of the per instance price.</p>
1940
1940
  * <note>
1941
1941
  * <p>Only one of <code>SpotMaxPricePercentageOverLowestPrice</code> or
1942
1942
  * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
1943
- * don't specify either, then <code>SpotMaxPricePercentageOverLowestPrice</code> is used
1944
- * and the value for that parameter defaults to <code>100</code>.</p>
1943
+ * don't specify either, Amazon EC2 will automatically apply optimal price protection to
1944
+ * consistently select from a wide range of instance types. To indicate no price protection
1945
+ * threshold for Spot Instances, meaning you want to consider all instance types that match your
1946
+ * attributes, include one of these parameters and specify a high value, such as
1947
+ * <code>999999</code>.</p>
1945
1948
  * </note>
1946
1949
  */
1947
1950
  MaxSpotPriceAsPercentageOfOptimalOnDemandPrice?: number;
@@ -2051,6 +2054,14 @@ export interface FleetLaunchTemplateOverridesRequest {
2051
2054
  /**
2052
2055
  * @public
2053
2056
  * <p>The number of units provided by the specified instance type.</p>
2057
+ * <note>
2058
+ * <p>When specifying weights, the price used in the <code>lowest-price</code> and
2059
+ * <code>price-capacity-optimized</code> allocation strategies is per
2060
+ * <i>unit</i> hour (where the instance price is divided by the specified
2061
+ * weight). However, if all the specified weights are above the requested
2062
+ * <code>TargetCapacity</code>, resulting in only 1 instance being launched, the price
2063
+ * used is per <i>instance</i> hour.</p>
2064
+ * </note>
2054
2065
  */
2055
2066
  WeightedCapacity?: number;
2056
2067
  /**
@@ -2918,17 +2929,18 @@ export interface InstanceRequirements {
2918
2929
  * selects instance types with your attributes, it will exclude instance types whose Spot
2919
2930
  * price exceeds your specified threshold.</p>
2920
2931
  * <p>The parameter accepts an integer, which Amazon EC2 interprets as a percentage.</p>
2921
- * <p>To indicate no price protection threshold, specify a high value, such as
2922
- * <code>999999</code>.</p>
2923
2932
  * <p>If you set <code>TargetCapacityUnitType</code> to <code>vcpu</code> or
2924
2933
  * <code>memory-mib</code>, the price protection threshold is applied based on the per-vCPU
2925
2934
  * or per-memory price instead of the per-instance price.</p>
2926
2935
  * <p>This parameter is not supported for <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html">GetSpotPlacementScores</a> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html">GetInstanceTypesFromInstanceRequirements</a>.</p>
2927
2936
  * <note>
2928
2937
  * <p>Only one of <code>SpotMaxPricePercentageOverLowestPrice</code> or
2929
- * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
2930
- * don't specify either, then <code>SpotMaxPricePercentageOverLowestPrice</code> is used
2931
- * and the value for that parameter defaults to <code>100</code>.</p>
2938
+ * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
2939
+ * don't specify either, Amazon EC2 will automatically apply optimal price protection to
2940
+ * consistently select from a wide range of instance types. To indicate no price protection
2941
+ * threshold for Spot Instances, meaning you want to consider all instance types that match your
2942
+ * attributes, include one of these parameters and specify a high value, such as
2943
+ * <code>999999</code>.</p>
2932
2944
  * </note>
2933
2945
  * <p>Default: <code>100</code>
2934
2946
  * </p>
@@ -3191,16 +3203,17 @@ export interface InstanceRequirements {
3191
3203
  * selects instance types with your attributes, it will exclude instance types whose price
3192
3204
  * exceeds your specified threshold.</p>
3193
3205
  * <p>The parameter accepts an integer, which Amazon EC2 interprets as a percentage.</p>
3194
- * <p>To indicate no price protection threshold, specify a high value, such as
3195
- * <code>999999</code>.</p>
3196
3206
  * <p>If you set <code>DesiredCapacityType</code> to <code>vcpu</code> or
3197
3207
  * <code>memory-mib</code>, the price protection threshold is based on the per vCPU or per
3198
3208
  * memory price instead of the per instance price.</p>
3199
3209
  * <note>
3200
3210
  * <p>Only one of <code>SpotMaxPricePercentageOverLowestPrice</code> or
3201
3211
  * <code>MaxSpotPriceAsPercentageOfOptimalOnDemandPrice</code> can be specified. If you
3202
- * don't specify either, then <code>SpotMaxPricePercentageOverLowestPrice</code> is used
3203
- * and the value for that parameter defaults to <code>100</code>.</p>
3212
+ * don't specify either, Amazon EC2 will automatically apply optimal price protection to
3213
+ * consistently select from a wide range of instance types. To indicate no price protection
3214
+ * threshold for Spot Instances, meaning you want to consider all instance types that match your
3215
+ * attributes, include one of these parameters and specify a high value, such as
3216
+ * <code>999999</code>.</p>
3204
3217
  * </note>
3205
3218
  */
3206
3219
  MaxSpotPriceAsPercentageOfOptimalOnDemandPrice?: number;
@@ -3254,6 +3267,14 @@ export interface FleetLaunchTemplateOverrides {
3254
3267
  /**
3255
3268
  * @public
3256
3269
  * <p>The number of units provided by the specified instance type.</p>
3270
+ * <note>
3271
+ * <p>When specifying weights, the price used in the <code>lowest-price</code> and
3272
+ * <code>price-capacity-optimized</code> allocation strategies is per
3273
+ * <i>unit</i> hour (where the instance price is divided by the specified
3274
+ * weight). However, if all the specified weights are above the requested
3275
+ * <code>TargetCapacity</code>, resulting in only 1 instance being launched, the price
3276
+ * used is per <i>instance</i> hour.</p>
3277
+ * </note>
3257
3278
  */
3258
3279
  WeightedCapacity?: number;
3259
3280
  /**
@@ -3958,26 +3979,28 @@ export interface CreateImageRequest {
3958
3979
  /**
3959
3980
  * @public
3960
3981
  * <p>A name for the new image.</p>
3961
- * <p>Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)</p>
3982
+ * <p>Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces
3983
+ * ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or
3984
+ * underscores(_)</p>
3962
3985
  */
3963
3986
  Name: string | undefined;
3964
3987
  /**
3965
3988
  * @public
3966
- * <p>Indicates whether or not the instance should be automatically rebooted before creating
3967
- * the image. Specify one of the following values:</p>
3989
+ * <p>Indicates whether or not the instance should be automatically rebooted before creating the
3990
+ * image. Specify one of the following values:</p>
3968
3991
  * <ul>
3969
3992
  * <li>
3970
3993
  * <p>
3971
3994
  * <code>true</code> - The instance is not rebooted before creating the image. This
3972
- * creates crash-consistent snapshots that include only the data that has been written
3973
- * to the volumes at the time the snapshots are created. Buffered data and data in
3974
- * memory that has not yet been written to the volumes is not included in the snapshots.</p>
3995
+ * creates crash-consistent snapshots that include only the data that has been written to the
3996
+ * volumes at the time the snapshots are created. Buffered data and data in memory that has
3997
+ * not yet been written to the volumes is not included in the snapshots.</p>
3975
3998
  * </li>
3976
3999
  * <li>
3977
4000
  * <p>
3978
- * <code>false</code> - The instance is rebooted before creating the image. This
3979
- * ensures that all buffered data and data in memory is written to the volumes before the
3980
- * snapshots are created.</p>
4001
+ * <code>false</code> - The instance is rebooted before creating the image. This ensures
4002
+ * that all buffered data and data in memory is written to the volumes before the snapshots
4003
+ * are created.</p>
3981
4004
  * </li>
3982
4005
  * </ul>
3983
4006
  * <p>Default: <code>false</code>
@@ -3994,8 +4017,8 @@ export interface CreateImageRequest {
3994
4017
  * <code>image</code>.</p>
3995
4018
  * </li>
3996
4019
  * <li>
3997
- * <p>To tag the snapshots that are created of the root volume and of other Amazon EBS volumes that
3998
- * are attached to the instance, the value for <code>ResourceType</code> must be
4020
+ * <p>To tag the snapshots that are created of the root volume and of other Amazon EBS volumes
4021
+ * that are attached to the instance, the value for <code>ResourceType</code> must be
3999
4022
  * <code>snapshot</code>. The same tag is applied to all of the snapshots that are
4000
4023
  * created.</p>
4001
4024
  * </li>
@@ -781,12 +781,13 @@ export interface CreateRestoreImageTaskRequest {
781
781
  * snapshots, or both.</p>
782
782
  * <ul>
783
783
  * <li>
784
- * <p>To tag the AMI, the value for <code>ResourceType</code> must be <code>image</code>.</p>
784
+ * <p>To tag the AMI, the value for <code>ResourceType</code> must be
785
+ * <code>image</code>.</p>
785
786
  * </li>
786
787
  * <li>
787
- * <p>To
788
- * tag the snapshots, the value for <code>ResourceType</code> must be <code>snapshot</code>. The
789
- * same tag is applied to all of the snapshots that are created.</p>
788
+ * <p>To tag the snapshots, the value for <code>ResourceType</code> must be
789
+ * <code>snapshot</code>. The same tag is applied to all of the snapshots that are
790
+ * created.</p>
790
791
  * </li>
791
792
  * </ul>
792
793
  */