@aws-sdk/client-ec2 3.451.0 → 3.453.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 (99) hide show
  1. package/README.md +24 -0
  2. package/dist-cjs/EC2.js +6 -0
  3. package/dist-cjs/commands/DescribeLockedSnapshotsCommand.js +51 -0
  4. package/dist-cjs/commands/LockSnapshotCommand.js +51 -0
  5. package/dist-cjs/commands/RequestSpotInstancesCommand.js +3 -3
  6. package/dist-cjs/commands/UnlockSnapshotCommand.js +51 -0
  7. package/dist-cjs/commands/index.js +3 -0
  8. package/dist-cjs/models/models_0.js +2 -0
  9. package/dist-cjs/models/models_4.js +8 -2
  10. package/dist-cjs/models/models_6.js +5 -23
  11. package/dist-cjs/models/models_7.js +24 -1
  12. package/dist-cjs/protocols/Aws_ec2.js +305 -20
  13. package/dist-es/EC2.js +6 -0
  14. package/dist-es/commands/DescribeLockedSnapshotsCommand.js +47 -0
  15. package/dist-es/commands/LockSnapshotCommand.js +47 -0
  16. package/dist-es/commands/RequestSpotInstancesCommand.js +1 -1
  17. package/dist-es/commands/UnlockSnapshotCommand.js +47 -0
  18. package/dist-es/commands/index.js +3 -0
  19. package/dist-es/models/models_0.js +2 -0
  20. package/dist-es/models/models_4.js +6 -0
  21. package/dist-es/models/models_6.js +5 -20
  22. package/dist-es/models/models_7.js +20 -0
  23. package/dist-es/protocols/Aws_ec2.js +279 -0
  24. package/dist-types/EC2.d.ts +21 -0
  25. package/dist-types/EC2Client.d.ts +5 -2
  26. package/dist-types/commands/AttachVerifiedAccessTrustProviderCommand.d.ts +3 -2
  27. package/dist-types/commands/CreateCapacityReservationFleetCommand.d.ts +2 -2
  28. package/dist-types/commands/CreateFleetCommand.d.ts +4 -4
  29. package/dist-types/commands/CreateLaunchTemplateCommand.d.ts +1 -1
  30. package/dist-types/commands/CreateLaunchTemplateVersionCommand.d.ts +2 -2
  31. package/dist-types/commands/CreateVerifiedAccessInstanceCommand.d.ts +1 -1
  32. package/dist-types/commands/CreateVerifiedAccessTrustProviderCommand.d.ts +4 -2
  33. package/dist-types/commands/DeleteVerifiedAccessInstanceCommand.d.ts +1 -1
  34. package/dist-types/commands/DeleteVerifiedAccessTrustProviderCommand.d.ts +2 -1
  35. package/dist-types/commands/DescribeCapacityReservationFleetsCommand.d.ts +1 -1
  36. package/dist-types/commands/DescribeFleetsCommand.d.ts +4 -4
  37. package/dist-types/commands/DescribeInstanceTypeOfferingsCommand.d.ts +1 -1
  38. package/dist-types/commands/DescribeInstanceTypesCommand.d.ts +2 -2
  39. package/dist-types/commands/DescribeInstancesCommand.d.ts +1 -1
  40. package/dist-types/commands/DescribeLaunchTemplateVersionsCommand.d.ts +1 -1
  41. package/dist-types/commands/DescribeLockedSnapshotsCommand.d.ts +99 -0
  42. package/dist-types/commands/DescribeReservedInstancesCommand.d.ts +1 -1
  43. package/dist-types/commands/DescribeReservedInstancesModificationsCommand.d.ts +1 -1
  44. package/dist-types/commands/DescribeReservedInstancesOfferingsCommand.d.ts +2 -2
  45. package/dist-types/commands/DescribeSpotFleetRequestsCommand.d.ts +2 -2
  46. package/dist-types/commands/DescribeSpotInstanceRequestsCommand.d.ts +1 -1
  47. package/dist-types/commands/DescribeSpotPriceHistoryCommand.d.ts +2 -2
  48. package/dist-types/commands/DescribeTransitGatewayMulticastDomainsCommand.d.ts +2 -1
  49. package/dist-types/commands/DescribeTransitGatewayPeeringAttachmentsCommand.d.ts +1 -1
  50. package/dist-types/commands/DescribeTransitGatewayPolicyTablesCommand.d.ts +1 -2
  51. package/dist-types/commands/DescribeVerifiedAccessInstancesCommand.d.ts +1 -1
  52. package/dist-types/commands/DescribeVerifiedAccessTrustProvidersCommand.d.ts +2 -1
  53. package/dist-types/commands/DetachVerifiedAccessTrustProviderCommand.d.ts +3 -2
  54. package/dist-types/commands/GetLaunchTemplateDataCommand.d.ts +1 -1
  55. package/dist-types/commands/GetSnapshotBlockPublicAccessStateCommand.d.ts +1 -1
  56. package/dist-types/commands/GetSpotPlacementScoresCommand.d.ts +1 -2
  57. package/dist-types/commands/ImportInstanceCommand.d.ts +1 -1
  58. package/dist-types/commands/LockSnapshotCommand.d.ts +103 -0
  59. package/dist-types/commands/ModifyFleetCommand.d.ts +1 -1
  60. package/dist-types/commands/ModifyReservedInstancesCommand.d.ts +1 -1
  61. package/dist-types/commands/ModifySpotFleetRequestCommand.d.ts +1 -1
  62. package/dist-types/commands/ModifyVerifiedAccessInstanceCommand.d.ts +1 -1
  63. package/dist-types/commands/ModifyVerifiedAccessTrustProviderCommand.d.ts +5 -1
  64. package/dist-types/commands/RequestSpotFleetCommand.d.ts +2 -2
  65. package/dist-types/commands/RequestSpotInstancesCommand.d.ts +3 -3
  66. package/dist-types/commands/ResetAddressAttributeCommand.d.ts +1 -1
  67. package/dist-types/commands/ResetEbsDefaultKmsKeyIdCommand.d.ts +1 -1
  68. package/dist-types/commands/RunInstancesCommand.d.ts +2 -2
  69. package/dist-types/commands/UnlockSnapshotCommand.d.ts +76 -0
  70. package/dist-types/commands/index.d.ts +3 -0
  71. package/dist-types/models/models_0.d.ts +9 -0
  72. package/dist-types/models/models_2.d.ts +7 -0
  73. package/dist-types/models/models_4.d.ts +154 -129
  74. package/dist-types/models/models_5.d.ts +130 -137
  75. package/dist-types/models/models_6.d.ts +326 -306
  76. package/dist-types/models/models_7.d.ts +331 -3
  77. package/dist-types/protocols/Aws_ec2.d.ts +27 -0
  78. package/dist-types/ts3.4/EC2.d.ts +51 -0
  79. package/dist-types/ts3.4/EC2Client.d.ts +18 -0
  80. package/dist-types/ts3.4/commands/DescribeLockedSnapshotsCommand.d.ts +42 -0
  81. package/dist-types/ts3.4/commands/DescribeTransitGatewayMulticastDomainsCommand.d.ts +2 -4
  82. package/dist-types/ts3.4/commands/DescribeTransitGatewayPeeringAttachmentsCommand.d.ts +1 -1
  83. package/dist-types/ts3.4/commands/DescribeTransitGatewayPolicyTablesCommand.d.ts +4 -2
  84. package/dist-types/ts3.4/commands/GetSnapshotBlockPublicAccessStateCommand.d.ts +1 -1
  85. package/dist-types/ts3.4/commands/GetSpotPlacementScoresCommand.d.ts +4 -2
  86. package/dist-types/ts3.4/commands/LockSnapshotCommand.d.ts +35 -0
  87. package/dist-types/ts3.4/commands/RequestSpotInstancesCommand.d.ts +1 -1
  88. package/dist-types/ts3.4/commands/ResetAddressAttributeCommand.d.ts +1 -1
  89. package/dist-types/ts3.4/commands/ResetEbsDefaultKmsKeyIdCommand.d.ts +1 -1
  90. package/dist-types/ts3.4/commands/UnlockSnapshotCommand.d.ts +38 -0
  91. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  92. package/dist-types/ts3.4/models/models_0.d.ts +3 -0
  93. package/dist-types/ts3.4/models/models_2.d.ts +1 -0
  94. package/dist-types/ts3.4/models/models_4.d.ts +29 -24
  95. package/dist-types/ts3.4/models/models_5.d.ts +24 -23
  96. package/dist-types/ts3.4/models/models_6.d.ts +55 -71
  97. package/dist-types/ts3.4/models/models_7.d.ts +75 -1
  98. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +36 -0
  99. package/package.json +1 -1
