@aws-sdk/client-s3 3.651.0 → 3.654.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 (209) hide show
  1. package/dist-cjs/index.js +33 -14
  2. package/dist-cjs/runtimeConfig.js +3 -0
  3. package/dist-es/S3Client.js +12 -10
  4. package/dist-es/commands/CreateSessionCommand.js +2 -2
  5. package/dist-es/models/models_0.js +7 -0
  6. package/dist-es/protocols/Aws_restXml.js +8 -0
  7. package/dist-es/runtimeConfig.js +3 -0
  8. package/dist-types/S3Client.d.ts +3 -2
  9. package/dist-types/commands/AbortMultipartUploadCommand.d.ts +11 -0
  10. package/dist-types/commands/CompleteMultipartUploadCommand.d.ts +19 -7
  11. package/dist-types/commands/CopyObjectCommand.d.ts +14 -0
  12. package/dist-types/commands/CreateBucketCommand.d.ts +11 -0
  13. package/dist-types/commands/CreateMultipartUploadCommand.d.ts +32 -1
  14. package/dist-types/commands/CreateSessionCommand.d.ts +55 -6
  15. package/dist-types/commands/DeleteBucketAnalyticsConfigurationCommand.d.ts +11 -0
  16. package/dist-types/commands/DeleteBucketCommand.d.ts +11 -0
  17. package/dist-types/commands/DeleteBucketCorsCommand.d.ts +11 -0
  18. package/dist-types/commands/DeleteBucketEncryptionCommand.d.ts +50 -12
  19. package/dist-types/commands/DeleteBucketIntelligentTieringConfigurationCommand.d.ts +11 -0
  20. package/dist-types/commands/DeleteBucketInventoryConfigurationCommand.d.ts +11 -0
  21. package/dist-types/commands/DeleteBucketLifecycleCommand.d.ts +11 -0
  22. package/dist-types/commands/DeleteBucketMetricsConfigurationCommand.d.ts +11 -0
  23. package/dist-types/commands/DeleteBucketOwnershipControlsCommand.d.ts +11 -0
  24. package/dist-types/commands/DeleteBucketPolicyCommand.d.ts +11 -0
  25. package/dist-types/commands/DeleteBucketReplicationCommand.d.ts +11 -0
  26. package/dist-types/commands/DeleteBucketTaggingCommand.d.ts +11 -0
  27. package/dist-types/commands/DeleteBucketWebsiteCommand.d.ts +11 -0
  28. package/dist-types/commands/DeleteObjectCommand.d.ts +11 -0
  29. package/dist-types/commands/DeleteObjectTaggingCommand.d.ts +11 -0
  30. package/dist-types/commands/DeleteObjectsCommand.d.ts +11 -0
  31. package/dist-types/commands/DeletePublicAccessBlockCommand.d.ts +11 -0
  32. package/dist-types/commands/GetBucketAccelerateConfigurationCommand.d.ts +11 -0
  33. package/dist-types/commands/GetBucketAclCommand.d.ts +11 -0
  34. package/dist-types/commands/GetBucketAnalyticsConfigurationCommand.d.ts +11 -0
  35. package/dist-types/commands/GetBucketCorsCommand.d.ts +11 -0
  36. package/dist-types/commands/GetBucketEncryptionCommand.d.ts +51 -11
  37. package/dist-types/commands/GetBucketIntelligentTieringConfigurationCommand.d.ts +11 -0
  38. package/dist-types/commands/GetBucketInventoryConfigurationCommand.d.ts +11 -0
  39. package/dist-types/commands/GetBucketLifecycleConfigurationCommand.d.ts +11 -0
  40. package/dist-types/commands/GetBucketLocationCommand.d.ts +11 -0
  41. package/dist-types/commands/GetBucketLoggingCommand.d.ts +11 -0
  42. package/dist-types/commands/GetBucketMetricsConfigurationCommand.d.ts +11 -0
  43. package/dist-types/commands/GetBucketNotificationConfigurationCommand.d.ts +11 -0
  44. package/dist-types/commands/GetBucketOwnershipControlsCommand.d.ts +11 -0
  45. package/dist-types/commands/GetBucketPolicyCommand.d.ts +11 -0
  46. package/dist-types/commands/GetBucketPolicyStatusCommand.d.ts +11 -0
  47. package/dist-types/commands/GetBucketReplicationCommand.d.ts +11 -0
  48. package/dist-types/commands/GetBucketRequestPaymentCommand.d.ts +11 -0
  49. package/dist-types/commands/GetBucketTaggingCommand.d.ts +11 -0
  50. package/dist-types/commands/GetBucketVersioningCommand.d.ts +11 -0
  51. package/dist-types/commands/GetBucketWebsiteCommand.d.ts +11 -0
  52. package/dist-types/commands/GetObjectAclCommand.d.ts +11 -0
  53. package/dist-types/commands/GetObjectAttributesCommand.d.ts +19 -2
  54. package/dist-types/commands/GetObjectCommand.d.ts +17 -0
  55. package/dist-types/commands/GetObjectLegalHoldCommand.d.ts +11 -0
  56. package/dist-types/commands/GetObjectLockConfigurationCommand.d.ts +11 -0
  57. package/dist-types/commands/GetObjectRetentionCommand.d.ts +11 -0
  58. package/dist-types/commands/GetObjectTaggingCommand.d.ts +11 -0
  59. package/dist-types/commands/GetObjectTorrentCommand.d.ts +11 -0
  60. package/dist-types/commands/GetPublicAccessBlockCommand.d.ts +11 -0
  61. package/dist-types/commands/HeadBucketCommand.d.ts +11 -0
  62. package/dist-types/commands/HeadObjectCommand.d.ts +16 -1
  63. package/dist-types/commands/ListBucketAnalyticsConfigurationsCommand.d.ts +11 -0
  64. package/dist-types/commands/ListBucketIntelligentTieringConfigurationsCommand.d.ts +11 -0
  65. package/dist-types/commands/ListBucketInventoryConfigurationsCommand.d.ts +11 -0
  66. package/dist-types/commands/ListBucketMetricsConfigurationsCommand.d.ts +11 -0
  67. package/dist-types/commands/ListBucketsCommand.d.ts +11 -0
  68. package/dist-types/commands/ListDirectoryBucketsCommand.d.ts +11 -0
  69. package/dist-types/commands/ListMultipartUploadsCommand.d.ts +11 -0
  70. package/dist-types/commands/ListObjectVersionsCommand.d.ts +11 -0
  71. package/dist-types/commands/ListObjectsCommand.d.ts +11 -0
  72. package/dist-types/commands/ListObjectsV2Command.d.ts +11 -0
  73. package/dist-types/commands/ListPartsCommand.d.ts +11 -0
  74. package/dist-types/commands/PutBucketAccelerateConfigurationCommand.d.ts +11 -0
  75. package/dist-types/commands/PutBucketAclCommand.d.ts +11 -0
  76. package/dist-types/commands/PutBucketAnalyticsConfigurationCommand.d.ts +11 -0
  77. package/dist-types/commands/PutBucketCorsCommand.d.ts +11 -0
  78. package/dist-types/commands/PutBucketEncryptionCommand.d.ts +99 -15
  79. package/dist-types/commands/PutBucketIntelligentTieringConfigurationCommand.d.ts +11 -0
  80. package/dist-types/commands/PutBucketInventoryConfigurationCommand.d.ts +11 -0
  81. package/dist-types/commands/PutBucketLifecycleConfigurationCommand.d.ts +11 -0
  82. package/dist-types/commands/PutBucketLoggingCommand.d.ts +11 -0
  83. package/dist-types/commands/PutBucketMetricsConfigurationCommand.d.ts +11 -0
  84. package/dist-types/commands/PutBucketNotificationConfigurationCommand.d.ts +11 -0
  85. package/dist-types/commands/PutBucketOwnershipControlsCommand.d.ts +11 -0
  86. package/dist-types/commands/PutBucketPolicyCommand.d.ts +11 -0
  87. package/dist-types/commands/PutBucketReplicationCommand.d.ts +11 -0
  88. package/dist-types/commands/PutBucketRequestPaymentCommand.d.ts +11 -0
  89. package/dist-types/commands/PutBucketTaggingCommand.d.ts +11 -0
  90. package/dist-types/commands/PutBucketVersioningCommand.d.ts +11 -0
  91. package/dist-types/commands/PutBucketWebsiteCommand.d.ts +11 -0
  92. package/dist-types/commands/PutObjectAclCommand.d.ts +11 -0
  93. package/dist-types/commands/PutObjectCommand.d.ts +14 -0
  94. package/dist-types/commands/PutObjectLegalHoldCommand.d.ts +11 -0
  95. package/dist-types/commands/PutObjectLockConfigurationCommand.d.ts +11 -0
  96. package/dist-types/commands/PutObjectRetentionCommand.d.ts +11 -0
  97. package/dist-types/commands/PutObjectTaggingCommand.d.ts +11 -0
  98. package/dist-types/commands/PutPublicAccessBlockCommand.d.ts +11 -0
  99. package/dist-types/commands/RestoreObjectCommand.d.ts +11 -0
  100. package/dist-types/commands/SelectObjectContentCommand.d.ts +11 -0
  101. package/dist-types/commands/UploadPartCommand.d.ts +18 -4
  102. package/dist-types/commands/UploadPartCopyCommand.d.ts +22 -1
  103. package/dist-types/commands/WriteGetObjectResponseCommand.d.ts +11 -0
  104. package/dist-types/models/models_0.d.ts +327 -148
  105. package/dist-types/models/models_1.d.ts +73 -79
  106. package/dist-types/runtimeConfig.browser.d.ts +2 -0
  107. package/dist-types/runtimeConfig.d.ts +2 -0
  108. package/dist-types/runtimeConfig.native.d.ts +2 -0
  109. package/dist-types/ts3.4/S3Client.d.ts +6 -0
  110. package/dist-types/ts3.4/commands/AbortMultipartUploadCommand.d.ts +12 -1
  111. package/dist-types/ts3.4/commands/CompleteMultipartUploadCommand.d.ts +12 -1
  112. package/dist-types/ts3.4/commands/CopyObjectCommand.d.ts +12 -1
  113. package/dist-types/ts3.4/commands/CreateBucketCommand.d.ts +12 -1
  114. package/dist-types/ts3.4/commands/CreateMultipartUploadCommand.d.ts +12 -1
  115. package/dist-types/ts3.4/commands/CreateSessionCommand.d.ts +12 -1
  116. package/dist-types/ts3.4/commands/DeleteBucketAnalyticsConfigurationCommand.d.ts +12 -1
  117. package/dist-types/ts3.4/commands/DeleteBucketCommand.d.ts +12 -1
  118. package/dist-types/ts3.4/commands/DeleteBucketCorsCommand.d.ts +12 -1
  119. package/dist-types/ts3.4/commands/DeleteBucketEncryptionCommand.d.ts +12 -1
  120. package/dist-types/ts3.4/commands/DeleteBucketIntelligentTieringConfigurationCommand.d.ts +12 -1
  121. package/dist-types/ts3.4/commands/DeleteBucketInventoryConfigurationCommand.d.ts +12 -1
  122. package/dist-types/ts3.4/commands/DeleteBucketLifecycleCommand.d.ts +12 -1
  123. package/dist-types/ts3.4/commands/DeleteBucketMetricsConfigurationCommand.d.ts +12 -1
  124. package/dist-types/ts3.4/commands/DeleteBucketOwnershipControlsCommand.d.ts +12 -1
  125. package/dist-types/ts3.4/commands/DeleteBucketPolicyCommand.d.ts +12 -1
  126. package/dist-types/ts3.4/commands/DeleteBucketReplicationCommand.d.ts +12 -1
  127. package/dist-types/ts3.4/commands/DeleteBucketTaggingCommand.d.ts +12 -1
  128. package/dist-types/ts3.4/commands/DeleteBucketWebsiteCommand.d.ts +12 -1
  129. package/dist-types/ts3.4/commands/DeleteObjectCommand.d.ts +12 -1
  130. package/dist-types/ts3.4/commands/DeleteObjectTaggingCommand.d.ts +12 -1
  131. package/dist-types/ts3.4/commands/DeleteObjectsCommand.d.ts +12 -1
  132. package/dist-types/ts3.4/commands/DeletePublicAccessBlockCommand.d.ts +12 -1
  133. package/dist-types/ts3.4/commands/GetBucketAccelerateConfigurationCommand.d.ts +12 -1
  134. package/dist-types/ts3.4/commands/GetBucketAclCommand.d.ts +12 -1
  135. package/dist-types/ts3.4/commands/GetBucketAnalyticsConfigurationCommand.d.ts +12 -1
  136. package/dist-types/ts3.4/commands/GetBucketCorsCommand.d.ts +12 -1
  137. package/dist-types/ts3.4/commands/GetBucketEncryptionCommand.d.ts +12 -1
  138. package/dist-types/ts3.4/commands/GetBucketIntelligentTieringConfigurationCommand.d.ts +12 -1
  139. package/dist-types/ts3.4/commands/GetBucketInventoryConfigurationCommand.d.ts +12 -1
  140. package/dist-types/ts3.4/commands/GetBucketLifecycleConfigurationCommand.d.ts +12 -1
  141. package/dist-types/ts3.4/commands/GetBucketLocationCommand.d.ts +12 -1
  142. package/dist-types/ts3.4/commands/GetBucketLoggingCommand.d.ts +12 -1
  143. package/dist-types/ts3.4/commands/GetBucketMetricsConfigurationCommand.d.ts +12 -1
  144. package/dist-types/ts3.4/commands/GetBucketNotificationConfigurationCommand.d.ts +12 -1
  145. package/dist-types/ts3.4/commands/GetBucketOwnershipControlsCommand.d.ts +12 -1
  146. package/dist-types/ts3.4/commands/GetBucketPolicyCommand.d.ts +12 -1
  147. package/dist-types/ts3.4/commands/GetBucketPolicyStatusCommand.d.ts +12 -1
  148. package/dist-types/ts3.4/commands/GetBucketReplicationCommand.d.ts +12 -1
  149. package/dist-types/ts3.4/commands/GetBucketRequestPaymentCommand.d.ts +12 -1
  150. package/dist-types/ts3.4/commands/GetBucketTaggingCommand.d.ts +12 -1
  151. package/dist-types/ts3.4/commands/GetBucketVersioningCommand.d.ts +12 -1
  152. package/dist-types/ts3.4/commands/GetBucketWebsiteCommand.d.ts +12 -1
  153. package/dist-types/ts3.4/commands/GetObjectAclCommand.d.ts +12 -1
  154. package/dist-types/ts3.4/commands/GetObjectAttributesCommand.d.ts +12 -1
  155. package/dist-types/ts3.4/commands/GetObjectCommand.d.ts +12 -1
  156. package/dist-types/ts3.4/commands/GetObjectLegalHoldCommand.d.ts +12 -1
  157. package/dist-types/ts3.4/commands/GetObjectLockConfigurationCommand.d.ts +12 -1
  158. package/dist-types/ts3.4/commands/GetObjectRetentionCommand.d.ts +12 -1
  159. package/dist-types/ts3.4/commands/GetObjectTaggingCommand.d.ts +12 -1
  160. package/dist-types/ts3.4/commands/GetObjectTorrentCommand.d.ts +12 -1
  161. package/dist-types/ts3.4/commands/GetPublicAccessBlockCommand.d.ts +12 -1
  162. package/dist-types/ts3.4/commands/HeadBucketCommand.d.ts +12 -1
  163. package/dist-types/ts3.4/commands/HeadObjectCommand.d.ts +12 -1
  164. package/dist-types/ts3.4/commands/ListBucketAnalyticsConfigurationsCommand.d.ts +12 -1
  165. package/dist-types/ts3.4/commands/ListBucketIntelligentTieringConfigurationsCommand.d.ts +12 -1
  166. package/dist-types/ts3.4/commands/ListBucketInventoryConfigurationsCommand.d.ts +12 -1
  167. package/dist-types/ts3.4/commands/ListBucketMetricsConfigurationsCommand.d.ts +12 -1
  168. package/dist-types/ts3.4/commands/ListBucketsCommand.d.ts +12 -1
  169. package/dist-types/ts3.4/commands/ListDirectoryBucketsCommand.d.ts +12 -1
  170. package/dist-types/ts3.4/commands/ListMultipartUploadsCommand.d.ts +12 -1
  171. package/dist-types/ts3.4/commands/ListObjectVersionsCommand.d.ts +12 -1
  172. package/dist-types/ts3.4/commands/ListObjectsCommand.d.ts +12 -1
  173. package/dist-types/ts3.4/commands/ListObjectsV2Command.d.ts +12 -1
  174. package/dist-types/ts3.4/commands/ListPartsCommand.d.ts +12 -1
  175. package/dist-types/ts3.4/commands/PutBucketAccelerateConfigurationCommand.d.ts +12 -1
  176. package/dist-types/ts3.4/commands/PutBucketAclCommand.d.ts +12 -1
  177. package/dist-types/ts3.4/commands/PutBucketAnalyticsConfigurationCommand.d.ts +12 -1
  178. package/dist-types/ts3.4/commands/PutBucketCorsCommand.d.ts +12 -1
  179. package/dist-types/ts3.4/commands/PutBucketEncryptionCommand.d.ts +12 -1
  180. package/dist-types/ts3.4/commands/PutBucketIntelligentTieringConfigurationCommand.d.ts +12 -1
  181. package/dist-types/ts3.4/commands/PutBucketInventoryConfigurationCommand.d.ts +12 -1
  182. package/dist-types/ts3.4/commands/PutBucketLifecycleConfigurationCommand.d.ts +12 -1
  183. package/dist-types/ts3.4/commands/PutBucketLoggingCommand.d.ts +12 -1
  184. package/dist-types/ts3.4/commands/PutBucketMetricsConfigurationCommand.d.ts +12 -1
  185. package/dist-types/ts3.4/commands/PutBucketNotificationConfigurationCommand.d.ts +12 -1
  186. package/dist-types/ts3.4/commands/PutBucketOwnershipControlsCommand.d.ts +12 -1
  187. package/dist-types/ts3.4/commands/PutBucketPolicyCommand.d.ts +12 -1
  188. package/dist-types/ts3.4/commands/PutBucketReplicationCommand.d.ts +12 -1
  189. package/dist-types/ts3.4/commands/PutBucketRequestPaymentCommand.d.ts +12 -1
  190. package/dist-types/ts3.4/commands/PutBucketTaggingCommand.d.ts +12 -1
  191. package/dist-types/ts3.4/commands/PutBucketVersioningCommand.d.ts +12 -1
  192. package/dist-types/ts3.4/commands/PutBucketWebsiteCommand.d.ts +12 -1
  193. package/dist-types/ts3.4/commands/PutObjectAclCommand.d.ts +12 -1
  194. package/dist-types/ts3.4/commands/PutObjectCommand.d.ts +12 -1
  195. package/dist-types/ts3.4/commands/PutObjectLegalHoldCommand.d.ts +12 -1
  196. package/dist-types/ts3.4/commands/PutObjectLockConfigurationCommand.d.ts +12 -1
  197. package/dist-types/ts3.4/commands/PutObjectRetentionCommand.d.ts +12 -1
  198. package/dist-types/ts3.4/commands/PutObjectTaggingCommand.d.ts +12 -1
  199. package/dist-types/ts3.4/commands/PutPublicAccessBlockCommand.d.ts +12 -1
  200. package/dist-types/ts3.4/commands/RestoreObjectCommand.d.ts +12 -1
  201. package/dist-types/ts3.4/commands/SelectObjectContentCommand.d.ts +12 -1
  202. package/dist-types/ts3.4/commands/UploadPartCommand.d.ts +12 -1
  203. package/dist-types/ts3.4/commands/UploadPartCopyCommand.d.ts +12 -1
  204. package/dist-types/ts3.4/commands/WriteGetObjectResponseCommand.d.ts +12 -1
  205. package/dist-types/ts3.4/models/models_0.d.ts +11 -0
  206. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +12 -0
  207. package/dist-types/ts3.4/runtimeConfig.d.ts +10 -0
  208. package/dist-types/ts3.4/runtimeConfig.native.d.ts +12 -0
  209. package/package.json +52 -52
