@aws-sdk/client-ec2 3.95.0 → 3.98.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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,17 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [3.98.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.97.0...v3.98.0) (2022-05-24)
7
+
8
+
9
+ ### Features
10
+
11
+ * **client-ec2:** Stop Protection feature enables customers to protect their instances from accidental stop actions. ([097a389](https://github.com/aws/aws-sdk-js-v3/commit/097a38940e73dfbe0f732680e6c5360488ebc799))
12
+
13
+
14
+
15
+
16
+
6
17
  # [3.95.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.94.0...v3.95.0) (2022-05-19)
7
18
 
8
19
  **Note:** Version bump only for package @aws-sdk/client-ec2
@@ -36405,6 +36405,13 @@ const serializeAws_ec2ModifyInstanceAttributeRequest = (input, context) => {
36405
36405
  if (input.Value !== undefined && input.Value !== null) {
36406
36406
  entries["Value"] = input.Value;
36407
36407
  }
36408
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
36409
+ const memberEntries = serializeAws_ec2AttributeBooleanValue(input.DisableApiStop, context);
36410
+ Object.entries(memberEntries).forEach(([key, value]) => {
36411
+ const loc = `DisableApiStop.${key}`;
36412
+ entries[loc] = value;
36413
+ });
36414
+ }
36408
36415
  return entries;
36409
36416
  };
36410
36417
  const serializeAws_ec2ModifyInstanceCapacityReservationAttributesRequest = (input, context) => {
@@ -39297,6 +39304,9 @@ const serializeAws_ec2RequestLaunchTemplateData = (input, context) => {
39297
39304
  entries[loc] = value;
39298
39305
  });
39299
39306
  }
39307
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
39308
+ entries["DisableApiStop"] = input.DisableApiStop;
39309
+ }
39300
39310
  return entries;
39301
39311
  };
39302
39312
  const serializeAws_ec2RequestSpotFleetRequest = (input, context) => {
@@ -40136,6 +40146,9 @@ const serializeAws_ec2RunInstancesRequest = (input, context) => {
40136
40146
  entries[loc] = value;
40137
40147
  });
40138
40148
  }
40149
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
40150
+ entries["DisableApiStop"] = input.DisableApiStop;
40151
+ }
40139
40152
  return entries;
40140
40153
  };
40141
40154
  const serializeAws_ec2RunScheduledInstancesRequest = (input, context) => {
@@ -52928,6 +52941,7 @@ const deserializeAws_ec2InstanceAttribute = (output, context) => {
52928
52941
  SourceDestCheck: undefined,
52929
52942
  SriovNetSupport: undefined,
52930
52943
  UserData: undefined,
52944
+ DisableApiStop: undefined,
52931
52945
  };
52932
52946
  if (output.groupSet === "") {
52933
52947
  contents.Groups = [];
@@ -52986,6 +53000,9 @@ const deserializeAws_ec2InstanceAttribute = (output, context) => {
52986
53000
  if (output["userData"] !== undefined) {
52987
53001
  contents.UserData = deserializeAws_ec2AttributeValue(output["userData"], context);
52988
53002
  }
53003
+ if (output["disableApiStop"] !== undefined) {
53004
+ contents.DisableApiStop = deserializeAws_ec2AttributeBooleanValue(output["disableApiStop"], context);
53005
+ }
52989
53006
  return contents;
52990
53007
  };
52991
53008
  const deserializeAws_ec2InstanceBlockDeviceMapping = (output, context) => {
@@ -59833,6 +59850,7 @@ const deserializeAws_ec2ResponseLaunchTemplateData = (output, context) => {
59833
59850
  InstanceRequirements: undefined,
59834
59851
  PrivateDnsNameOptions: undefined,
59835
59852
  MaintenanceOptions: undefined,
59853
+ DisableApiStop: undefined,
59836
59854
  };
59837
59855
  if (output["kernelId"] !== undefined) {
59838
59856
  contents.KernelId = (0, smithy_client_1.expectString)(output["kernelId"]);
@@ -59951,6 +59969,9 @@ const deserializeAws_ec2ResponseLaunchTemplateData = (output, context) => {
59951
59969
  if (output["maintenanceOptions"] !== undefined) {
59952
59970
  contents.MaintenanceOptions = deserializeAws_ec2LaunchTemplateInstanceMaintenanceOptions(output["maintenanceOptions"], context);
59953
59971
  }
59972
+ if (output["disableApiStop"] !== undefined) {
59973
+ contents.DisableApiStop = (0, smithy_client_1.parseBoolean)(output["disableApiStop"]);
59974
+ }
59954
59975
  return contents;
59955
59976
  };
59956
59977
  const deserializeAws_ec2RestoreAddressToClassicResult = (output, context) => {
@@ -43054,6 +43054,14 @@ var serializeAws_ec2ModifyInstanceAttributeRequest = function (input, context) {
43054
43054
  if (input.Value !== undefined && input.Value !== null) {
43055
43055
  entries["Value"] = input.Value;
43056
43056
  }
43057
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
43058
+ var memberEntries = serializeAws_ec2AttributeBooleanValue(input.DisableApiStop, context);
43059
+ Object.entries(memberEntries).forEach(function (_a) {
43060
+ var _b = __read(_a, 2), key = _b[0], value = _b[1];
43061
+ var loc = "DisableApiStop.".concat(key);
43062
+ entries[loc] = value;
43063
+ });
43064
+ }
43057
43065
  return entries;
43058
43066
  };
43059
43067
  var serializeAws_ec2ModifyInstanceCapacityReservationAttributesRequest = function (input, context) {
@@ -46557,6 +46565,9 @@ var serializeAws_ec2RequestLaunchTemplateData = function (input, context) {
46557
46565
  entries[loc] = value;
46558
46566
  });
46559
46567
  }
46568
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
46569
+ entries["DisableApiStop"] = input.DisableApiStop;
46570
+ }
46560
46571
  return entries;
46561
46572
  };
46562
46573
  var serializeAws_ec2RequestSpotFleetRequest = function (input, context) {
@@ -47568,6 +47579,9 @@ var serializeAws_ec2RunInstancesRequest = function (input, context) {
47568
47579
  entries[loc] = value;
47569
47580
  });
47570
47581
  }