@@ -2883,6 +2883,16 @@ export const se_DescribeLocalGatewayVirtualInterfacesCommand = async (input, con
2883
2883
  });
2884
2884
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
2885
2885
  };
2886
+ export const se_DescribeLockedSnapshotsCommand = async (input, context) => {
2887
+ const headers = SHARED_HEADERS;
2888
+ let body;
2889
+ body = buildFormUrlencodedString({
2890
+ ...se_DescribeLockedSnapshotsRequest(input, context),
2891
+ Action: "DescribeLockedSnapshots",
2892
+ Version: "2016-11-15",
2893
+ });
2894
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
2895
+ };
2886
2896
  export const se_DescribeManagedPrefixListsCommand = async (input, context) => {
2887
2897
  const headers = SHARED_HEADERS;
2888
2898
  let body;
@@ -4743,6 +4753,16 @@ export const se_ListSnapshotsInRecycleBinCommand = async (input, context) => {
4743
4753
  });
4744
4754
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
4745
4755
  };
4756
+ export const se_LockSnapshotCommand = async (input, context) => {
4757
+ const headers = SHARED_HEADERS;
4758
+ let body;
4759
+ body = buildFormUrlencodedString({
4760
+ ...se_LockSnapshotRequest(input, context),
4761
+ Action: "LockSnapshot",
4762
+ Version: "2016-11-15",
4763
+ });
4764
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
4765
+ };
4746
4766
  export const se_ModifyAddressAttributeCommand = async (input, context) => {
4747
4767
  const headers = SHARED_HEADERS;
4748
4768
  let body;
@@ -6023,6 +6043,16 @@ export const se_UnassignPrivateNatGatewayAddressCommand = async (input, context)
6023
6043
  });