package/dist-cjs/index.js CHANGED
@@ -48,6 +48,7 @@ __export(src_exports, {
48
48
  CreateMultipartUploadRequestFilterSensitiveLog: () => CreateMultipartUploadRequestFilterSensitiveLog,
49
49
  CreateSessionCommand: () => CreateSessionCommand,
50
50
  CreateSessionOutputFilterSensitiveLog: () => CreateSessionOutputFilterSensitiveLog,
51
+ CreateSessionRequestFilterSensitiveLog: () => CreateSessionRequestFilterSensitiveLog,
51
52
  DataRedundancy: () => DataRedundancy,
52
53
  DeleteBucketAnalyticsConfigurationCommand: () => DeleteBucketAnalyticsConfigurationCommand,
53
54
  DeleteBucketCommand: () => DeleteBucketCommand,
@@ -258,6 +259,7 @@ module.exports = __toCommonJS(src_exports);
258
259
 
259
260
  // src/S3Client.ts
260
261
  var import_middleware_expect_continue = require("@aws-sdk/middleware-expect-continue");
262
+ var import_middleware_flexible_checksums = require("@aws-sdk/middleware-flexible-checksums");
261
263
  var import_middleware_host_header = require("@aws-sdk/middleware-host-header");
262
264
  var import_middleware_logger = require("@aws-sdk/middleware-logger");
263
265
  var import_middleware_recursion_detection = require("@aws-sdk/middleware-recursion-detection");
@@ -872,8 +874,15 @@ var SessionCredentialsFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
872
874
  }), "SessionCredentialsFilterSensitiveLog");