47582
+ if (input.DisableApiStop !== undefined && input.DisableApiStop !== null) {
47583
+ entries["DisableApiStop"] = input.DisableApiStop;
47584
+ }
47571
47585
  return entries;
47572
47586
  };
47573
47587
  var serializeAws_ec2RunScheduledInstancesRequest = function (input, context) {
@@ -61051,6 +61065,7 @@ var deserializeAws_ec2InstanceAttribute = function (output, context) {
61051
61065
  SourceDestCheck: undefined,
61052
61066
  SriovNetSupport: undefined,
61053
61067
  UserData: undefined,
61068
+ DisableApiStop: undefined,
61054
61069
  };
61055
61070
  if (output.groupSet === "") {
61056
61071
  contents.Groups = [];
@@ -61109,6 +61124,9 @@ var deserializeAws_ec2InstanceAttribute = function (output, context) {
61109
61124
  if (output["userData"] !== undefined) {
61110
61125
  contents.UserData = deserializeAws_ec2AttributeValue(output["userData"], context);
61111
61126
  }
61127
+ if (output["disableApiStop"] !== undefined) {
61128
+ contents.DisableApiStop = deserializeAws_ec2AttributeBooleanValue(output["disableApiStop"], context);
61129
+ }
61112
61130
  return contents;
61113
61131
  };
61114
61132
  var deserializeAws_ec2InstanceBlockDeviceMapping = function (output, context) {
@@ -67956,6 +67974,7 @@ var deserializeAws_ec2ResponseLaunchTemplateData = function (output, context) {
67956
67974
  InstanceRequirements: undefined,
67957
67975
  PrivateDnsNameOptions: undefined,
67958
67976
  MaintenanceOptions: undefined,
67977
+ DisableApiStop: undefined,
67959
67978
  };
67960
67979
  if (output["kernelId"] !== undefined) {
67961
67980
  contents.KernelId = __expectString(output["kernelId"]);
@@ -68074,6 +68093,9 @@ var deserializeAws_ec2ResponseLaunchTemplateData = function (output, context) {
68074
68093
  if (output["maintenanceOptions"] !== undefined) {
68075
68094
  contents.MaintenanceOptions = deserializeAws_ec2LaunchTemplateInstanceMaintenanceOptions(output["maintenanceOptions"], context);
68076
68095
  }
68096
+ if (output["disableApiStop"] !== undefined) {
68097
+ contents.DisableApiStop = __parseBoolean(output["disableApiStop"]);
68098
+ }
68077
68099
  return contents;
68078
68100
  };
68079
68101
  var deserializeAws_ec2RestoreAddressToClassicResult = function (output, context) {
@@ -1428,7 +1428,7 @@ export declare class EC2 extends EC2Client {
1428
1428
  * <p>A launch template contains the parameters to launch an
1429
1429
  * instance. When you launch an instance using <a>RunInstances</a>, you can
1430
1430
  * specify a launch template instead of providing the launch parameters in the request. For
1431
- * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html">Launching an instance from a
1431
+ * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html">Launch an instance from a
1432
1432
  * launch template</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
1433
1433
  * <p>If you want to clone an existing launch template as the basis for creating a new
1434
1434
  * launch template, you can use the Amazon EC2 console. The API, SDKs, and CLI do not support
@@ -1443,7 +1443,9 @@ export declare class EC2 extends EC2Client {
1443
1443
  * launch template from which to base the new version.</p>
1444
1444
  * <p>Launch template versions are numbered in the order in which they are created. You
1445
1445
  * cannot specify, change, or replace the numbering of launch template versions.</p>
1446
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#manage-launch-template-versions">Managing launch template versions</a>in the
1446
+ * <p>Launch templates are immutable; after you create a launch template, you can't modify it.
1447
+ * Instead, you can create a new version of the launch template that includes any changes you require.</p>
1448
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#manage-launch-template-versions">Modify a launch template (manage launch template versions)</a>in the
1447
1449
  * <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
1448
1450
  */
1449
1451
  createLaunchTemplateVersion(args: CreateLaunchTemplateVersionCommandInput, options?: __HttpHandlerOptions): Promise<CreateLaunchTemplateVersionCommandOutput>;
@@ -11,7 +11,7 @@ export interface CreateLaunchTemplateCommandOutput extends CreateLaunchTemplateR
11
11
  * <p>A launch template contains the parameters to launch an
12
12
  * instance. When you launch an instance using <a>RunInstances</a>, you can
13
13
  * specify a launch template instead of providing the launch parameters in the request. For
14
- * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html">Launching an instance from a
14
+ * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html">Launch an instance from a
15
15
  * launch template</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
16
16
  * <p>If you want to clone an existing launch template as the basis for creating a new
17
17
  * launch template, you can use the Amazon EC2 console. The API, SDKs, and CLI do not support
@@ -11,7 +11,9 @@ export interface CreateLaunchTemplateVersionCommandOutput extends CreateLaunchTe
11
11
  * launch template from which to base the new version.</p>
12
12
  * <p>Launch template versions are numbered in the order in which they are created. You
13
13
  * cannot specify, change, or replace the numbering of launch template versions.</p>
14
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#manage-launch-template-versions">Managing launch template versions</a>in the
14
+ * <p>Launch templates are immutable; after you create a launch template, you can't modify it.
15
+ * Instead, you can create a new version of the launch template that includes any changes you require.</p>
16
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#manage-launch-template-versions">Modify a launch template (manage launch template versions)</a>in the
15
17
  * <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
16
18
  * @example
17
19
  * Use a bare-bones client and the command you need to make an API call.
@@ -3213,7 +3213,7 @@ export declare namespace LaunchTemplateElasticInferenceAccelerator {
3213
3213
  }
3214
3214
  /**
3215
3215
  * <p>Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more
3216
- * information, see <a href="https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html"> What is Amazon Web Services Nitro Enclaves?</a>
3216
+ * information, see <a href="https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html">What is Amazon Web Services Nitro Enclaves?</a>
3217
3217
  * in the <i>Amazon Web Services Nitro Enclaves User Guide</i>.</p>
3218
3218
  */
3219
3219
  export interface LaunchTemplateEnclaveOptionsRequest {
@@ -3231,7 +3231,7 @@ export declare namespace LaunchTemplateEnclaveOptionsRequest {
3231
3231
  }
3232
3232
  /**
3233
3233
  * <p>Indicates whether the instance is configured for hibernation. This parameter is valid
3234
- * only if the instance meets the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html#hibernating-prerequisites">hibernation
3234
+ * only if the instance meets the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html">hibernation
3235
3235
  * prerequisites</a>.</p>
3236
3236
  */
3237
3237
  export interface LaunchTemplateHibernationOptionsRequest {
@@ -3731,9 +3731,8 @@ export interface RequestLaunchTemplateData {
3731
3731
  * <p>The ID of the kernel.</p>
3732
3732
  * <important>
3733
3733
  * <p>We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
3734
- * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">User Provided
3735
- * Kernels</a> in the <i>Amazon Elastic Compute Cloud User
3736
- * Guide</i>.</p>
3734
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">User provided
3735
+ * kernels</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
3737
3736
  * </important>
3738
3737
  */
3739
3738
  KernelId?: string;
@@ -3763,7 +3762,7 @@ export interface RequestLaunchTemplateData {
3763
3762
  */
3764
3763
  ImageId?: string;
3765
3764
  /**
3766
- * <p>The instance type. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html">Instance Types</a> in the
3765
+ * <p>The instance type. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html">Instance types</a> in the
3767
3766
  * <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
3768
3767
  * <p>If you specify <code>InstanceTypes</code>, you can't specify
3769
3768
  * <code>InstanceRequirements</code>.</p>
@@ -3790,9 +3789,8 @@ export interface RequestLaunchTemplateData {
3790
3789
  * <p>The ID of the RAM disk.</p>
3791
3790
  * <important>
3792
3791
  * <p>We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
3793
- * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">User Provided
3794
- * Kernels</a> in the <i>Amazon Elastic Compute Cloud User
3795
- * Guide</i>.</p>
3792
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">User provided
3793
+ * kernels</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
3796
3794
  * </important>
3797
3795
  */
3798
3796
  RamDiskId?: string;
@@ -3813,8 +3811,8 @@ export interface RequestLaunchTemplateData {
3813
3811
  InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string;
3814
3812
  /**
3815
3813
  * <p>The user data to make available to the instance. You must provide base64-encoded text.
3816
- * User data is limited to 16 KB. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html">Running Commands on Your Linux Instance
3817
- * at Launch</a> (Linux) or <a href="https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data">Adding User Data</a> (Windows).</p>
3814
+ * User data is limited to 16 KB. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html">Run commands on your Linux instance
3815
+ * at launch</a> (Linux) or <a href="https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/instancedata-add-user-data.html">Work with instance user data</a> (Windows) in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
3818
3816
  *
3819
3817
  * <p>If you are creating the launch template for use with Batch, the user
3820
3818
  * data must be provided in the <a href="https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive"> MIME multi-part archive format</a>. For more information, see <a href="https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html">Amazon EC2 user data in launch templates</a> in the <i>Batch User Guide</i>.</p>
@@ -3872,7 +3870,7 @@ export interface RequestLaunchTemplateData {
3872
3870
  LicenseSpecifications?: LaunchTemplateLicenseConfigurationRequest[];
3873
3871
  /**
3874
3872
  * <p>Indicates whether an instance is enabled for hibernation. This parameter is valid only
3875
- * if the instance meets the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html#hibernating-prerequisites">hibernation
3873
+ * if the instance meets the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html">hibernation
3876
3874
  * prerequisites</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html">Hibernate your instance</a> in the
3877
3875
  * <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
3878
3876
  */
@@ -3905,6 +3903,12 @@ export interface RequestLaunchTemplateData {
3905
3903
  * <p>The maintenance options for the instance.</p>
3906
3904
  */
3907
3905
  MaintenanceOptions?: LaunchTemplateInstanceMaintenanceOptionsRequest;
3906
+ /**
3907
+ * <p>Indicates whether to enable the instance for stop protection. For more information,
3908
+ * see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection">Stop
3909
+ * Protection</a>.</p>
3910
+ */
3911
+ DisableApiStop?: boolean;
3908
3912
  }
3909
3913
  export declare namespace RequestLaunchTemplateData {
3910
3914
  /**
@@ -3923,7 +3927,7 @@ export interface CreateLaunchTemplateRequest {
3923
3927
  /**
3924
3928
  * <p>Unique, case-sensitive identifier you provide to ensure the idempotency of the
3925
3929
  * request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring
3926
- * Idempotency</a>.</p>
3930
+ * idempotency</a>.</p>
3927
3931
  * <p>Constraint: Maximum 128 ASCII characters.</p>
3928
3932
  */
3929
3933
  ClientToken?: string;
@@ -3997,14 +4001,14 @@ export declare namespace LaunchTemplate {
3997
4001
  export interface ValidationError {
3998
4002
  /**
3999
4003
  * <p>The error code that indicates why the parameter or parameter combination is not valid.
4000
- * For more information about error codes, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html">Error
4001
- * Codes</a>.</p>
4004
+ * For more information about error codes, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html">Error
4005
+ * codes</a>.</p>
4002
4006
  */
4003
4007
  Code?: string;
4004
4008
  /**
4005
4009
  * <p>The error message that describes why the parameter or parameter combination is not
4006
- * valid. For more information about error messages, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html">Error
4007
- * Codes</a>.</p>
4010
+ * valid. For more information about error messages, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html">Error
4011
+ * codes</a>.</p>
4008
4012
  */
4009
4013
  Message?: string;
4010
4014
  }
@@ -4060,7 +4064,7 @@ export interface CreateLaunchTemplateVersionRequest {
4060
4064
  /**
4061
4065
  * <p>Unique, case-sensitive identifier you provide to ensure the idempotency of the
4062
4066
  * request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring
4063
- * Idempotency</a>.</p>
4067
+ * idempotency</a>.</p>
4064
4068
  * <p>Constraint: Maximum 128 ASCII characters.</p>
4065
4069
  */
4066
4070
  ClientToken?: string;
@@ -4876,6 +4880,11 @@ export interface ResponseLaunchTemplateData {
4876
4880
  * <p>The maintenance options for your instance.</p>
4877
4881
  */
4878
4882
  MaintenanceOptions?: LaunchTemplateInstanceMaintenanceOptions;
4883
+ /**
4884
+ * <p>Indicates whether the instance is enabled for stop protection.
4885
+ * For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection">Stop Protection</a>.</p>
4886
+ */
4887
+ DisableApiStop?: boolean;
4879
4888
  }
4880
4889
  export declare namespace ResponseLaunchTemplateData {
4881
4890
  /**
@@ -4272,7 +4272,7 @@ export declare namespace DescribeImportSnapshotTasksResult {
4272
4272
  */
4273
4273
  const filterSensitiveLog: (obj: DescribeImportSnapshotTasksResult) => any;
4274
4274
  }
4275
- export declare type InstanceAttributeName = "blockDeviceMapping" | "disableApiTermination" | "ebsOptimized" | "enaSupport" | "enclaveOptions" | "groupSet" | "instanceInitiatedShutdownBehavior" | "instanceType" | "kernel" | "productCodes" | "ramdisk" | "rootDeviceName" | "sourceDestCheck" | "sriovNetSupport" | "userData";
4275
+ export declare type InstanceAttributeName = "blockDeviceMapping" | "disableApiStop" | "disableApiTermination" | "ebsOptimized" | "enaSupport" | "enclaveOptions" | "groupSet" | "instanceInitiatedShutdownBehavior" | "instanceType" | "kernel" | "productCodes" | "ramdisk" | "rootDeviceName" | "sourceDestCheck" | "sriovNetSupport" | "userData";
4276
4276
  export interface DescribeInstanceAttributeRequest {
4277
4277
  /**
4278
4278
  * <p>The instance attribute.</p>
@@ -4453,6 +4453,11 @@ export interface InstanceAttribute {
4453
4453
  * <p>The user data.</p>
4454
4454
  */
4455
4455
  UserData?: AttributeValue;
4456
+ /**
4457
+ * <p>To enable the instance for Amazon Web Services Stop Protection, set this parameter to
4458
+ * <code>true</code>; otherwise, set it to <code>false</code>.</p>
4459
+ */
4460
+ DisableApiStop?: AttributeBooleanValue;
4456
4461
  }
4457
4462
  export declare namespace InstanceAttribute {
4458
4463
  /**
@@ -3782,6 +3782,12 @@ export interface ModifyInstanceAttributeRequest {
3782
3782
  * <code>instanceInitiatedShutdownBehavior</code> attribute.</p>
3783
3783
  */
3784
3784
  Value?: string;
3785
+ /**
3786
+ * <p>Indicates whether an instance is enabled for stop protection.
3787
+ * For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection">Stop Protection</a>.</p>
3788
+ * <p></p>
3789
+ */
3790
+ DisableApiStop?: AttributeBooleanValue;
3785
3791
  }
3786
3792
  export declare namespace ModifyInstanceAttributeRequest {
3787
3793
  /**
@@ -4503,7 +4509,7 @@ export interface ModifyLaunchTemplateRequest {
4503
4509
  /**
4504
4510
  * <p>Unique, case-sensitive identifier you provide to ensure the idempotency of the
4505
4511
  * request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring
4506
- * Idempotency</a>.</p>
4512
+ * idempotency</a>.</p>
4507
4513
  * <p>Constraint: Maximum 128 ASCII characters.</p>
4508
4514
  */
4509
4515
  ClientToken?: string;
@@ -1531,6 +1531,13 @@ export interface RunInstancesRequest {
1531
1531
  * <p>The maintenance and recovery options for the instance.</p>
1532
1532
  */
1533
1533
  MaintenanceOptions?: InstanceMaintenanceOptionsRequest;
1534
+ /**
1535
+ * <p>Indicates whether an instance is enabled for stop protection. For more information,
1536
+ * see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection">Stop
1537
+ * Protection</a>.
1538
+ * </p>
1539
+ */
1540
+ DisableApiStop?: boolean;
1534
1541
  }
1535
1542
  export declare namespace RunInstancesRequest {
1536
1543
  /**
@@ -1620,6 +1620,8 @@ export interface RequestLaunchTemplateData {
1620
1620
  PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptionsRequest;
1621
1621
 
1622
1622
  MaintenanceOptions?: LaunchTemplateInstanceMaintenanceOptionsRequest;
1623
+
1624
+ DisableApiStop?: boolean;
1623
1625
  }
1624
1626
  export declare namespace RequestLaunchTemplateData {
1625
1627
 
@@ -2099,6 +2101,8 @@ export interface ResponseLaunchTemplateData {
2099
2101
  PrivateDnsNameOptions?: LaunchTemplatePrivateDnsNameOptions;
2100
2102
 
2101
2103
  MaintenanceOptions?: LaunchTemplateInstanceMaintenanceOptions;
2104
+
2105
+ DisableApiStop?: boolean;
2102
2106
  }
2103
2107
  export declare namespace ResponseLaunchTemplateData {
2104
2108
 
@@ -1785,7 +1785,7 @@ export declare namespace DescribeImportSnapshotTasksResult {
1785
1785
 
1786
1786
  const filterSensitiveLog: (obj: DescribeImportSnapshotTasksResult) => any;
1787
1787
  }
1788
- export declare type InstanceAttributeName = "blockDeviceMapping" | "disableApiTermination" | "ebsOptimized" | "enaSupport" | "enclaveOptions" | "groupSet" | "instanceInitiatedShutdownBehavior" | "instanceType" | "kernel" | "productCodes" | "ramdisk" | "rootDeviceName" | "sourceDestCheck" | "sriovNetSupport" | "userData";
1788
+ export declare type InstanceAttributeName = "blockDeviceMapping" | "disableApiStop" | "disableApiTermination" | "ebsOptimized" | "enaSupport" | "enclaveOptions" | "groupSet" | "instanceInitiatedShutdownBehavior" | "instanceType" | "kernel" | "productCodes" | "ramdisk" | "rootDeviceName" | "sourceDestCheck" | "sriovNetSupport" | "userData";
1789
1789
  export interface DescribeInstanceAttributeRequest {
1790
1790
 
1791
1791
  Attribute: InstanceAttributeName | string | undefined;
@@ -1876,6 +1876,8 @@ export interface InstanceAttribute {
1876
1876
  SriovNetSupport?: AttributeValue;
1877
1877
 
1878
1878
  UserData?: AttributeValue;
1879
+
1880
+ DisableApiStop?: AttributeBooleanValue;
1879
1881
  }
1880
1882
  export declare namespace InstanceAttribute {
1881
1883
 
@@ -1878,6 +1878,8 @@ export interface ModifyInstanceAttributeRequest {
1878
1878
  UserData?: BlobAttributeValue;
1879
1879
 
1880
1880
  Value?: string;
1881
+
1882
+ DisableApiStop?: AttributeBooleanValue;
1881
1883
  }
1882
1884
  export declare namespace ModifyInstanceAttributeRequest {
1883
1885
 
@@ -673,6 +673,8 @@ export interface RunInstancesRequest {
673
673
  PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest;
674
674
 
675
675
  MaintenanceOptions?: InstanceMaintenanceOptionsRequest;
676
+
677
+ DisableApiStop?: boolean;
676
678
  }
677
679
  export declare namespace RunInstancesRequest {
678
680
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@aws-sdk/client-ec2",
3
3
  "description": "AWS SDK for JavaScript Ec2 Client for Node.js, Browser and React Native",
4
- "version": "3.95.0",
4
+ "version": "3.98.0",
5
5
  "scripts": {
6
6
  "build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
7
7
  "build:cjs": "tsc -p tsconfig.cjs.json",