6024
6044
  return buildHttpRpcRequest(context, headers, "/", undefined, body);
6025
6045
  };
6046
+ export const se_UnlockSnapshotCommand = async (input, context) => {
6047
+ const headers = SHARED_HEADERS;
6048
+ let body;
6049
+ body = buildFormUrlencodedString({
6050
+ ...se_UnlockSnapshotRequest(input, context),
6051
+ Action: "UnlockSnapshot",
6052
+ Version: "2016-11-15",
6053
+ });
6054
+ return buildHttpRpcRequest(context, headers, "/", undefined, body);
6055
+ };
6026
6056
  export const se_UnmonitorInstancesCommand = async (input, context) => {
6027
6057
  const headers = SHARED_HEADERS;
6028
6058
  let body;
@@ -13470,6 +13500,32 @@ const de_DescribeLocalGatewayVirtualInterfacesCommandError = async (output, cont
13470
13500
  errorCode,
13471
13501
  });
13472
13502
  };
13503
+ export const de_DescribeLockedSnapshotsCommand = async (output, context) => {
13504
+ if (output.statusCode >= 300) {
13505
+ return de_DescribeLockedSnapshotsCommandError(output, context);
13506
+ }
13507
+ const data = await parseBody(output.body, context);
13508
+ let contents = {};
13509
+ contents = de_DescribeLockedSnapshotsResult(data, context);
13510
+ const response = {
13511
+ $metadata: deserializeMetadata(output),
13512
+ ...contents,
13513
+ };
13514
+ return response;
13515
+ };
13516
+ const de_DescribeLockedSnapshotsCommandError = async (output, context) => {
13517
+ const parsedOutput = {
13518
+ ...output,
13519
+ body: await parseErrorBody(output.body, context),
13520
+ };
13521
+ const errorCode = loadEc2ErrorCode(output, parsedOutput.body);
13522
+ const parsedBody = parsedOutput.body;
13523
+ return throwDefaultError({
13524
+ output,
13525
+ parsedBody: parsedBody.Errors.Error,
13526
+ errorCode,
13527
+ });
13528
+ };
13473
13529
  export const de_DescribeManagedPrefixListsCommand = async (output, context) => {
13474
13530
  if (output.statusCode >= 300) {
13475
13531
  return de_DescribeManagedPrefixListsCommandError(output, context);
@@ -18282,6 +18338,32 @@ const de_ListSnapshotsInRecycleBinCommandError = async (output, context) => {
18282
18338
  errorCode,
18283
18339
  });
18284
18340
  };