873
875
  var CreateSessionOutputFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
874
876
  ...obj,
877
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: import_smithy_client.SENSITIVE_STRING },
878
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: import_smithy_client.SENSITIVE_STRING },
875
879
  ...obj.Credentials && { Credentials: SessionCredentialsFilterSensitiveLog(obj.Credentials) }
876
880
  }), "CreateSessionOutputFilterSensitiveLog");
881
+ var CreateSessionRequestFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
882
+ ...obj,
883
+ ...obj.SSEKMSKeyId && { SSEKMSKeyId: import_smithy_client.SENSITIVE_STRING },
884
+ ...obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: import_smithy_client.SENSITIVE_STRING }
885
+ }), "CreateSessionRequestFilterSensitiveLog");
877
886
  var ServerSideEncryptionByDefaultFilterSensitiveLog = /* @__PURE__ */ __name((obj) => ({
878
887
  ...obj,
879
888
  ...obj.KMSMasterKeyID && { KMSMasterKeyID: import_smithy_client.SENSITIVE_STRING }
@@ -1307,7 +1316,11 @@ var se_CreateMultipartUploadCommand = /* @__PURE__ */ __name(async (input, conte
1307
1316
  var se_CreateSessionCommand = /* @__PURE__ */ __name(async (input, context) => {
1308
1317
  const b = (0, import_core2.requestBuilder)(input, context);
1309
1318
  const headers = (0, import_smithy_client.map)({}, isSerializableHeaderValue, {
1310
- [_xacsm]: input[_SM]
1319
+ [_xacsm]: input[_SM],
1320
+ [_xasse]: input[_SSE],
1321
+ [_xasseakki]: input[_SSEKMSKI],
1322
+ [_xassec]: input[_SSEKMSEC],
1323
+ [_xassebke]: [() => isSerializableHeaderValue(input[_BKE]), () => input[_BKE].toString()]
1311
1324
  });
1312
1325
  b.bp("/");
1313
1326
  b.p("Bucket", () => input.Bucket, "{Bucket}", false);
@@ -3257,7 +3270,11 @@ var de_CreateSessionCommand = /* @__PURE__ */ __name(async (output, context) =>
3257
3270
  return de_CommandError(output, context);
3258
3271
  }
3259
3272
  const contents = (0, import_smithy_client.map)({
3260
- $metadata: deserializeMetadata(output)
3273
+ $metadata: deserializeMetadata(output),
3274
+ [_SSE]: [, output.headers[_xasse]],
3275
+ [_SSEKMSKI]: [, output.headers[_xasseakki]],
3276
+ [_SSEKMSEC]: [, output.headers[_xassec]],
3277
+ [_BKE]: [() => void 0 !== output.headers[_xassebke], () => (0, import_smithy_client.parseBoolean)(output.headers[_xassebke])]
3261
3278
  });
3262
3279
  const data = (0, import_smithy_client.expectNonNull)((0, import_smithy_client.expectObject)(await (0, import_core.parseXmlBody)(output.body, context)), "body");
3263
3280
  if (data[_C] != null) {
@@ -8403,7 +8420,7 @@ var _CreateSessionCommand = class _CreateSessionCommand extends import_smithy_cl
8403
8420
  (0, import_middleware_endpoint.getEndpointPlugin)(config, Command.getEndpointParameterInstructions()),
8404
8421
  (0, import_middleware_sdk_s3.getThrow200ExceptionsPlugin)(config)
8405
8422
  ];
8406
- }).s("AmazonS3", "CreateSession", {}).n("S3Client", "CreateSessionCommand").f(void 0, CreateSessionOutputFilterSensitiveLog).ser(se_CreateSessionCommand).de(de_CreateSessionCommand).build() {
8423
+ }).s("AmazonS3", "CreateSession", {}).n("S3Client", "CreateSessionCommand").f(CreateSessionRequestFilterSensitiveLog, CreateSessionOutputFilterSensitiveLog).ser(se_CreateSessionCommand).de(de_CreateSessionCommand).build() {
8407
8424
  };
8408
8425
  __name(_CreateSessionCommand, "CreateSessionCommand");
8409
8426
  var CreateSessionCommand = _CreateSessionCommand;
@@ -8480,16 +8497,17 @@ var _S3Client = class _S3Client extends import_smithy_client.Client {
8480
8497
  const _config_0 = (0, import_runtimeConfig.getRuntimeConfig)(configuration || {});
8481
8498
  const _config_1 = resolveClientEndpointParameters(_config_0);
8482
8499
  const _config_2 = (0, import_middleware_user_agent.resolveUserAgentConfig)(_config_1);
8483
- const _config_3 = (0, import_middleware_retry.resolveRetryConfig)(_config_2);
8484
- const _config_4 = (0, import_config_resolver.resolveRegionConfig)(_config_3);
8485
- const _config_5 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_4);
8486
- const _config_6 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_5);
8487
- const _config_7 = (0, import_eventstream_serde_config_resolver.resolveEventStreamSerdeConfig)(_config_6);
8488
- const _config_8 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_7);
8489
- const _config_9 = (0, import_middleware_sdk_s32.resolveS3Config)(_config_8, { session: [() => this, CreateSessionCommand] });
8490
- const _config_10 = resolveRuntimeExtensions(_config_9, (configuration == null ? void 0 : configuration.extensions) || []);
8491
- super(_config_10);
8492
- this.config = _config_10;
8500
+ const _config_3 = (0, import_middleware_flexible_checksums.resolveFlexibleChecksumsConfig)(_config_2);
8501
+ const _config_4 = (0, import_middleware_retry.resolveRetryConfig)(_config_3);
8502
+ const _config_5 = (0, import_config_resolver.resolveRegionConfig)(_config_4);
8503
+ const _config_6 = (0, import_middleware_host_header.resolveHostHeaderConfig)(_config_5);
8504
+ const _config_7 = (0, import_middleware_endpoint.resolveEndpointConfig)(_config_6);
8505
+ const _config_8 = (0, import_eventstream_serde_config_resolver.resolveEventStreamSerdeConfig)(_config_7);
8506
+ const _config_9 = (0, import_httpAuthSchemeProvider.resolveHttpAuthSchemeConfig)(_config_8);
8507
+ const _config_10 = (0, import_middleware_sdk_s32.resolveS3Config)(_config_9, { session: [() => this, CreateSessionCommand] });
8508
+ const _config_11 = resolveRuntimeExtensions(_config_10, (configuration == null ? void 0 : configuration.extensions) || []);
8509
+ super(_config_11);
8510
+ this.config = _config_11;
8493
8511
  this.middlewareStack.use((0, import_middleware_user_agent.getUserAgentPlugin)(this.config));
8494
8512
  this.middlewareStack.use((0, import_middleware_retry.getRetryPlugin)(this.config));
8495
8513
  this.middlewareStack.use((0, import_middleware_content_length.getContentLengthPlugin)(this.config));
@@ -8893,7 +8911,7 @@ __name(_DeleteObjectCommand, "DeleteObjectCommand");
8893
8911
  var DeleteObjectCommand = _DeleteObjectCommand;
8894
8912
 
8895
8913
  // src/commands/DeleteObjectsCommand.ts
8896
- var import_middleware_flexible_checksums = require("@aws-sdk/middleware-flexible-checksums");
8914
+
8897
8915
  var import_middleware_sdk_s39 = require("@aws-sdk/middleware-sdk-s3");
8898
8916
 
8899
8917
 
@@ -10907,6 +10925,7 @@ var waitUntilObjectNotExists = /* @__PURE__ */ __name(async (params, input) => {
10907
10925
  CreateMultipartUploadRequestFilterSensitiveLog,
10908
10926
  SessionCredentialsFilterSensitiveLog,
10909
10927
  CreateSessionOutputFilterSensitiveLog,
10928
+ CreateSessionRequestFilterSensitiveLog,
10910
10929
  ServerSideEncryptionByDefaultFilterSensitiveLog,
10911
10930
  ServerSideEncryptionRuleFilterSensitiveLog,
10912
10931
  ServerSideEncryptionConfigurationFilterSensitiveLog,
@@ -6,6 +6,7 @@ const package_json_1 = tslib_1.__importDefault(require("../package.json"));
6
6
  const core_1 = require("@aws-sdk/core");
7
7
  const credential_provider_node_1 = require("@aws-sdk/credential-provider-node");
8
8
  const middleware_bucket_endpoint_1 = require("@aws-sdk/middleware-bucket-endpoint");
9
+ const middleware_flexible_checksums_1 = require("@aws-sdk/middleware-flexible-checksums");
9
10
  const middleware_sdk_s3_1 = require("@aws-sdk/middleware-sdk-s3");
10
11
  const util_user_agent_node_1 = require("@aws-sdk/util-user-agent-node");
11
12
  const config_resolver_1 = require("@smithy/config-resolver");
@@ -41,7 +42,9 @@ const getRuntimeConfig = (config) => {
41
42
  maxAttempts: config?.maxAttempts ?? (0, node_config_provider_1.loadConfig)(middleware_retry_1.NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
42
43
  md5: config?.md5 ?? hash_node_1.Hash.bind(null, "md5"),
43
44
  region: config?.region ?? (0, node_config_provider_1.loadConfig)(config_resolver_1.NODE_REGION_CONFIG_OPTIONS, config_resolver_1.NODE_REGION_CONFIG_FILE_OPTIONS),
45
+ requestChecksumCalculation: config?.requestChecksumCalculation ?? (0, node_config_provider_1.loadConfig)(middleware_flexible_checksums_1.NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS),
44
46
  requestHandler: node_http_handler_1.NodeHttpHandler.create(config?.requestHandler ?? defaultConfigProvider),
47
+ responseChecksumValidation: config?.responseChecksumValidation ?? (0, node_config_provider_1.loadConfig)(middleware_flexible_checksums_1.NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS),
45
48
  retryMode: config?.retryMode ??
46
49
  (0, node_config_provider_1.loadConfig)({
47
50
  ...middleware_retry_1.NODE_RETRY_MODE_CONFIG_OPTIONS,
@@ -1,4 +1,5 @@
1
1
  import { getAddExpectContinuePlugin } from "@aws-sdk/middleware-expect-continue";
2
+ import { resolveFlexibleChecksumsConfig, } from "@aws-sdk/middleware-flexible-checksums";
2
3
  import { getHostHeaderPlugin, resolveHostHeaderConfig, } from "@aws-sdk/middleware-host-header";
3
4
  import { getLoggerPlugin } from "@aws-sdk/middleware-logger";
4
5
  import { getRecursionDetectionPlugin } from "@aws-sdk/middleware-recursion-detection";
@@ -22,16 +23,17 @@ export class S3Client extends __Client {
22
23
  const _config_0 = __getRuntimeConfig(configuration || {});
23
24
  const _config_1 = resolveClientEndpointParameters(_config_0);
24
25
  const _config_2 = resolveUserAgentConfig(_config_1);
25
- const _config_3 = resolveRetryConfig(_config_2);
26
- const _config_4 = resolveRegionConfig(_config_3);
27
- const _config_5 = resolveHostHeaderConfig(_config_4);
28
- const _config_6 = resolveEndpointConfig(_config_5);
29
- const _config_7 = resolveEventStreamSerdeConfig(_config_6);
30
- const _config_8 = resolveHttpAuthSchemeConfig(_config_7);
31
- const _config_9 = resolveS3Config(_config_8, { session: [() => this, CreateSessionCommand] });
32
- const _config_10 = resolveRuntimeExtensions(_config_9, configuration?.extensions || []);
33
- super(_config_10);
34
- this.config = _config_10;
26
+ const _config_3 = resolveFlexibleChecksumsConfig(_config_2);
27
+ const _config_4 = resolveRetryConfig(_config_3);
28
+ const _config_5 = resolveRegionConfig(_config_4);
29
+ const _config_6 = resolveHostHeaderConfig(_config_5);
30
+ const _config_7 = resolveEndpointConfig(_config_6);
31
+ const _config_8 = resolveEventStreamSerdeConfig(_config_7);
32
+ const _config_9 = resolveHttpAuthSchemeConfig(_config_8);
33
+ const _config_10 = resolveS3Config(_config_9, { session: [() => this, CreateSessionCommand] });
34
+ const _config_11 = resolveRuntimeExtensions(_config_10, configuration?.extensions || []);
35
+ super(_config_11);
36
+ this.config = _config_11;
35
37
  this.middlewareStack.use(getUserAgentPlugin(this.config));
36
38
  this.middlewareStack.use(getRetryPlugin(this.config));
37
39
  this.middlewareStack.use(getContentLengthPlugin(this.config));
@@ -3,7 +3,7 @@ import { getEndpointPlugin } from "@smithy/middleware-endpoint";
3
3
  import { getSerdePlugin } from "@smithy/middleware-serde";
4
4
  import { Command as $Command } from "@smithy/smithy-client";
5
5
  import { commonParams } from "../endpoint/EndpointParameters";
6
- import { CreateSessionOutputFilterSensitiveLog } from "../models/models_0";
6
+ import { CreateSessionOutputFilterSensitiveLog, CreateSessionRequestFilterSensitiveLog, } from "../models/models_0";
7
7
  import { de_CreateSessionCommand, se_CreateSessionCommand } from "../protocols/Aws_restXml";
8
8
  export { $Command };
9
9
  export class CreateSessionCommand extends $Command
@@ -22,7 +22,7 @@ export class CreateSessionCommand extends $Command
22
22
  })
23
23
  .s("AmazonS3", "CreateSession", {})
24
24
  .n("S3Client", "CreateSessionCommand")
25
- .f(void 0, CreateSessionOutputFilterSensitiveLog)
25
+ .f(CreateSessionRequestFilterSensitiveLog, CreateSessionOutputFilterSensitiveLog)
26
26
  .ser(se_CreateSessionCommand)
27
27
  .de(de_CreateSessionCommand)
28
28
  .build() {
@@ -510,8 +510,15 @@ export const SessionCredentialsFilterSensitiveLog = (obj) => ({
510
510
  });
511
511
  export const CreateSessionOutputFilterSensitiveLog = (obj) => ({
512
512
  ...obj,
513
+ ...(obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING }),
514
+ ...(obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING }),
513
515
  ...(obj.Credentials && { Credentials: SessionCredentialsFilterSensitiveLog(obj.Credentials) }),
514
516
  });
517
+ export const CreateSessionRequestFilterSensitiveLog = (obj) => ({
518
+ ...obj,
519
+ ...(obj.SSEKMSKeyId && { SSEKMSKeyId: SENSITIVE_STRING }),
520
+ ...(obj.SSEKMSEncryptionContext && { SSEKMSEncryptionContext: SENSITIVE_STRING }),
521
+ });
515
522
  export const ServerSideEncryptionByDefaultFilterSensitiveLog = (obj) => ({
516
523
  ...obj,
517
524
  ...(obj.KMSMasterKeyID && { KMSMasterKeyID: SENSITIVE_STRING }),
@@ -189,6 +189,10 @@ export const se_CreateSessionCommand = async (input, context) => {
189
189
  const b = rb(input, context);
190
190
  const headers = map({}, isSerializableHeaderValue, {
191
191
  [_xacsm]: input[_SM],
192
+ [_xasse]: input[_SSE],
193
+ [_xasseakki]: input[_SSEKMSKI],
194
+ [_xassec]: input[_SSEKMSEC],
195
+ [_xassebke]: [() => isSerializableHeaderValue(input[_BKE]), () => input[_BKE].toString()],
192
196
  });
193
197
  b.bp("/");
194
198
  b.p("Bucket", () => input.Bucket, "{Bucket}", false);
@@ -2141,6 +2145,10 @@ export const de_CreateSessionCommand = async (output, context) => {
2141
2145
  }
2142
2146
  const contents = map({
2143
2147
  $metadata: deserializeMetadata(output),
2148
+ [_SSE]: [, output.headers[_xasse]],
2149
+ [_SSEKMSKI]: [, output.headers[_xasseakki]],
2150
+ [_SSEKMSEC]: [, output.headers[_xassec]],
2151
+ [_BKE]: [() => void 0 !== output.headers[_xassebke], () => __parseBoolean(output.headers[_xassebke])],
2144
2152
  });
2145
2153
  const data = __expectNonNull(__expectObject(await parseBody(output.body, context)), "body");
2146
2154
  if (data[_C] != null) {
@@ -2,6 +2,7 @@ import packageInfo from "../package.json";
2
2
  import { NODE_SIGV4A_CONFIG_OPTIONS, emitWarningIfUnsupportedVersion as awsCheckVersion } from "@aws-sdk/core";
3
3
  import { defaultProvider as credentialDefaultProvider } from "@aws-sdk/credential-provider-node";
4
4
  import { NODE_USE_ARN_REGION_CONFIG_OPTIONS } from "@aws-sdk/middleware-bucket-endpoint";
5
+ import { NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS, NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS, } from "@aws-sdk/middleware-flexible-checksums";
5
6
  import { NODE_DISABLE_S3_EXPRESS_SESSION_AUTH_OPTIONS } from "@aws-sdk/middleware-sdk-s3";
6
7
  import { defaultUserAgent } from "@aws-sdk/util-user-agent-node";
7
8
  import { NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, } from "@smithy/config-resolver";
@@ -37,7 +38,9 @@ export const getRuntimeConfig = (config) => {
37
38
  maxAttempts: config?.maxAttempts ?? loadNodeConfig(NODE_MAX_ATTEMPT_CONFIG_OPTIONS),
38
39
  md5: config?.md5 ?? Hash.bind(null, "md5"),
39
40
  region: config?.region ?? loadNodeConfig(NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS),
41
+ requestChecksumCalculation: config?.requestChecksumCalculation ?? loadNodeConfig(NODE_REQUEST_CHECKSUM_CALCULATION_CONFIG_OPTIONS),
40
42
  requestHandler: RequestHandler.create(config?.requestHandler ?? defaultConfigProvider),
43
+ responseChecksumValidation: config?.responseChecksumValidation ?? loadNodeConfig(NODE_RESPONSE_CHECKSUM_VALIDATION_CONFIG_OPTIONS),
41
44
  retryMode: config?.retryMode ??
42
45
  loadNodeConfig({
43
46
  ...NODE_RETRY_MODE_CONFIG_OPTIONS,
@@ -1,4 +1,5 @@
1
1
  /// <reference types="node" />
2
+ import { FlexibleChecksumsInputConfig, FlexibleChecksumsResolvedConfig } from "@aws-sdk/middleware-flexible-checksums";
2
3
  import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middleware-host-header";
3
4
  import { S3InputConfig, S3ResolvedConfig } from "@aws-sdk/middleware-sdk-s3";
4
5
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
@@ -271,7 +272,7 @@ export interface ClientDefaults extends Partial<__SmithyConfiguration<__HttpHand
271
272
  /**
272
273
  * @public
273
274
  */
274
- export type S3ClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & UserAgentInputConfig & RetryInputConfig & RegionInputConfig & HostHeaderInputConfig & EndpointInputConfig<EndpointParameters> & EventStreamSerdeInputConfig & HttpAuthSchemeInputConfig & S3InputConfig & ClientInputEndpointParameters;
275
+ export type S3ClientConfigType = Partial<__SmithyConfiguration<__HttpHandlerOptions>> & ClientDefaults & UserAgentInputConfig & FlexibleChecksumsInputConfig & RetryInputConfig & RegionInputConfig & HostHeaderInputConfig & EndpointInputConfig<EndpointParameters> & EventStreamSerdeInputConfig & HttpAuthSchemeInputConfig & S3InputConfig & ClientInputEndpointParameters;
275
276
  /**
276
277
  * @public
277
278
  *
@@ -282,7 +283,7 @@ export interface S3ClientConfig extends S3ClientConfigType {
282
283
  /**
283
284
  * @public
284
285
  */
285
- export type S3ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & UserAgentResolvedConfig & RetryResolvedConfig & RegionResolvedConfig & HostHeaderResolvedConfig & EndpointResolvedConfig<EndpointParameters> & EventStreamSerdeResolvedConfig & HttpAuthSchemeResolvedConfig & S3ResolvedConfig & ClientResolvedEndpointParameters;
286
+ export type S3ClientResolvedConfigType = __SmithyResolvedConfiguration<__HttpHandlerOptions> & Required<ClientDefaults> & RuntimeExtensionsConfig & UserAgentResolvedConfig & FlexibleChecksumsResolvedConfig & RetryResolvedConfig & RegionResolvedConfig & HostHeaderResolvedConfig & EndpointResolvedConfig<EndpointParameters> & EventStreamSerdeResolvedConfig & HttpAuthSchemeResolvedConfig & S3ResolvedConfig & ClientResolvedEndpointParameters;
286
287
  /**
287
288
  * @public
288
289
  *
@@ -161,4 +161,15 @@ declare const AbortMultipartUploadCommand_base: {
161
161
  *
162
162
  */
163
163
  export declare class AbortMultipartUploadCommand extends AbortMultipartUploadCommand_base {
164
+ /** @internal type navigation helper, not in runtime. */
165
+ protected static __types: {
166
+ api: {
167
+ input: AbortMultipartUploadRequest;
168
+ output: AbortMultipartUploadOutput;
169
+ };
170
+ sdk: {
171
+ input: AbortMultipartUploadCommandInput;
172
+ output: AbortMultipartUploadCommandOutput;
173
+ };
174
+ };
164
175
  }
@@ -77,6 +77,11 @@ declare const CompleteMultipartUploadCommand_base: {
77
77
  * information about permissions required to use the multipart upload API, see
78
78
  * <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuAndPermissions.html">Multipart Upload and
79
79
  * Permissions</a> in the <i>Amazon S3 User Guide</i>.</p>
80
+ * <p>If you provide an <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html">additional checksum
81
+ * value</a> in your <code>MultipartUpload</code> requests and the
82
+ * object is encrypted with Key Management Service, you must have permission to use the
83
+ * <code>kms:Decrypt</code> action for the
84
+ * <code>CompleteMultipartUpload</code> request to succeed.</p>
80
85
  * </li>
81
86
  * <li>
82
87
  * <p>
@@ -86,13 +91,9 @@ declare const CompleteMultipartUploadCommand_base: {
86
91
  * Amazon Web Services CLI or SDKs create session and refresh the session token automatically to avoid service interruptions when a session expires. For more information about authorization, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html">
87
92
  * <code>CreateSession</code>
88
93
  * </a>.</p>
89
- * </li>
90
- * <li>
91
- * <p> If you provide an <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_Checksum.html">additional checksum
92
- * value</a> in your <code>MultipartUpload</code> requests and the
93
- * object is encrypted with Key Management Service, you must have permission to use the
94
- * <code>kms:Decrypt</code> action for the
95
- * <code>CompleteMultipartUpload</code> request to succeed.</p>
94
+ * <p>If the object is encrypted with
95
+ * SSE-KMS, you must also have the
96
+ * <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies for the KMS key.</p>
96
97
  * </li>
97
98
  * </ul>
98
99
  * </dd>
@@ -289,4 +290,15 @@ declare const CompleteMultipartUploadCommand_base: {
289
290
  *
290
291
  */
291
292
  export declare class CompleteMultipartUploadCommand extends CompleteMultipartUploadCommand_base {
293
+ /** @internal type navigation helper, not in runtime. */
294
+ protected static __types: {
295
+ api: {
296
+ input: CompleteMultipartUploadRequest;
297
+ output: CompleteMultipartUploadOutput;
298
+ };
299
+ sdk: {
300
+ input: CompleteMultipartUploadCommandInput;
301
+ output: CompleteMultipartUploadCommandOutput;
302
+ };
303
+ };
292
304
  }
@@ -124,6 +124,9 @@ declare const CopyObjectCommand_base: {
124
124
  * key can't be set to <code>ReadOnly</code> on the copy destination bucket. </p>
125
125
  * </li>
126
126
  * </ul>
127
+ * <p>If the object is encrypted with
128
+ * SSE-KMS, you must also have the
129
+ * <code>kms:GenerateDataKey</code> and <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies for the KMS key.</p>
127
130
  * <p>For example policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone</a> in the
128
131
  * <i>Amazon S3 User Guide</i>.</p>
129
132
  * </li>
@@ -310,4 +313,15 @@ declare const CopyObjectCommand_base: {
310
313
  *
311
314
  */
312
315
  export declare class CopyObjectCommand extends CopyObjectCommand_base {
316
+ /** @internal type navigation helper, not in runtime. */
317
+ protected static __types: {
318
+ api: {
319
+ input: CopyObjectRequest;
320
+ output: CopyObjectOutput;
321
+ };
322
+ sdk: {
323
+ input: CopyObjectCommandInput;
324
+ output: CopyObjectCommandOutput;
325
+ };
326
+ };
313
327
  }
@@ -253,4 +253,15 @@ declare const CreateBucketCommand_base: {
253
253
  *
254
254
  */
255
255
  export declare class CreateBucketCommand extends CreateBucketCommand_base {
256
+ /** @internal type navigation helper, not in runtime. */
257
+ protected static __types: {
258
+ api: {
259
+ input: CreateBucketRequest;
260
+ output: CreateBucketOutput;
261
+ };
262
+ sdk: {
263
+ input: CreateBucketCommandInput;
264
+ output: CreateBucketCommandOutput;
265
+ };
266
+ };
256
267
  }
@@ -208,7 +208,27 @@ declare const CreateMultipartUploadCommand_base: {
208
208
  * </li>
209
209
  * <li>
210
210
  * <p>
211
- * <b>Directory buckets</b> -For directory buckets, only server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) is supported.</p>
211
+ * <b>Directory buckets</b> - For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your
212
+ * <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects
213
+ * are automatically encrypted with the desired encryption settings. For more
214
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>
215
+ * <p>In the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>) using the REST API, the encryption request headers must match the encryption settings that are specified in the <code>CreateSession</code> request.
216
+ * You can't override the values of the encryption settings (<code>x-amz-server-side-encryption</code>, <code>x-amz-server-side-encryption-aws-kms-key-id</code>, <code>x-amz-server-side-encryption-context</code>, and <code>x-amz-server-side-encryption-bucket-key-enabled</code>) that are specified in the <code>CreateSession</code> request.
217
+ * You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and
218
+ * Amazon S3 will use the encryption settings values from the <code>CreateSession</code> request to protect new objects in the directory bucket.
219
+ * </p>
220
+ * <note>
221
+ * <p>When you use the CLI or the Amazon Web Services SDKs, for <code>CreateSession</code>, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the
222
+ * <code>CreateSession</code> request. It's not supported to override the encryption settings values in the <code>CreateSession</code> request.
223
+ * So in the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>),
224
+ * the encryption request headers must match the default encryption configuration of the directory bucket.
225
+ *
226
+ * </p>
227
+ * </note>
228
+ * <note>
229
+ * <p>For directory buckets, when you perform a <code>CreateMultipartUpload</code> operation and an <code>UploadPartCopy</code> operation,
230
+ * the request headers you provide in the <code>CreateMultipartUpload</code> request must match the default encryption configuration of the destination bucket. </p>
231
+ * </note>
212
232
  * </li>
213
233
  * </ul>
214
234
  * </dd>
@@ -338,4 +358,15 @@ declare const CreateMultipartUploadCommand_base: {
338
358
  *
339
359
  */
340
360
  export declare class CreateMultipartUploadCommand extends CreateMultipartUploadCommand_base {
361
+ /** @internal type navigation helper, not in runtime. */
362
+ protected static __types: {
363
+ api: {
364
+ input: CreateMultipartUploadRequest;
365
+ output: CreateMultipartUploadOutput;
366
+ };
367
+ sdk: {
368
+ input: CreateMultipartUploadCommandInput;
369
+ output: CreateMultipartUploadCommandOutput;
370
+ };
371
+ };
341
372
  }
@@ -27,8 +27,8 @@ declare const CreateSessionCommand_base: {
27
27
  getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
28
  };
29
29
  /**
30
- * <p>Creates a session that establishes temporary security credentials to support fast authentication and authorization for the Zonal endpoint APIs on directory buckets.
31
- * For more information about Zonal endpoint APIs that include the Availability Zone in the request endpoint, see
30
+ * <p>Creates a session that establishes temporary security credentials to support fast authentication and authorization for the Zonal endpoint API operations on directory buckets.
31
+ * For more information about Zonal endpoint API operations that include the Availability Zone in the request endpoint, see
32
32
  * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-APIs.html">S3 Express One Zone APIs</a> in the <i>Amazon S3 User Guide</i>.
33
33
  * </p>
34
34
  * <p>To make Zonal endpoint API requests on a directory bucket, use the <code>CreateSession</code>
@@ -36,7 +36,7 @@ declare const CreateSessionCommand_base: {
36
36
  * bucket in a bucket policy or an IAM identity-based policy. Then, you use IAM credentials to make the
37
37
  * <code>CreateSession</code> API request on the bucket, which returns temporary security
38
38
  * credentials that include the access key ID, secret access key, session token, and
39
- * expiration. These credentials have associated permissions to access the Zonal endpoint APIs. After
39
+ * expiration. These credentials have associated permissions to access the Zonal endpoint API operations. After
40
40
  * the session is created, you don’t need to use other policies to grant permissions to each
41
41
  * Zonal endpoint API individually. Instead, in your Zonal endpoint API requests, you sign your requests by
42
42
  * applying the temporary security credentials of the session to the request headers and
@@ -60,12 +60,12 @@ declare const CreateSessionCommand_base: {
60
60
  * <li>
61
61
  * <p>
62
62
  * <b>
63
- * <code>CopyObject</code> API operation</b> - Unlike other Zonal endpoint APIs, the <code>CopyObject</code> API operation doesn't use the temporary security credentials returned from the <code>CreateSession</code> API operation for authentication and authorization. For information about authentication and authorization of the <code>CopyObject</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>.</p>
63
+ * <code>CopyObject</code> API operation</b> - Unlike other Zonal endpoint API operations, the <code>CopyObject</code> API operation doesn't use the temporary security credentials returned from the <code>CreateSession</code> API operation for authentication and authorization. For information about authentication and authorization of the <code>CopyObject</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a>.</p>
64
64
  * </li>
65
65
  * <li>
66
66
  * <p>
67
67
  * <b>
68
- * <code>HeadBucket</code> API operation</b> - Unlike other Zonal endpoint APIs, the <code>HeadBucket</code> API operation doesn't use the temporary security credentials returned from the <code>CreateSession</code> API operation for authentication and authorization. For information about authentication and authorization of the <code>HeadBucket</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a>.</p>
68
+ * <code>HeadBucket</code> API operation</b> - Unlike other Zonal endpoint API operations, the <code>HeadBucket</code> API operation doesn't use the temporary security credentials returned from the <code>CreateSession</code> API operation for authentication and authorization. For information about authentication and authorization of the <code>HeadBucket</code> API operation on directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html">HeadBucket</a>.</p>
69
69
  * </li>
70
70
  * </ul>
71
71
  * </note>
@@ -82,7 +82,37 @@ declare const CreateSessionCommand_base: {
82
82
  * </a>. For example policies, see
83
83
  * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-example-bucket-policies.html">Example bucket policies for S3 Express One Zone</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-security-iam-identity-policies.html">Amazon Web Services Identity and Access Management (IAM) identity-based policies for S3 Express One Zone</a> in the
84
84
  * <i>Amazon S3 User Guide</i>. </p>
85
- * <p>To grant cross-account access to Zonal endpoint APIs, the bucket policy should also grant both accounts the <code>s3express:CreateSession</code> permission.</p>
85
+ * <p>To grant cross-account access to Zonal endpoint API operations, the bucket policy should also grant both accounts the <code>s3express:CreateSession</code> permission.</p>
86
+ * <p>If you want to encrypt objects with SSE-KMS, you must also have the <code>kms:GenerateDataKey</code> and the <code>kms:Decrypt</code> permissions in IAM identity-based policies and KMS key policies for the target KMS key.</p>
87
+ * </dd>
88
+ * <dt>Encryption</dt>
89
+ * <dd>
90
+ * <p>For directory buckets, there are only two supported options for server-side encryption: server-side encryption with Amazon S3 managed keys (SSE-S3) (<code>AES256</code>) and server-side encryption with KMS keys (SSE-KMS) (<code>aws:kms</code>). We recommend that the bucket's default encryption uses the desired encryption configuration and you don't override the bucket default encryption in your
91
+ * <code>CreateSession</code> requests or <code>PUT</code> object requests. Then, new objects
92
+ * are automatically encrypted with the desired encryption settings. For more
93
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-serv-side-encryption.html">Protecting data with server-side encryption</a> in the <i>Amazon S3 User Guide</i>. For more information about the encryption overriding behaviors in directory buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-specifying-kms-encryption.html">Specifying server-side encryption with KMS for new object uploads</a>.</p>
94
+ * <p>For <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-differences.html#s3-express-differences-api-operations">Zonal endpoint (object-level) API operations</a> except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>,
95
+ * you authenticate and authorize requests through <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateSession.html">CreateSession</a> for low latency.
96
+ * To encrypt new objects in a directory bucket with SSE-KMS, you must specify SSE-KMS as the directory bucket's default encryption configuration with a KMS key (specifically, a <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk">customer managed key</a>). Then, when a session is created for Zonal endpoint API operations, new objects are automatically encrypted and decrypted with SSE-KMS and S3 Bucket Keys during the session.</p>
97
+ * <note>
98
+ * <p>
99
+ * Only 1 <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#customer-cmk">customer managed key</a> is supported per directory bucket for the lifetime of the bucket. <a href="https://docs.aws.amazon.com/kms/latest/developerguide/concepts.html#aws-managed-cmk">Amazon Web Services managed key</a> (<code>aws/s3</code>) isn't supported.
100
+ * After you specify SSE-KMS as your bucket's default encryption configuration with a customer managed key, you can't change the customer managed key for the bucket's SSE-KMS configuration.
101
+ * </p>
102
+ * </note>
103
+ * <p>In the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>) using the REST API,
104
+ * you can't override the values of the encryption settings (<code>x-amz-server-side-encryption</code>, <code>x-amz-server-side-encryption-aws-kms-key-id</code>, <code>x-amz-server-side-encryption-context</code>, and <code>x-amz-server-side-encryption-bucket-key-enabled</code>) from the <code>CreateSession</code> request.
105
+ * You don't need to explicitly specify these encryption settings values in Zonal endpoint API calls, and
106
+ * Amazon S3 will use the encryption settings values from the <code>CreateSession</code> request to protect new objects in the directory bucket.
107
+ * </p>
108
+ * <note>
109
+ * <p>When you use the CLI or the Amazon Web Services SDKs, for <code>CreateSession</code>, the session token refreshes automatically to avoid service interruptions when a session expires. The CLI or the Amazon Web Services SDKs use the bucket's default encryption configuration for the
110
+ * <code>CreateSession</code> request. It's not supported to override the encryption settings values in the <code>CreateSession</code> request.
111
+ * Also, in the Zonal endpoint API calls (except <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CopyObject.html">CopyObject</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html">UploadPartCopy</a>),
112
+ * it's not supported to override the values of the encryption settings from the <code>CreateSession</code> request.
113
+ *
114
+ * </p>
115
+ * </note>
86
116
  * </dd>
87
117
  * <dt>HTTP Host header syntax</dt>
88
118
  * <dd>
@@ -100,10 +130,18 @@ declare const CreateSessionCommand_base: {
100
130
  * const input = { // CreateSessionRequest
101
131
  * SessionMode: "ReadOnly" || "ReadWrite",
102
132
  * Bucket: "STRING_VALUE", // required
133
+ * ServerSideEncryption: "AES256" || "aws:kms" || "aws:kms:dsse",
134
+ * SSEKMSKeyId: "STRING_VALUE",
135
+ * SSEKMSEncryptionContext: "STRING_VALUE",
136
+ * BucketKeyEnabled: true || false,
103
137
  * };
104
138
  * const command = new CreateSessionCommand(input);
105
139
  * const response = await client.send(command);
106
140
  * // { // CreateSessionOutput
141
+ * // ServerSideEncryption: "AES256" || "aws:kms" || "aws:kms:dsse",
142
+ * // SSEKMSKeyId: "STRING_VALUE",
143
+ * // SSEKMSEncryptionContext: "STRING_VALUE",
144
+ * // BucketKeyEnabled: true || false,
107
145
  * // Credentials: { // SessionCredentials
108
146
  * // AccessKeyId: "STRING_VALUE", // required
109
147
  * // SecretAccessKey: "STRING_VALUE", // required
@@ -129,4 +167,15 @@ declare const CreateSessionCommand_base: {
129
167
  * @public
130
168
  */
131
169
  export declare class CreateSessionCommand extends CreateSessionCommand_base {
170
+ /** @internal type navigation helper, not in runtime. */
171
+ protected static __types: {
172
+ api: {
173
+ input: CreateSessionRequest;
174
+ output: CreateSessionOutput;
175
+ };
176
+ sdk: {
177
+ input: CreateSessionCommandInput;
178
+ output: CreateSessionCommandOutput;
179
+ };
180
+ };
132
181
  }
@@ -87,4 +87,15 @@ declare const DeleteBucketAnalyticsConfigurationCommand_base: {
87
87
  * @public
88
88
  */
89
89
  export declare class DeleteBucketAnalyticsConfigurationCommand extends DeleteBucketAnalyticsConfigurationCommand_base {
90
+ /** @internal type navigation helper, not in runtime. */
91
+ protected static __types: {
92
+ api: {
93
+ input: DeleteBucketAnalyticsConfigurationRequest;
94
+ output: {};
95
+ };
96
+ sdk: {
97
+ input: DeleteBucketAnalyticsConfigurationCommandInput;
98
+ output: DeleteBucketAnalyticsConfigurationCommandOutput;
99
+ };
100
+ };
90
101
  }
@@ -116,4 +116,15 @@ declare const DeleteBucketCommand_base: {
116
116
  *
117
117
  */
118
118
  export declare class DeleteBucketCommand extends DeleteBucketCommand_base {
119
+ /** @internal type navigation helper, not in runtime. */
120
+ protected static __types: {
121
+ api: {
122
+ input: DeleteBucketRequest;
123
+ output: {};
124
+ };
125
+ sdk: {
126
+ input: DeleteBucketCommandInput;
127
+ output: DeleteBucketCommandOutput;
128
+ };
129
+ };
119
130
  }
@@ -90,4 +90,15 @@ declare const DeleteBucketCorsCommand_base: {
90
90
  *
91
91
  */
92
92
  export declare class DeleteBucketCorsCommand extends DeleteBucketCorsCommand_base {
93
+ /** @internal type navigation helper, not in runtime. */
94
+ protected static __types: {
95
+ api: {
96
+ input: DeleteBucketCorsRequest;
97
+ output: {};
98
+ };
99
+ sdk: {
100
+ input: DeleteBucketCorsCommandInput;
101
+ output: DeleteBucketCorsCommandOutput;
102
+ };
103
+ };
93
104
  }