18341
+ export const de_LockSnapshotCommand = async (output, context) => {
18342
+ if (output.statusCode >= 300) {
18343
+ return de_LockSnapshotCommandError(output, context);
18344
+ }
18345
+ const data = await parseBody(output.body, context);
18346
+ let contents = {};
18347
+ contents = de_LockSnapshotResult(data, context);
18348
+ const response = {
18349
+ $metadata: deserializeMetadata(output),
18350
+ ...contents,
18351
+ };
18352
+ return response;
18353
+ };
18354
+ const de_LockSnapshotCommandError = async (output, context) => {
18355
+ const parsedOutput = {
18356
+ ...output,
18357
+ body: await parseErrorBody(output.body, context),
18358
+ };
18359
+ const errorCode = loadEc2ErrorCode(output, parsedOutput.body);
18360
+ const parsedBody = parsedOutput.body;
18361
+ return throwDefaultError({
18362
+ output,
18363
+ parsedBody: parsedBody.Errors.Error,
18364
+ errorCode,
18365
+ });
18366
+ };
18285
18367
  export const de_ModifyAddressAttributeCommand = async (output, context) => {
18286
18368
  if (output.statusCode >= 300) {
18287
18369
  return de_ModifyAddressAttributeCommandError(output, context);
@@ -21550,6 +21632,32 @@ const de_UnassignPrivateNatGatewayAddressCommandError = async (output, context)
21550
21632
  errorCode,
21551
21633
  });
21552
21634
  };
21635
+ export const de_UnlockSnapshotCommand = async (output, context) => {
21636
+ if (output.statusCode >= 300) {
21637
+ return de_UnlockSnapshotCommandError(output, context);
21638
+ }
21639
+ const data = await parseBody(output.body, context);
21640
+ let contents = {};
21641
+ contents = de_UnlockSnapshotResult(data, context);
21642
+ const response = {
21643
+ $metadata: deserializeMetadata(output),
21644
+ ...contents,
21645
+ };
21646
+ return response;
21647
+ };
21648
+ const de_UnlockSnapshotCommandError = async (output, context) => {
21649
+ const parsedOutput = {
21650
+ ...output,
21651
+ body: await parseErrorBody(output.body, context),
21652
+ };
21653
+ const errorCode = loadEc2ErrorCode(output, parsedOutput.body);
21654
+ const parsedBody = parsedOutput.body;
21655
+ return throwDefaultError({
21656
+ output,
21657
+ parsedBody: parsedBody.Errors.Error,
21658
+ errorCode,
21659
+ });
21660
+ };
21553
21661
  export const de_UnmonitorInstancesCommand = async (output, context) => {
21554
21662
  if (output.statusCode >= 300) {
21555
21663
  return de_UnmonitorInstancesCommandError(output, context);
@@ -26107,6 +26215,9 @@ const se_CreateVerifiedAccessTrustProviderDeviceOptions = (input, context) => {
26107
26215
  if (input.TenantId != null) {
26108
26216
  entries["TenantId"] = input.TenantId;
26109
26217
  }
26218
+ if (input.PublicSigningKeyUrl != null) {
26219
+ entries["PublicSigningKeyUrl"] = input.PublicSigningKeyUrl;
26220
+ }
26110
26221
  return entries;
26111
26222
  };
26112
26223
  const se_CreateVerifiedAccessTrustProviderOidcOptions = (input, context) => {
@@ -29834,6 +29945,39 @@ const se_DescribeLocalGatewayVirtualInterfacesRequest = (input, context) => {
29834
29945
  }
29835
29946
  return entries;
29836
29947
  };
29948
+ const se_DescribeLockedSnapshotsRequest = (input, context) => {
29949
+ const entries = {};
29950
+ if (input.Filters != null) {
29951
+ const memberEntries = se_FilterList(input.Filters, context);
29952
+ if (input.Filters?.length === 0) {
29953
+ entries.Filter = [];
29954
+ }
29955
+ Object.entries(memberEntries).forEach(([key, value]) => {
29956
+ const loc = `Filter.${key.substring(key.indexOf(".") + 1)}`;
29957
+ entries[loc] = value;
29958
+ });
29959
+ }
29960
+ if (input.MaxResults != null) {
29961
+ entries["MaxResults"] = input.MaxResults;
29962
+ }
29963
+ if (input.NextToken != null) {
29964
+ entries["NextToken"] = input.NextToken;
29965
+ }
29966
+ if (input.SnapshotIds != null) {
29967
+ const memberEntries = se_SnapshotIdStringList(input.SnapshotIds, context);
29968
+ if (input.SnapshotIds?.length === 0) {
29969
+ entries.SnapshotId = [];
29970
+ }
29971
+ Object.entries(memberEntries).forEach(([key, value]) => {
29972
+ const loc = `SnapshotId.${key.substring(key.indexOf(".") + 1)}`;
29973
+ entries[loc] = value;
29974
+ });
29975
+ }
29976
+ if (input.DryRun != null) {
29977
+ entries["DryRun"] = input.DryRun;
29978
+ }
29979
+ return entries;
29980
+ };
29837
29981
  const se_DescribeManagedPrefixListsRequest = (input, context) => {
29838
29982
  const entries = {};
29839
29983
  if (input.DryRun != null) {
@@ -36934,6 +37078,28 @@ const se_LocalStorageTypeSet = (input, context) => {
36934
37078
  }
36935
37079
  return entries;
36936
37080
  };
37081
+ const se_LockSnapshotRequest = (input, context) => {
37082
+ const entries = {};
37083
+ if (input.SnapshotId != null) {
37084
+ entries["SnapshotId"] = input.SnapshotId;
37085
+ }
37086
+ if (input.DryRun != null) {
37087
+ entries["DryRun"] = input.DryRun;
37088
+ }
37089
+ if (input.LockMode != null) {
37090
+ entries["LockMode"] = input.LockMode;
37091
+ }
37092
+ if (input.CoolOffPeriod != null) {
37093
+ entries["CoolOffPeriod"] = input.CoolOffPeriod;
37094
+ }
37095
+ if (input.LockDuration != null) {
37096
+ entries["LockDuration"] = input.LockDuration;
37097
+ }
37098
+ if (input.ExpirationDate != null) {
37099
+ entries["ExpirationDate"] = input.ExpirationDate.toISOString().split(".")[0] + "Z";
37100
+ }
37101
+ return entries;
37102
+ };
36937
37103
  const se_MemoryGiBPerVCpu = (input, context) => {
36938
37104
  const entries = {};
36939
37105
  if (input.Min != null) {
@@ -38587,6 +38753,13 @@ const se_ModifyVerifiedAccessInstanceRequest = (input, context) => {
38587
38753
  }
38588
38754
  return entries;
38589
38755
  };
38756
+ const se_ModifyVerifiedAccessTrustProviderDeviceOptions = (input, context) => {
38757
+ const entries = {};
38758
+ if (input.PublicSigningKeyUrl != null) {
38759
+ entries["PublicSigningKeyUrl"] = input.PublicSigningKeyUrl;
38760
+ }
38761
+ return entries;
38762
+ };
38590
38763
  const se_ModifyVerifiedAccessTrustProviderOidcOptions = (input, context) => {
38591
38764
  const entries = {};
38592
38765
  if (input.Issuer != null) {
@@ -38624,6 +38797,13 @@ const se_ModifyVerifiedAccessTrustProviderRequest = (input, context) => {
38624
38797
  entries[loc] = value;
38625
38798
  });
38626
38799
  }
38800
+ if (input.DeviceOptions != null) {
38801
+ const memberEntries = se_ModifyVerifiedAccessTrustProviderDeviceOptions(input.DeviceOptions, context);
38802
+ Object.entries(memberEntries).forEach(([key, value]) => {
38803
+ const loc = `DeviceOptions.${key}`;
38804
+ entries[loc] = value;
38805
+ });
38806
+ }
38627
38807
  if (input.Description != null) {
38628
38808
  entries["Description"] = input.Description;
38629
38809
  }
@@ -43747,6 +43927,16 @@ const se_UnassignPrivateNatGatewayAddressRequest = (input, context) => {
43747
43927
  }
43748
43928
  return entries;
43749
43929
  };
43930
+ const se_UnlockSnapshotRequest = (input, context) => {
43931
+ const entries = {};
43932
+ if (input.SnapshotId != null) {
43933
+ entries["SnapshotId"] = input.SnapshotId;
43934
+ }
43935
+ if (input.DryRun != null) {
43936
+ entries["DryRun"] = input.DryRun;
43937
+ }
43938
+ return entries;
43939
+ };
43750
43940
  const se_UnmonitorInstancesRequest = (input, context) => {
43751
43941
  const entries = {};
43752
43942
  if (input.InstanceIds != null) {
@@ -49186,6 +49376,19 @@ const de_DescribeLocalGatewayVirtualInterfacesResult = (output, context) => {
49186
49376
  }
49187
49377
  return contents;
49188
49378
  };
49379
+ const de_DescribeLockedSnapshotsResult = (output, context) => {
49380
+ const contents = {};
49381
+ if (output.snapshotSet === "") {
49382
+ contents.Snapshots = [];
49383
+ }
49384
+ else if (output["snapshotSet"] !== undefined && output["snapshotSet"]["item"] !== undefined) {
49385
+ contents.Snapshots = de_LockedSnapshotsInfoList(__getArrayIfSingleItem(output["snapshotSet"]["item"]), context);
49386
+ }
49387
+ if (output["nextToken"] !== undefined) {
49388
+ contents.NextToken = __expectString(output["nextToken"]);
49389
+ }
49390
+ return contents;
49391
+ };
49189
49392
  const de_DescribeManagedPrefixListsResult = (output, context) => {
49190
49393
  const contents = {};
49191
49394
  if (output["nextToken"] !== undefined) {
@@ -50249,6 +50452,9 @@ const de_DeviceOptions = (output, context) => {
50249
50452
  if (output["tenantId"] !== undefined) {
50250
50453
  contents.TenantId = __expectString(output["tenantId"]);
50251
50454
  }
50455
+ if (output["publicSigningKeyUrl"] !== undefined) {
50456
+ contents.PublicSigningKeyUrl = __expectString(output["publicSigningKeyUrl"]);
50457
+ }
50252
50458
  return contents;
50253
50459
  };
50254
50460
  const de_DhcpConfiguration = (output, context) => {
@@ -56932,6 +57138,72 @@ const de_LocalStorageTypeSet = (output, context) => {
56932
57138
  return __expectString(entry);
56933
57139
  });
56934
57140
  };
57141
+ const de_LockedSnapshotsInfo = (output, context) => {
57142
+ const contents = {};
57143
+ if (output["ownerId"] !== undefined) {
57144
+ contents.OwnerId = __expectString(output["ownerId"]);
57145
+ }
57146
+ if (output["snapshotId"] !== undefined) {
57147
+ contents.SnapshotId = __expectString(output["snapshotId"]);
57148
+ }
57149
+ if (output["lockState"] !== undefined) {
57150
+ contents.LockState = __expectString(output["lockState"]);
57151
+ }
57152
+ if (output["lockDuration"] !== undefined) {
57153
+ contents.LockDuration = __strictParseInt32(output["lockDuration"]);
57154
+ }
57155
+ if (output["coolOffPeriod"] !== undefined) {
57156
+ contents.CoolOffPeriod = __strictParseInt32(output["coolOffPeriod"]);
57157
+ }
57158
+ if (output["coolOffPeriodExpiresOn"] !== undefined) {
57159
+ contents.CoolOffPeriodExpiresOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["coolOffPeriodExpiresOn"]));
57160
+ }
57161
+ if (output["lockCreatedOn"] !== undefined) {
57162
+ contents.LockCreatedOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockCreatedOn"]));
57163
+ }
57164
+ if (output["lockDurationStartTime"] !== undefined) {
57165
+ contents.LockDurationStartTime = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockDurationStartTime"]));
57166
+ }
57167
+ if (output["lockExpiresOn"] !== undefined) {
57168
+ contents.LockExpiresOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockExpiresOn"]));
57169
+ }
57170
+ return contents;
57171
+ };
57172
+ const de_LockedSnapshotsInfoList = (output, context) => {
57173
+ return (output || [])
57174
+ .filter((e) => e != null)
57175
+ .map((entry) => {
57176
+ return de_LockedSnapshotsInfo(entry, context);
57177
+ });
57178
+ };
57179
+ const de_LockSnapshotResult = (output, context) => {
57180
+ const contents = {};
57181
+ if (output["snapshotId"] !== undefined) {
57182
+ contents.SnapshotId = __expectString(output["snapshotId"]);
57183
+ }
57184
+ if (output["lockState"] !== undefined) {
57185
+ contents.LockState = __expectString(output["lockState"]);
57186
+ }
57187
+ if (output["lockDuration"] !== undefined) {
57188
+ contents.LockDuration = __strictParseInt32(output["lockDuration"]);
57189
+ }
57190
+ if (output["coolOffPeriod"] !== undefined) {
57191
+ contents.CoolOffPeriod = __strictParseInt32(output["coolOffPeriod"]);
57192
+ }
57193
+ if (output["coolOffPeriodExpiresOn"] !== undefined) {
57194
+ contents.CoolOffPeriodExpiresOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["coolOffPeriodExpiresOn"]));
57195
+ }
57196
+ if (output["lockCreatedOn"] !== undefined) {
57197
+ contents.LockCreatedOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockCreatedOn"]));
57198
+ }
57199
+ if (output["lockExpiresOn"] !== undefined) {
57200
+ contents.LockExpiresOn = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockExpiresOn"]));
57201
+ }
57202
+ if (output["lockDurationStartTime"] !== undefined) {
57203
+ contents.LockDurationStartTime = __expectNonNull(__parseRfc3339DateTimeWithOffset(output["lockDurationStartTime"]));
57204
+ }
57205
+ return contents;
57206
+ };
56935
57207
  const de_MaintenanceDetails = (output, context) => {
56936
57208
  const contents = {};
56937
57209
  if (output["pendingMaintenance"] !== undefined) {
@@ -63589,6 +63861,13 @@ const de_UnassignPrivateNatGatewayAddressResult = (output, context) => {
63589
63861
  }
63590
63862
  return contents;
63591
63863
  };
63864
+ const de_UnlockSnapshotResult = (output, context) => {
63865
+ const contents = {};
63866
+ if (output["snapshotId"] !== undefined) {
63867
+ contents.SnapshotId = __expectString(output["snapshotId"]);
63868
+ }
63869
+ return contents;
63870
+ };
63592
63871
  const de_UnmonitorInstancesResult = (output, context) => {
63593
63872
  const contents = {};
63594
63873
  if (output.instancesSet === "") {
@@ -287,6 +287,7 @@ import { DescribeLocalGatewayRouteTableVpcAssociationsCommandInput, DescribeLoca
287
287
  import { DescribeLocalGatewaysCommandInput, DescribeLocalGatewaysCommandOutput } from "./commands/DescribeLocalGatewaysCommand";
288
288
  import { DescribeLocalGatewayVirtualInterfaceGroupsCommandInput, DescribeLocalGatewayVirtualInterfaceGroupsCommandOutput } from "./commands/DescribeLocalGatewayVirtualInterfaceGroupsCommand";
289
289
  import { DescribeLocalGatewayVirtualInterfacesCommandInput, DescribeLocalGatewayVirtualInterfacesCommandOutput } from "./commands/DescribeLocalGatewayVirtualInterfacesCommand";
290
+ import { DescribeLockedSnapshotsCommandInput, DescribeLockedSnapshotsCommandOutput } from "./commands/DescribeLockedSnapshotsCommand";
290
291
  import { DescribeManagedPrefixListsCommandInput, DescribeManagedPrefixListsCommandOutput } from "./commands/DescribeManagedPrefixListsCommand";
291
292
  import { DescribeMovingAddressesCommandInput, DescribeMovingAddressesCommandOutput } from "./commands/DescribeMovingAddressesCommand";
292
293
  import { DescribeNatGatewaysCommandInput, DescribeNatGatewaysCommandOutput } from "./commands/DescribeNatGatewaysCommand";
@@ -473,6 +474,7 @@ import { ImportSnapshotCommandInput, ImportSnapshotCommandOutput } from "./comma
473
474
  import { ImportVolumeCommandInput, ImportVolumeCommandOutput } from "./commands/ImportVolumeCommand";
474
475
  import { ListImagesInRecycleBinCommandInput, ListImagesInRecycleBinCommandOutput } from "./commands/ListImagesInRecycleBinCommand";
475
476
  import { ListSnapshotsInRecycleBinCommandInput, ListSnapshotsInRecycleBinCommandOutput } from "./commands/ListSnapshotsInRecycleBinCommand";
477
+ import { LockSnapshotCommandInput, LockSnapshotCommandOutput } from "./commands/LockSnapshotCommand";
476
478
  import { ModifyAddressAttributeCommandInput, ModifyAddressAttributeCommandOutput } from "./commands/ModifyAddressAttributeCommand";
477
479
  import { ModifyAvailabilityZoneGroupCommandInput, ModifyAvailabilityZoneGroupCommandOutput } from "./commands/ModifyAvailabilityZoneGroupCommand";
478
480
  import { ModifyCapacityReservationCommandInput, ModifyCapacityReservationCommandOutput } from "./commands/ModifyCapacityReservationCommand";
@@ -601,6 +603,7 @@ import { TerminateInstancesCommandInput, TerminateInstancesCommandOutput } from
601
603
  import { UnassignIpv6AddressesCommandInput, UnassignIpv6AddressesCommandOutput } from "./commands/UnassignIpv6AddressesCommand";
602
604
  import { UnassignPrivateIpAddressesCommandInput, UnassignPrivateIpAddressesCommandOutput } from "./commands/UnassignPrivateIpAddressesCommand";
603
605
  import { UnassignPrivateNatGatewayAddressCommandInput, UnassignPrivateNatGatewayAddressCommandOutput } from "./commands/UnassignPrivateNatGatewayAddressCommand";
606
+ import { UnlockSnapshotCommandInput, UnlockSnapshotCommandOutput } from "./commands/UnlockSnapshotCommand";
604
607
  import { UnmonitorInstancesCommandInput, UnmonitorInstancesCommandOutput } from "./commands/UnmonitorInstancesCommand";
605
608
  import { UpdateSecurityGroupRuleDescriptionsEgressCommandInput, UpdateSecurityGroupRuleDescriptionsEgressCommandOutput } from "./commands/UpdateSecurityGroupRuleDescriptionsEgressCommand";
606
609
  import { UpdateSecurityGroupRuleDescriptionsIngressCommandInput, UpdateSecurityGroupRuleDescriptionsIngressCommandOutput } from "./commands/UpdateSecurityGroupRuleDescriptionsIngressCommand";
@@ -2335,6 +2338,12 @@ export interface EC2 {
2335
2338
  describeLocalGatewayVirtualInterfaces(args: DescribeLocalGatewayVirtualInterfacesCommandInput, options?: __HttpHandlerOptions): Promise<DescribeLocalGatewayVirtualInterfacesCommandOutput>;
2336
2339
  describeLocalGatewayVirtualInterfaces(args: DescribeLocalGatewayVirtualInterfacesCommandInput, cb: (err: any, data?: DescribeLocalGatewayVirtualInterfacesCommandOutput) => void): void;
2337
2340
  describeLocalGatewayVirtualInterfaces(args: DescribeLocalGatewayVirtualInterfacesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DescribeLocalGatewayVirtualInterfacesCommandOutput) => void): void;
2341
+ /**
2342
+ * @see {@link DescribeLockedSnapshotsCommand}
2343
+ */
2344
+ describeLockedSnapshots(args: DescribeLockedSnapshotsCommandInput, options?: __HttpHandlerOptions): Promise<DescribeLockedSnapshotsCommandOutput>;
2345
+ describeLockedSnapshots(args: DescribeLockedSnapshotsCommandInput, cb: (err: any, data?: DescribeLockedSnapshotsCommandOutput) => void): void;
2346
+ describeLockedSnapshots(args: DescribeLockedSnapshotsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DescribeLockedSnapshotsCommandOutput) => void): void;
2338
2347
  /**
2339
2348
  * @see {@link DescribeManagedPrefixListsCommand}
2340
2349
  */
@@ -3451,6 +3460,12 @@ export interface EC2 {
3451
3460
  listSnapshotsInRecycleBin(args: ListSnapshotsInRecycleBinCommandInput, options?: __HttpHandlerOptions): Promise<ListSnapshotsInRecycleBinCommandOutput>;
3452
3461
  listSnapshotsInRecycleBin(args: ListSnapshotsInRecycleBinCommandInput, cb: (err: any, data?: ListSnapshotsInRecycleBinCommandOutput) => void): void;
3453
3462
  listSnapshotsInRecycleBin(args: ListSnapshotsInRecycleBinCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListSnapshotsInRecycleBinCommandOutput) => void): void;
3463
+ /**
3464
+ * @see {@link LockSnapshotCommand}
3465
+ */
3466
+ lockSnapshot(args: LockSnapshotCommandInput, options?: __HttpHandlerOptions): Promise<LockSnapshotCommandOutput>;
3467
+ lockSnapshot(args: LockSnapshotCommandInput, cb: (err: any, data?: LockSnapshotCommandOutput) => void): void;
3468
+ lockSnapshot(args: LockSnapshotCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: LockSnapshotCommandOutput) => void): void;
3454
3469
  /**
3455
3470
  * @see {@link ModifyAddressAttributeCommand}
3456
3471
  */
@@ -4219,6 +4234,12 @@ export interface EC2 {
4219
4234
  unassignPrivateNatGatewayAddress(args: UnassignPrivateNatGatewayAddressCommandInput, options?: __HttpHandlerOptions): Promise<UnassignPrivateNatGatewayAddressCommandOutput>;
4220
4235
  unassignPrivateNatGatewayAddress(args: UnassignPrivateNatGatewayAddressCommandInput, cb: (err: any, data?: UnassignPrivateNatGatewayAddressCommandOutput) => void): void;
4221
4236
  unassignPrivateNatGatewayAddress(args: UnassignPrivateNatGatewayAddressCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UnassignPrivateNatGatewayAddressCommandOutput) => void): void;
4237
+ /**
4238
+ * @see {@link UnlockSnapshotCommand}
4239
+ */
4240
+ unlockSnapshot(args: UnlockSnapshotCommandInput, options?: __HttpHandlerOptions): Promise<UnlockSnapshotCommandOutput>;
4241
+ unlockSnapshot(args: UnlockSnapshotCommandInput, cb: (err: any, data?: UnlockSnapshotCommandOutput) => void): void;
4242
+ unlockSnapshot(args: UnlockSnapshotCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: UnlockSnapshotCommandOutput) => void): void;
4222
4243
  /**
4223
4244
  * @see {@link UnmonitorInstancesCommand}
4224
4245
  */