@aws-sdk/client-s3 3.43.0 → 3.44.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 (27) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist-cjs/models/models_0.js +10 -10
  3. package/dist-cjs/models/models_1.js +7 -1
  4. package/dist-cjs/protocols/Aws_restXml.js +20 -0
  5. package/dist-es/models/models_0.js +4 -4
  6. package/dist-es/models/models_1.js +4 -0
  7. package/dist-es/protocols/Aws_restXml.js +21 -3
  8. package/dist-types/S3.d.ts +113 -34
  9. package/dist-types/commands/CopyObjectCommand.d.ts +11 -1
  10. package/dist-types/commands/CreateBucketCommand.d.ts +39 -11
  11. package/dist-types/commands/DeleteBucketIntelligentTieringConfigurationCommand.d.ts +2 -2
  12. package/dist-types/commands/GetBucketAclCommand.d.ts +7 -0
  13. package/dist-types/commands/GetBucketIntelligentTieringConfigurationCommand.d.ts +2 -2
  14. package/dist-types/commands/GetBucketOwnershipControlsCommand.d.ts +3 -3
  15. package/dist-types/commands/GetObjectAclCommand.d.ts +7 -1
  16. package/dist-types/commands/ListBucketIntelligentTieringConfigurationsCommand.d.ts +2 -2
  17. package/dist-types/commands/PutBucketAclCommand.d.ts +7 -1
  18. package/dist-types/commands/PutBucketIntelligentTieringConfigurationCommand.d.ts +2 -2
  19. package/dist-types/commands/PutBucketLoggingCommand.d.ts +8 -3
  20. package/dist-types/commands/PutBucketOwnershipControlsCommand.d.ts +2 -2
  21. package/dist-types/commands/PutObjectAclCommand.d.ts +7 -2
  22. package/dist-types/commands/PutObjectCommand.d.ts +14 -2
  23. package/dist-types/models/models_0.d.ts +53 -24
  24. package/dist-types/models/models_1.d.ts +16 -1
  25. package/dist-types/ts3.4/models/models_0.d.ts +18 -14
  26. package/dist-types/ts3.4/models/models_1.d.ts +10 -1
  27. package/package.json +1 -1
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.44.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.43.0...v3.44.0) (2021-12-02)
7
+
8
+
9
+ ### Features
10
+
11
+ * **clients:** update clients as of 2021/11/30 ([#3077](https://github.com/aws/aws-sdk-js-v3/issues/3077)) ([2bdba30](https://github.com/aws/aws-sdk-js-v3/commit/2bdba30963e550728ba2903d57daa1e666a29d71))
12
+
13
+
14
+
15
+
16
+
6
17
  # [3.43.0](https://github.com/aws/aws-sdk-js-v3/compare/v3.42.0...v3.43.0) (2021-11-29)
7
18
 
8
19
 
@@ -2,10 +2,10 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.GetBucketAccelerateConfigurationOutput = exports.DeletePublicAccessBlockRequest = exports.DeleteObjectTaggingRequest = exports.DeleteObjectTaggingOutput = exports.DeleteObjectsRequest = exports.Delete = exports.ObjectIdentifier = exports.DeleteObjectsOutput = exports._Error = exports.DeletedObject = exports.DeleteObjectRequest = exports.DeleteObjectOutput = exports.DeleteBucketWebsiteRequest = exports.DeleteBucketTaggingRequest = exports.DeleteBucketReplicationRequest = exports.DeleteBucketPolicyRequest = exports.DeleteBucketOwnershipControlsRequest = exports.DeleteBucketMetricsConfigurationRequest = exports.DeleteBucketLifecycleRequest = exports.DeleteBucketInventoryConfigurationRequest = exports.DeleteBucketIntelligentTieringConfigurationRequest = exports.DeleteBucketEncryptionRequest = exports.DeleteBucketCorsRequest = exports.DeleteBucketAnalyticsConfigurationRequest = exports.DeleteBucketRequest = exports.CreateMultipartUploadRequest = exports.CreateMultipartUploadOutput = exports.CreateBucketRequest = exports.CreateBucketConfiguration = exports.CreateBucketOutput = exports.BucketAlreadyOwnedByYou = exports.BucketAlreadyExists = exports.ObjectNotInActiveTierError = exports.CopyObjectRequest = exports.CopyObjectOutput = exports.CopyObjectResult = exports.CompleteMultipartUploadRequest = exports.CompletedMultipartUpload = exports.CompletedPart = exports.CompleteMultipartUploadOutput = exports.AccessControlTranslation = exports.AccessControlPolicy = exports.Owner = exports.Grant = exports.Grantee = exports.AccelerateConfiguration = exports.NoSuchUpload = exports.AbortMultipartUploadRequest = exports.AbortMultipartUploadOutput = exports.AbortIncompleteMultipartUpload = void 0;
4
4
  exports.LoggingEnabled = exports.TargetGrant = exports.GetBucketLocationRequest = exports.GetBucketLocationOutput = exports.GetBucketLifecycleConfigurationRequest = exports.GetBucketLifecycleConfigurationOutput = exports.LifecycleRule = exports.Transition = exports.NoncurrentVersionTransition = exports.NoncurrentVersionExpiration = exports.LifecycleRuleFilter = exports.LifecycleRuleAndOperator = exports.LifecycleExpiration = exports.GetBucketInventoryConfigurationRequest = exports.GetBucketInventoryConfigurationOutput = exports.InventoryConfiguration = exports.InventorySchedule = exports.InventoryFilter = exports.InventoryDestination = exports.InventoryS3BucketDestination = exports.InventoryEncryption = exports.SSES3 = exports.SSEKMS = exports.GetBucketIntelligentTieringConfigurationRequest = exports.GetBucketIntelligentTieringConfigurationOutput = exports.IntelligentTieringConfiguration = exports.Tiering = exports.IntelligentTieringFilter = exports.IntelligentTieringAndOperator = exports.GetBucketEncryptionRequest = exports.GetBucketEncryptionOutput = exports.ServerSideEncryptionConfiguration = exports.ServerSideEncryptionRule = exports.ServerSideEncryptionByDefault = exports.GetBucketCorsRequest = exports.GetBucketCorsOutput = exports.CORSRule = exports.GetBucketAnalyticsConfigurationRequest = exports.GetBucketAnalyticsConfigurationOutput = exports.AnalyticsConfiguration = exports.StorageClassAnalysis = exports.StorageClassAnalysisDataExport = exports.AnalyticsExportDestination = exports.AnalyticsS3BucketDestination = exports.AnalyticsFilter = exports.AnalyticsAndOperator = exports.Tag = exports.GetBucketAclRequest = exports.GetBucketAclOutput = exports.GetBucketAccelerateConfigurationRequest = void 0;
5
- exports.Condition = exports.RedirectAllRequestsTo = exports.IndexDocument = exports.ErrorDocument = exports.GetBucketVersioningRequest = exports.GetBucketVersioningOutput = exports.GetBucketTaggingRequest = exports.GetBucketTaggingOutput = exports.GetBucketRequestPaymentRequest = exports.GetBucketRequestPaymentOutput = exports.GetBucketReplicationRequest = exports.GetBucketReplicationOutput = exports.ReplicationConfiguration = exports.ReplicationRule = exports.SourceSelectionCriteria = exports.SseKmsEncryptedObjects = exports.ReplicaModifications = exports.ReplicationRuleFilter = exports.ReplicationRuleAndOperator = exports.ExistingObjectReplication = exports.Destination = exports.ReplicationTime = exports.Metrics = exports.ReplicationTimeValue = exports.EncryptionConfiguration = exports.DeleteMarkerReplication = exports.GetBucketPolicyStatusRequest = exports.GetBucketPolicyStatusOutput = exports.PolicyStatus = exports.GetBucketPolicyRequest = exports.GetBucketPolicyOutput = exports.GetBucketOwnershipControlsRequest = exports.GetBucketOwnershipControlsOutput = exports.OwnershipControls = exports.OwnershipControlsRule = exports.NotificationConfiguration = exports.TopicConfiguration = exports.QueueConfiguration = exports.LambdaFunctionConfiguration = exports.NotificationConfigurationFilter = exports.S3KeyFilter = exports.FilterRule = exports.GetBucketNotificationConfigurationRequest = exports.GetBucketMetricsConfigurationRequest = exports.GetBucketMetricsConfigurationOutput = exports.MetricsConfiguration = exports.MetricsFilter = exports.MetricsAndOperator = exports.GetBucketLoggingRequest = exports.GetBucketLoggingOutput = void 0;
6
- exports.ListObjectsRequest = exports.ListObjectsOutput = exports._Object = exports.ListMultipartUploadsRequest = exports.ListMultipartUploadsOutput = exports.MultipartUpload = exports.Initiator = exports.CommonPrefix = exports.ListBucketsOutput = exports.Bucket = exports.ListBucketMetricsConfigurationsRequest = exports.ListBucketMetricsConfigurationsOutput = exports.ListBucketInventoryConfigurationsRequest = exports.ListBucketInventoryConfigurationsOutput = exports.ListBucketIntelligentTieringConfigurationsRequest = exports.ListBucketIntelligentTieringConfigurationsOutput = exports.ListBucketAnalyticsConfigurationsRequest = exports.ListBucketAnalyticsConfigurationsOutput = exports.HeadObjectRequest = exports.HeadObjectOutput = exports.NotFound = exports.HeadBucketRequest = exports.GetPublicAccessBlockRequest = exports.GetPublicAccessBlockOutput = exports.PublicAccessBlockConfiguration = exports.GetObjectTorrentRequest = exports.GetObjectTorrentOutput = exports.GetObjectTaggingRequest = exports.GetObjectTaggingOutput = exports.GetObjectRetentionRequest = exports.GetObjectRetentionOutput = exports.ObjectLockRetention = exports.GetObjectLockConfigurationRequest = exports.GetObjectLockConfigurationOutput = exports.ObjectLockConfiguration = exports.ObjectLockRule = exports.DefaultRetention = exports.GetObjectLegalHoldRequest = exports.GetObjectLegalHoldOutput = exports.ObjectLockLegalHold = exports.GetObjectAclRequest = exports.GetObjectAclOutput = exports.NoSuchKey = exports.InvalidObjectState = exports.GetObjectRequest = exports.GetObjectOutput = exports.GetBucketWebsiteRequest = exports.GetBucketWebsiteOutput = exports.RoutingRule = exports.Redirect = void 0;
7
- exports.RestoreObjectOutput = exports.ObjectAlreadyInActiveTierError = exports.PutPublicAccessBlockRequest = exports.PutObjectTaggingRequest = exports.PutObjectTaggingOutput = exports.PutObjectRetentionRequest = exports.PutObjectRetentionOutput = exports.PutObjectLockConfigurationRequest = exports.PutObjectLockConfigurationOutput = exports.PutObjectLegalHoldRequest = exports.PutObjectLegalHoldOutput = exports.PutObjectAclRequest = exports.PutObjectAclOutput = exports.PutObjectRequest = exports.PutObjectOutput = exports.PutBucketWebsiteRequest = exports.WebsiteConfiguration = exports.PutBucketVersioningRequest = exports.VersioningConfiguration = exports.PutBucketTaggingRequest = exports.Tagging = exports.PutBucketRequestPaymentRequest = exports.RequestPaymentConfiguration = exports.PutBucketReplicationRequest = exports.PutBucketPolicyRequest = exports.PutBucketOwnershipControlsRequest = exports.PutBucketNotificationConfigurationRequest = exports.PutBucketMetricsConfigurationRequest = exports.PutBucketLoggingRequest = exports.BucketLoggingStatus = exports.PutBucketLifecycleConfigurationRequest = exports.BucketLifecycleConfiguration = exports.PutBucketInventoryConfigurationRequest = exports.PutBucketIntelligentTieringConfigurationRequest = exports.PutBucketEncryptionRequest = exports.PutBucketCorsRequest = exports.CORSConfiguration = exports.PutBucketAnalyticsConfigurationRequest = exports.PutBucketAclRequest = exports.PutBucketAccelerateConfigurationRequest = exports.ListPartsRequest = exports.ListPartsOutput = exports.Part = exports.ListObjectVersionsRequest = exports.ListObjectVersionsOutput = exports.ObjectVersion = exports.DeleteMarkerEntry = exports.ListObjectsV2Request = exports.ListObjectsV2Output = exports.NoSuchBucket = void 0;
8
- exports.GlacierJobParameters = void 0;
5
+ exports.RedirectAllRequestsTo = exports.IndexDocument = exports.ErrorDocument = exports.GetBucketVersioningRequest = exports.GetBucketVersioningOutput = exports.GetBucketTaggingRequest = exports.GetBucketTaggingOutput = exports.GetBucketRequestPaymentRequest = exports.GetBucketRequestPaymentOutput = exports.GetBucketReplicationRequest = exports.GetBucketReplicationOutput = exports.ReplicationConfiguration = exports.ReplicationRule = exports.SourceSelectionCriteria = exports.SseKmsEncryptedObjects = exports.ReplicaModifications = exports.ReplicationRuleFilter = exports.ReplicationRuleAndOperator = exports.ExistingObjectReplication = exports.Destination = exports.ReplicationTime = exports.Metrics = exports.ReplicationTimeValue = exports.EncryptionConfiguration = exports.DeleteMarkerReplication = exports.GetBucketPolicyStatusRequest = exports.GetBucketPolicyStatusOutput = exports.PolicyStatus = exports.GetBucketPolicyRequest = exports.GetBucketPolicyOutput = exports.GetBucketOwnershipControlsRequest = exports.GetBucketOwnershipControlsOutput = exports.OwnershipControls = exports.OwnershipControlsRule = exports.NotificationConfiguration = exports.TopicConfiguration = exports.QueueConfiguration = exports.LambdaFunctionConfiguration = exports.NotificationConfigurationFilter = exports.S3KeyFilter = exports.FilterRule = exports.EventBridgeConfiguration = exports.GetBucketNotificationConfigurationRequest = exports.GetBucketMetricsConfigurationRequest = exports.GetBucketMetricsConfigurationOutput = exports.MetricsConfiguration = exports.MetricsFilter = exports.MetricsAndOperator = exports.GetBucketLoggingRequest = exports.GetBucketLoggingOutput = void 0;
6
+ exports.ListObjectsOutput = exports._Object = exports.ListMultipartUploadsRequest = exports.ListMultipartUploadsOutput = exports.MultipartUpload = exports.Initiator = exports.CommonPrefix = exports.ListBucketsOutput = exports.Bucket = exports.ListBucketMetricsConfigurationsRequest = exports.ListBucketMetricsConfigurationsOutput = exports.ListBucketInventoryConfigurationsRequest = exports.ListBucketInventoryConfigurationsOutput = exports.ListBucketIntelligentTieringConfigurationsRequest = exports.ListBucketIntelligentTieringConfigurationsOutput = exports.ListBucketAnalyticsConfigurationsRequest = exports.ListBucketAnalyticsConfigurationsOutput = exports.HeadObjectRequest = exports.HeadObjectOutput = exports.NotFound = exports.HeadBucketRequest = exports.GetPublicAccessBlockRequest = exports.GetPublicAccessBlockOutput = exports.PublicAccessBlockConfiguration = exports.GetObjectTorrentRequest = exports.GetObjectTorrentOutput = exports.GetObjectTaggingRequest = exports.GetObjectTaggingOutput = exports.GetObjectRetentionRequest = exports.GetObjectRetentionOutput = exports.ObjectLockRetention = exports.GetObjectLockConfigurationRequest = exports.GetObjectLockConfigurationOutput = exports.ObjectLockConfiguration = exports.ObjectLockRule = exports.DefaultRetention = exports.GetObjectLegalHoldRequest = exports.GetObjectLegalHoldOutput = exports.ObjectLockLegalHold = exports.GetObjectAclRequest = exports.GetObjectAclOutput = exports.NoSuchKey = exports.InvalidObjectState = exports.GetObjectRequest = exports.GetObjectOutput = exports.GetBucketWebsiteRequest = exports.GetBucketWebsiteOutput = exports.RoutingRule = exports.Redirect = exports.Condition = void 0;
7
+ exports.ObjectAlreadyInActiveTierError = exports.PutPublicAccessBlockRequest = exports.PutObjectTaggingRequest = exports.PutObjectTaggingOutput = exports.PutObjectRetentionRequest = exports.PutObjectRetentionOutput = exports.PutObjectLockConfigurationRequest = exports.PutObjectLockConfigurationOutput = exports.PutObjectLegalHoldRequest = exports.PutObjectLegalHoldOutput = exports.PutObjectAclRequest = exports.PutObjectAclOutput = exports.PutObjectRequest = exports.PutObjectOutput = exports.PutBucketWebsiteRequest = exports.WebsiteConfiguration = exports.PutBucketVersioningRequest = exports.VersioningConfiguration = exports.PutBucketTaggingRequest = exports.Tagging = exports.PutBucketRequestPaymentRequest = exports.RequestPaymentConfiguration = exports.PutBucketReplicationRequest = exports.PutBucketPolicyRequest = exports.PutBucketOwnershipControlsRequest = exports.PutBucketNotificationConfigurationRequest = exports.PutBucketMetricsConfigurationRequest = exports.PutBucketLoggingRequest = exports.BucketLoggingStatus = exports.PutBucketLifecycleConfigurationRequest = exports.BucketLifecycleConfiguration = exports.PutBucketInventoryConfigurationRequest = exports.PutBucketIntelligentTieringConfigurationRequest = exports.PutBucketEncryptionRequest = exports.PutBucketCorsRequest = exports.CORSConfiguration = exports.PutBucketAnalyticsConfigurationRequest = exports.PutBucketAclRequest = exports.PutBucketAccelerateConfigurationRequest = exports.ListPartsRequest = exports.ListPartsOutput = exports.Part = exports.ListObjectVersionsRequest = exports.ListObjectVersionsOutput = exports.ObjectVersion = exports.DeleteMarkerEntry = exports.ListObjectsV2Request = exports.ListObjectsV2Output = exports.NoSuchBucket = exports.ListObjectsRequest = void 0;
8
+ exports.RestoreObjectOutput = void 0;
9
9
  const smithy_client_1 = require("@aws-sdk/smithy-client");
10
10
  var AbortIncompleteMultipartUpload;
11
11
  (function (AbortIncompleteMultipartUpload) {
@@ -755,6 +755,12 @@ var GetBucketNotificationConfigurationRequest;
755
755
  ...obj,
756
756
  });
757
757
  })(GetBucketNotificationConfigurationRequest = exports.GetBucketNotificationConfigurationRequest || (exports.GetBucketNotificationConfigurationRequest = {}));
758
+ var EventBridgeConfiguration;
759
+ (function (EventBridgeConfiguration) {
760
+ EventBridgeConfiguration.filterSensitiveLog = (obj) => ({
761
+ ...obj,
762
+ });
763
+ })(EventBridgeConfiguration = exports.EventBridgeConfiguration || (exports.EventBridgeConfiguration = {}));
758
764
  var FilterRule;
759
765
  (function (FilterRule) {
760
766
  FilterRule.filterSensitiveLog = (obj) => ({
@@ -1665,9 +1671,3 @@ var RestoreObjectOutput;
1665
1671
  ...obj,
1666
1672
  });
1667
1673
  })(RestoreObjectOutput = exports.RestoreObjectOutput || (exports.RestoreObjectOutput = {}));
1668
- var GlacierJobParameters;
1669
- (function (GlacierJobParameters) {
1670
- GlacierJobParameters.filterSensitiveLog = (obj) => ({
1671
- ...obj,
1672
- });
1673
- })(GlacierJobParameters = exports.GlacierJobParameters || (exports.GlacierJobParameters = {}));
@@ -1,7 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WriteGetObjectResponseRequest = exports.UploadPartCopyRequest = exports.UploadPartCopyOutput = exports.CopyPartResult = exports.UploadPartRequest = exports.UploadPartOutput = exports.SelectObjectContentRequest = exports.ScanRange = exports.RequestProgress = exports.SelectObjectContentOutput = exports.SelectObjectContentEventStream = exports.StatsEvent = exports.Stats = exports.RecordsEvent = exports.ProgressEvent = exports.Progress = exports.EndEvent = exports.ContinuationEvent = exports.RestoreObjectRequest = exports.RestoreRequest = exports.RestoreRequestType = exports.SelectParameters = exports.OutputSerialization = exports.JSONOutput = exports.CSVOutput = exports.QuoteFields = exports.InputSerialization = exports.ParquetInput = exports.JSONInput = exports.JSONType = exports.CSVInput = exports.FileHeaderInfo = exports.OutputLocation = exports.S3Location = exports.MetadataEntry = exports.Encryption = void 0;
3
+ exports.WriteGetObjectResponseRequest = exports.UploadPartCopyRequest = exports.UploadPartCopyOutput = exports.CopyPartResult = exports.UploadPartRequest = exports.UploadPartOutput = exports.SelectObjectContentRequest = exports.ScanRange = exports.RequestProgress = exports.SelectObjectContentOutput = exports.SelectObjectContentEventStream = exports.StatsEvent = exports.Stats = exports.RecordsEvent = exports.ProgressEvent = exports.Progress = exports.EndEvent = exports.ContinuationEvent = exports.RestoreObjectRequest = exports.RestoreRequest = exports.RestoreRequestType = exports.SelectParameters = exports.OutputSerialization = exports.JSONOutput = exports.CSVOutput = exports.QuoteFields = exports.InputSerialization = exports.ParquetInput = exports.JSONInput = exports.JSONType = exports.CSVInput = exports.FileHeaderInfo = exports.OutputLocation = exports.S3Location = exports.MetadataEntry = exports.Encryption = exports.GlacierJobParameters = void 0;
4
4
  const smithy_client_1 = require("@aws-sdk/smithy-client");
5
+ var GlacierJobParameters;
6
+ (function (GlacierJobParameters) {
7
+ GlacierJobParameters.filterSensitiveLog = (obj) => ({
8
+ ...obj,
9
+ });
10
+ })(GlacierJobParameters = exports.GlacierJobParameters || (exports.GlacierJobParameters = {}));
5
11
  var Encryption;
6
12
  (function (Encryption) {
7
13
  Encryption.filterSensitiveLog = (obj) => ({
@@ -257,6 +257,7 @@ const serializeAws_restXmlCreateBucketCommand = async (input, context) => {
257
257
  ...(isSerializableHeaderValue(input.ObjectLockEnabledForBucket) && {
258
258
  "x-amz-bucket-object-lock-enabled": input.ObjectLockEnabledForBucket.toString(),
259
259
  }),
260
+ ...(isSerializableHeaderValue(input.ObjectOwnership) && { "x-amz-object-ownership": input.ObjectOwnership }),
260
261
  };
261
262
  let resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/{Bucket}";
262
263
  if (input.Bucket !== undefined) {
@@ -3024,6 +3025,9 @@ const serializeAws_restXmlPutBucketNotificationConfigurationCommand = async (inp
3024
3025
  ...(isSerializableHeaderValue(input.ExpectedBucketOwner) && {
3025
3026
  "x-amz-expected-bucket-owner": input.ExpectedBucketOwner,
3026
3027
  }),
3028
+ ...(isSerializableHeaderValue(input.SkipDestinationValidation) && {
3029
+ "x-amz-skip-destination-validation": input.SkipDestinationValidation.toString(),
3030
+ }),
3027
3031
  };
3028
3032
  let resolvedPath = `${(basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || ""}` + "/{Bucket}";
3029
3033
  if (input.Bucket !== undefined) {
@@ -5715,11 +5719,15 @@ const deserializeAws_restXmlGetBucketNotificationConfigurationCommand = async (o
5715
5719
  }
5716
5720
  const contents = {
5717
5721
  $metadata: deserializeMetadata(output),
5722
+ EventBridgeConfiguration: undefined,
5718
5723
  LambdaFunctionConfigurations: undefined,
5719
5724
  QueueConfigurations: undefined,
5720
5725
  TopicConfigurations: undefined,
5721
5726
  };
5722
5727
  const data = smithy_client_1.expectNonNull(smithy_client_1.expectObject(await parseBody(output.body, context)), "body");
5728
+ if (data["EventBridgeConfiguration"] !== undefined) {
5729
+ contents.EventBridgeConfiguration = deserializeAws_restXmlEventBridgeConfiguration(data["EventBridgeConfiguration"], context);
5730
+ }
5723
5731
  if (data.CloudFunctionConfiguration === "") {
5724
5732
  contents.LambdaFunctionConfigurations = [];
5725
5733
  }
@@ -9403,6 +9411,10 @@ const serializeAws_restXmlErrorDocument = (input, context) => {
9403
9411
  }
9404
9412
  return bodyNode;
9405
9413
  };
9414
+ const serializeAws_restXmlEventBridgeConfiguration = (input, context) => {
9415
+ const bodyNode = new xml_builder_1.XmlNode("EventBridgeConfiguration");
9416
+ return bodyNode;
9417
+ };
9406
9418
  const serializeAws_restXmlEventList = (input, context) => {
9407
9419
  return input
9408
9420
  .filter((e) => e != null)
@@ -10077,6 +10089,10 @@ const serializeAws_restXmlNotificationConfiguration = (input, context) => {
10077
10089
  bodyNode.addChildNode(node);
10078
10090
  });
10079
10091
  }
10092
+ if (input.EventBridgeConfiguration !== undefined && input.EventBridgeConfiguration !== null) {
10093
+ const node = serializeAws_restXmlEventBridgeConfiguration(input.EventBridgeConfiguration, context).withName("EventBridgeConfiguration");
10094
+ bodyNode.addChildNode(node);
10095
+ }
10080
10096
  return bodyNode;
10081
10097
  };
10082
10098
  const serializeAws_restXmlNotificationConfigurationFilter = (input, context) => {
@@ -11386,6 +11402,10 @@ const deserializeAws_restXmlErrors = (output, context) => {
11386
11402
  return deserializeAws_restXml_Error(entry, context);
11387
11403
  });
11388
11404
  };
11405
+ const deserializeAws_restXmlEventBridgeConfiguration = (output, context) => {
11406
+ const contents = {};
11407
+ return contents;
11408
+ };
11389
11409
  const deserializeAws_restXmlEventList = (output, context) => {
11390
11410
  return (output || [])
11391
11411
  .filter((e) => e != null)
@@ -513,6 +513,10 @@ export var GetBucketNotificationConfigurationRequest;
513
513
  (function (GetBucketNotificationConfigurationRequest) {
514
514
  GetBucketNotificationConfigurationRequest.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
515
515
  })(GetBucketNotificationConfigurationRequest || (GetBucketNotificationConfigurationRequest = {}));
516
+ export var EventBridgeConfiguration;
517
+ (function (EventBridgeConfiguration) {
518
+ EventBridgeConfiguration.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
519
+ })(EventBridgeConfiguration || (EventBridgeConfiguration = {}));
516
520
  export var FilterRule;
517
521
  (function (FilterRule) {
518
522
  FilterRule.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
@@ -1126,7 +1130,3 @@ export var RestoreObjectOutput;
1126
1130
  (function (RestoreObjectOutput) {
1127
1131
  RestoreObjectOutput.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
1128
1132
  })(RestoreObjectOutput || (RestoreObjectOutput = {}));
1129
- export var GlacierJobParameters;
1130
- (function (GlacierJobParameters) {
1131
- GlacierJobParameters.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
1132
- })(GlacierJobParameters || (GlacierJobParameters = {}));
@@ -1,5 +1,9 @@
1
1
  import { __assign } from "tslib";
2
2
  import { SENSITIVE_STRING } from "@aws-sdk/smithy-client";
3
+ export var GlacierJobParameters;
4
+ (function (GlacierJobParameters) {
5
+ GlacierJobParameters.filterSensitiveLog = function (obj) { return (__assign({}, obj)); };
6
+ })(GlacierJobParameters || (GlacierJobParameters = {}));
3
7
  export var Encryption;
4
8
  (function (Encryption) {
5
9
  Encryption.filterSensitiveLog = function (obj) { return (__assign(__assign({}, obj), (obj.KMSKeyId && { KMSKeyId: SENSITIVE_STRING }))); };
@@ -208,9 +208,9 @@ export var serializeAws_restXmlCreateBucketCommand = function (input, context) {
208
208
  case 0: return [4, context.endpoint()];
209
209
  case 1:
210
210
  _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? "https" : _b, port = _a.port, basePath = _a.path;
211
- headers = __assign(__assign(__assign(__assign(__assign(__assign(__assign({ "content-type": "application/xml" }, (isSerializableHeaderValue(input.ACL) && { "x-amz-acl": input.ACL })), (isSerializableHeaderValue(input.GrantFullControl) && { "x-amz-grant-full-control": input.GrantFullControl })), (isSerializableHeaderValue(input.GrantRead) && { "x-amz-grant-read": input.GrantRead })), (isSerializableHeaderValue(input.GrantReadACP) && { "x-amz-grant-read-acp": input.GrantReadACP })), (isSerializableHeaderValue(input.GrantWrite) && { "x-amz-grant-write": input.GrantWrite })), (isSerializableHeaderValue(input.GrantWriteACP) && { "x-amz-grant-write-acp": input.GrantWriteACP })), (isSerializableHeaderValue(input.ObjectLockEnabledForBucket) && {
211
+ headers = __assign(__assign(__assign(__assign(__assign(__assign(__assign(__assign({ "content-type": "application/xml" }, (isSerializableHeaderValue(input.ACL) && { "x-amz-acl": input.ACL })), (isSerializableHeaderValue(input.GrantFullControl) && { "x-amz-grant-full-control": input.GrantFullControl })), (isSerializableHeaderValue(input.GrantRead) && { "x-amz-grant-read": input.GrantRead })), (isSerializableHeaderValue(input.GrantReadACP) && { "x-amz-grant-read-acp": input.GrantReadACP })), (isSerializableHeaderValue(input.GrantWrite) && { "x-amz-grant-write": input.GrantWrite })), (isSerializableHeaderValue(input.GrantWriteACP) && { "x-amz-grant-write-acp": input.GrantWriteACP })), (isSerializableHeaderValue(input.ObjectLockEnabledForBucket) && {
212
212
  "x-amz-bucket-object-lock-enabled": input.ObjectLockEnabledForBucket.toString(),
213
- }));
213
+ })), (isSerializableHeaderValue(input.ObjectOwnership) && { "x-amz-object-ownership": input.ObjectOwnership }));
214
214
  resolvedPath = "" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || "") + "/{Bucket}";
215
215
  if (input.Bucket !== undefined) {
216
216
  labelValue = input.Bucket;
@@ -2978,8 +2978,10 @@ export var serializeAws_restXmlPutBucketNotificationConfigurationCommand = funct
2978
2978
  case 0: return [4, context.endpoint()];
2979
2979
  case 1:
2980
2980
  _a = _c.sent(), hostname = _a.hostname, _b = _a.protocol, protocol = _b === void 0 ? "https" : _b, port = _a.port, basePath = _a.path;
2981
- headers = __assign({ "content-type": "application/xml" }, (isSerializableHeaderValue(input.ExpectedBucketOwner) && {
2981
+ headers = __assign(__assign({ "content-type": "application/xml" }, (isSerializableHeaderValue(input.ExpectedBucketOwner) && {
2982
2982
  "x-amz-expected-bucket-owner": input.ExpectedBucketOwner,
2983
+ })), (isSerializableHeaderValue(input.SkipDestinationValidation) && {
2984
+ "x-amz-skip-destination-validation": input.SkipDestinationValidation.toString(),
2983
2985
  }));
2984
2986
  resolvedPath = "" + ((basePath === null || basePath === void 0 ? void 0 : basePath.endsWith("/")) ? basePath.slice(0, -1) : basePath || "") + "/{Bucket}";
2985
2987
  if (input.Bucket !== undefined) {
@@ -5858,6 +5860,7 @@ export var deserializeAws_restXmlGetBucketNotificationConfigurationCommand = fun
5858
5860
  }
5859
5861
  contents = {
5860
5862
  $metadata: deserializeMetadata(output),
5863
+ EventBridgeConfiguration: undefined,
5861
5864
  LambdaFunctionConfigurations: undefined,
5862
5865
  QueueConfigurations: undefined,
5863
5866
  TopicConfigurations: undefined,
@@ -5867,6 +5870,9 @@ export var deserializeAws_restXmlGetBucketNotificationConfigurationCommand = fun
5867
5870
  return [4, parseBody(output.body, context)];
5868
5871
  case 1:
5869
5872
  data = _a.apply(void 0, [_b.apply(void 0, [_c.sent()]), "body"]);
5873
+ if (data["EventBridgeConfiguration"] !== undefined) {
5874
+ contents.EventBridgeConfiguration = deserializeAws_restXmlEventBridgeConfiguration(data["EventBridgeConfiguration"], context);
5875
+ }
5870
5876
  if (data.CloudFunctionConfiguration === "") {
5871
5877
  contents.LambdaFunctionConfigurations = [];
5872
5878
  }
@@ -10145,6 +10151,10 @@ var serializeAws_restXmlErrorDocument = function (input, context) {
10145
10151
  }
10146
10152
  return bodyNode;
10147
10153
  };
10154
+ var serializeAws_restXmlEventBridgeConfiguration = function (input, context) {
10155
+ var bodyNode = new __XmlNode("EventBridgeConfiguration");
10156
+ return bodyNode;
10157
+ };
10148
10158
  var serializeAws_restXmlEventList = function (input, context) {
10149
10159
  return input
10150
10160
  .filter(function (e) { return e != null; })
@@ -10819,6 +10829,10 @@ var serializeAws_restXmlNotificationConfiguration = function (input, context) {
10819
10829
  bodyNode.addChildNode(node);
10820
10830
  });
10821
10831
  }
10832
+ if (input.EventBridgeConfiguration !== undefined && input.EventBridgeConfiguration !== null) {
10833
+ var node = serializeAws_restXmlEventBridgeConfiguration(input.EventBridgeConfiguration, context).withName("EventBridgeConfiguration");
10834
+ bodyNode.addChildNode(node);
10835
+ }
10822
10836
  return bodyNode;
10823
10837
  };
10824
10838
  var serializeAws_restXmlNotificationConfigurationFilter = function (input, context) {
@@ -12128,6 +12142,10 @@ var deserializeAws_restXmlErrors = function (output, context) {
12128
12142
  return deserializeAws_restXml_Error(entry, context);
12129
12143
  });
12130
12144
  };
12145
+ var deserializeAws_restXmlEventBridgeConfiguration = function (output, context) {
12146
+ var contents = {};
12147
+ return contents;
12148
+ };
12131
12149
  var deserializeAws_restXmlEventList = function (output, context) {
12132
12150
  return (output || [])
12133
12151
  .filter(function (e) { return e != null; })
@@ -392,7 +392,17 @@ export declare class S3 extends S3Client {
392
392
  * defined by Amazon S3. These permissions are then added to the ACL on the object. For more
393
393
  * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access Control List (ACL) Overview</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing ACLs Using the REST
394
394
  * API</a>. </p>
395
- *
395
+ * <p>If the bucket that you're copying objects to uses the bucket owner enforced setting for
396
+ * S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that
397
+ * use this setting only accept PUT requests that don't specify an ACL or PUT requests that
398
+ * specify bucket owner full control ACLs, such as the <code>bucket-owner-full-control</code> canned
399
+ * ACL or an equivalent form of this ACL expressed in the XML format.</p>
400
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling ownership of
401
+ * objects and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
402
+ * <note>
403
+ * <p>If your bucket uses the bucket owner enforced setting for Object Ownership,
404
+ * all objects written to the bucket by any account will be owned by the bucket owner.</p>
405
+ * </note>
396
406
  * <p>
397
407
  * <b>Storage Class Options</b>
398
408
  * </p>
@@ -455,9 +465,20 @@ export declare class S3 extends S3Client {
455
465
  * bucket in a Region other than US East (N. Virginia), your application must be able to
456
466
  * handle 307 redirect. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/VirtualHosting.html">Virtual hosting of buckets</a>.</p>
457
467
  * </note>
458
- * <p>When creating a bucket using this operation, you can optionally specify the accounts or
459
- * groups that should be granted specific permissions on the bucket. There are two ways to
460
- * grant the appropriate permissions using the request headers.</p>
468
+ * <p>
469
+ * <b>Access control lists (ACLs)</b>
470
+ * </p>
471
+ * <p>When creating a bucket using this operation, you can optionally configure the bucket ACL to specify the accounts or
472
+ * groups that should be granted specific permissions on the bucket.</p>
473
+ * <important>
474
+ * <p>If your CreateBucket request includes the <code>BucketOwnerEnforced</code> value for
475
+ * the <code>x-amz-object-ownership</code> header, your request can either not specify
476
+ * an ACL or specify bucket owner full control ACLs, such as the <code>bucket-owner-full-control</code>
477
+ * canned ACL or an equivalent ACL expressed in the XML format. For
478
+ * more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling object
479
+ * ownership</a> in the <i>Amazon S3 User Guide</i>.</p>
480
+ * </important>
481
+ * <p>There are two ways to grant the appropriate permissions using the request headers.</p>
461
482
  * <ul>
462
483
  * <li>
463
484
  * <p>Specify a canned ACL using the <code>x-amz-acl</code> request header. Amazon S3
@@ -470,7 +491,7 @@ export declare class S3 extends S3Client {
470
491
  * <code>x-amz-grant-write</code>, <code>x-amz-grant-read-acp</code>,
471
492
  * <code>x-amz-grant-write-acp</code>, and <code>x-amz-grant-full-control</code>
472
493
  * headers. These headers map to the set of permissions Amazon S3 supports in an ACL. For
473
- * more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access control list
494
+ * more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/acl-overview.html">Access control list
474
495
  * (ACL) overview</a>.</p>
475
496
  * <p>You specify each grantee as a type=value pair, where the type is one of the
476
497
  * following:</p>
@@ -534,13 +555,30 @@ export declare class S3 extends S3Client {
534
555
  * <p>
535
556
  * <b>Permissions</b>
536
557
  * </p>
537
- * <p>If your <code>CreateBucket</code> request specifies ACL permissions and the ACL is public-read, public-read-write,
538
- * authenticated-read, or if you specify access permissions explicitly through any other ACL, both
539
- * <code>s3:CreateBucket</code> and <code>s3:PutBucketAcl</code> permissions are needed. If the ACL the
540
- * <code>CreateBucket</code> request is private, only <code>s3:CreateBucket</code> permission is needed. </p>
541
- * <p>If <code>ObjectLockEnabledForBucket</code> is set to true in your <code>CreateBucket</code> request,
542
- * <code>s3:PutBucketObjectLockConfiguration</code> and <code>s3:PutBucketVersioning</code> permissions are required.</p>
543
- *
558
+ * <p>In addition to <code>s3:CreateBucket</code>, the following permissions are required when your CreateBucket includes specific headers:</p>
559
+ * <ul>
560
+ * <li>
561
+ * <p>
562
+ * <b>ACLs</b> - If your <code>CreateBucket</code> request specifies ACL permissions and the ACL is public-read, public-read-write,
563
+ * authenticated-read, or if you specify access permissions explicitly through any other ACL, both
564
+ * <code>s3:CreateBucket</code> and <code>s3:PutBucketAcl</code> permissions are needed. If the ACL the
565
+ * <code>CreateBucket</code> request is private or doesn't specify any ACLs, only <code>s3:CreateBucket</code> permission is needed. </p>
566
+ * </li>
567
+ * <li>
568
+ * <p>
569
+ * <b>Object Lock</b> - If
570
+ * <code>ObjectLockEnabledForBucket</code> is set to true in your
571
+ * <code>CreateBucket</code> request,
572
+ * <code>s3:PutBucketObjectLockConfiguration</code> and
573
+ * <code>s3:PutBucketVersioning</code> permissions are required.</p>
574
+ * </li>
575
+ * <li>
576
+ * <p>
577
+ * <b>S3 Object Ownership</b> - If your CreateBucket
578
+ * request includes the the <code>x-amz-object-ownership</code> header,
579
+ * <code>s3:PutBucketOwnershipControls</code> permission is required.</p>
580
+ * </li>
581
+ * </ul>
544
582
  * <p>The following operations are related to <code>CreateBucket</code>:</p>
545
583
  * <ul>
546
584
  * <li>
@@ -937,8 +975,8 @@ export declare class S3 extends S3Client {
937
975
  deleteBucketEncryption(args: DeleteBucketEncryptionCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: DeleteBucketEncryptionCommandOutput) => void): void;
938
976
  /**
939
977
  * <p>Deletes the S3 Intelligent-Tiering configuration from the specified bucket.</p>
940
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in two low latency and high throughput access tiers. For data that can be accessed asynchronously, you can choose to activate automatic archiving capabilities within the S3 Intelligent-Tiering storage class.</p>
941
- * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
978
+ * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.</p>
979
+ * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
942
980
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage class for automatically optimizing frequently and infrequently accessed objects</a>.</p>
943
981
  * <p>Operations related to
944
982
  * <code>DeleteBucketIntelligentTieringConfiguration</code> include: </p>
@@ -1414,6 +1452,13 @@ export declare class S3 extends S3Client {
1414
1452
  * return the ACL of the bucket, you must have <code>READ_ACP</code> access to the bucket. If
1415
1453
  * <code>READ_ACP</code> permission is granted to the anonymous user, you can return the
1416
1454
  * ACL of the bucket without using an authorization header.</p>
1455
+ * <note>
1456
+ * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership,
1457
+ * requests to read ACLs are still supported and return the <code>bucket-owner-full-control</code>
1458
+ * ACL with the owner being the account that created the bucket. For more information, see
1459
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
1460
+ * Controlling object ownership and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
1461
+ * </note>
1417
1462
  *
1418
1463
  * <p class="title">
1419
1464
  * <b>Related Resources</b>
@@ -1519,8 +1564,8 @@ export declare class S3 extends S3Client {
1519
1564
  getBucketEncryption(args: GetBucketEncryptionCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: GetBucketEncryptionCommandOutput) => void): void;
1520
1565
  /**
1521
1566
  * <p>Gets the S3 Intelligent-Tiering configuration from the specified bucket.</p>
1522
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in two low latency and high throughput access tiers. For data that can be accessed asynchronously, you can choose to activate automatic archiving capabilities within the S3 Intelligent-Tiering storage class.</p>
1523
- * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
1567
+ * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.</p>
1568
+ * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
1524
1569
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage class for automatically optimizing frequently and infrequently accessed objects</a>.</p>
1525
1570
  * <p>Operations related to
1526
1571
  * <code>GetBucketIntelligentTieringConfiguration</code> include: </p>
@@ -1759,9 +1804,9 @@ export declare class S3 extends S3Client {
1759
1804
  /**
1760
1805
  * <p>Retrieves <code>OwnershipControls</code> for an Amazon S3 bucket. To use this operation, you
1761
1806
  * must have the <code>s3:GetBucketOwnershipControls</code> permission. For more information
1762
- * about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying
1763
- * Permissions in a Policy</a>. </p>
1764
- * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using Object Ownership</a>. </p>
1807
+ * about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-with-s3-actions.html">Specifying
1808
+ * permissions in a policy</a>. </p>
1809
+ * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Using Object Ownership</a>. </p>
1765
1810
  * <p>The following operations are related to <code>GetBucketOwnershipControls</code>:</p>
1766
1811
  * <ul>
1767
1812
  * <li>
@@ -2194,7 +2239,13 @@ export declare class S3 extends S3Client {
2194
2239
  * </p>
2195
2240
  * <p>By default, GET returns ACL information about the current version of an object. To
2196
2241
  * return ACL information about a different version, use the versionId subresource.</p>
2197
- *
2242
+ * <note>
2243
+ * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership,
2244
+ * requests to read ACLs are still supported and return the <code>bucket-owner-full-control</code>
2245
+ * ACL with the owner being the account that created the bucket. For more information, see
2246
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">
2247
+ * Controlling object ownership and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
2248
+ * </note>
2198
2249
  * <p>The following operations are related to <code>GetObjectAcl</code>:</p>
2199
2250
  * <ul>
2200
2251
  * <li>
@@ -2525,8 +2576,8 @@ export declare class S3 extends S3Client {
2525
2576
  listBucketAnalyticsConfigurations(args: ListBucketAnalyticsConfigurationsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ListBucketAnalyticsConfigurationsCommandOutput) => void): void;
2526
2577
  /**
2527
2578
  * <p>Lists the S3 Intelligent-Tiering configuration from the specified bucket.</p>
2528
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in two low latency and high throughput access tiers. For data that can be accessed asynchronously, you can choose to activate automatic archiving capabilities within the S3 Intelligent-Tiering storage class.</p>
2529
- * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
2579
+ * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.</p>
2580
+ * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
2530
2581
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage class for automatically optimizing frequently and infrequently accessed objects</a>.</p>
2531
2582
  * <p>Operations related to
2532
2583
  * <code>ListBucketIntelligentTieringConfigurations</code> include: </p>
@@ -2963,7 +3014,13 @@ export declare class S3 extends S3Client {
2963
3014
  * that updates a bucket ACL using the request body, then you can continue to use that
2964
3015
  * approach.</p>
2965
3016
  *
2966
- *
3017
+ * <important>
3018
+ * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions.
3019
+ * You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and
3020
+ * return the <code>AccessControlListNotSupported</code> error code. Requests to read ACLs are still supported.
3021
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling object ownership</a>
3022
+ * in the <i>Amazon S3 User Guide</i>.</p>
3023
+ * </important>
2967
3024
  * <p>
2968
3025
  * <b>Access Permissions</b>
2969
3026
  * </p>
@@ -3357,8 +3414,8 @@ export declare class S3 extends S3Client {
3357
3414
  /**
3358
3415
  * <p>Puts a S3 Intelligent-Tiering configuration to the specified bucket.
3359
3416
  * You can have up to 1,000 S3 Intelligent-Tiering configurations per bucket.</p>
3360
- * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in two low latency and high throughput access tiers. For data that can be accessed asynchronously, you can choose to activate automatic archiving capabilities within the S3 Intelligent-Tiering storage class.</p>
3361
- * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
3417
+ * <p>The S3 Intelligent-Tiering storage class is designed to optimize storage costs by automatically moving data to the most cost-effective storage access tier, without performance impact or operational overhead. S3 Intelligent-Tiering delivers automatic cost savings in three low latency and high throughput access tiers. To get the lowest storage cost on data that can be accessed in minutes to hours, you can choose to activate additional archiving capabilities.</p>
3418
+ * <p>The S3 Intelligent-Tiering storage class is the ideal storage class for data with unknown, changing, or unpredictable access patterns, independent of object size or retention period. If the size of an object is less than 128 KB, it is not monitored and not eligible for auto-tiering. Smaller objects can be stored, but they are always charged at the Frequent Access tier rates in the S3 Intelligent-Tiering storage class.</p>
3362
3419
  * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/storage-class-intro.html#sc-dynamic-data-access">Storage class for automatically optimizing frequently and infrequently accessed objects</a>.</p>
3363
3420
  * <p>Operations related to
3364
3421
  * <code>PutBucketIntelligentTieringConfiguration</code> include: </p>
@@ -3652,10 +3709,15 @@ export declare class S3 extends S3Client {
3652
3709
  * modify the logging parameters. All logs are saved to buckets in the same Amazon Web Services Region as the
3653
3710
  * source bucket. To set the logging status of a bucket, you must be the bucket owner.</p>
3654
3711
  *
3655
- * <p>The bucket owner is automatically granted FULL_CONTROL to all logs. You use the
3656
- * <code>Grantee</code> request element to grant access to other people. The
3712
+ * <p>The bucket owner is automatically granted FULL_CONTROL to all logs. You use the <code>Grantee</code> request element to grant access to other people. The
3657
3713
  * <code>Permissions</code> request element specifies the kind of access the grantee has to
3658
3714
  * the logs.</p>
3715
+ * <important>
3716
+ * <p>If the target bucket for log delivery uses the bucket owner enforced
3717
+ * setting for S3 Object Ownership, you can't use the <code>Grantee</code> request element
3718
+ * to grant access to others. Permissions can only be granted using policies. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/enable-server-access-logging.html#grant-log-delivery-permissions-general">Permissions for server access log delivery</a> in the
3719
+ * <i>Amazon S3 User Guide</i>.</p>
3720
+ * </important>
3659
3721
  *
3660
3722
  * <p>
3661
3723
  * <b>Grantee Values</b>
@@ -3700,7 +3762,7 @@ export declare class S3 extends S3Client {
3700
3762
  * /></code>
3701
3763
  * </p>
3702
3764
  *
3703
- * <p>For more information about server access logging, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ServerLogs.html">Server Access Logging</a>. </p>
3765
+ * <p>For more information about server access logging, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/ServerLogs.html">Server Access Logging</a> in the <i>Amazon S3 User Guide</i>. </p>
3704
3766
  *
3705
3767
  * <p>For more information about creating a bucket, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucket.html">CreateBucket</a>. For more
3706
3768
  * information about returning the logging status of a bucket, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html">GetBucketLogging</a>.</p>
@@ -3858,8 +3920,8 @@ export declare class S3 extends S3Client {
3858
3920
  /**
3859
3921
  * <p>Creates or modifies <code>OwnershipControls</code> for an Amazon S3 bucket. To use this
3860
3922
  * operation, you must have the <code>s3:PutBucketOwnershipControls</code> permission. For
3861
- * more information about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/using-with-s3-actions.html">Specifying Permissions in a Policy</a>. </p>
3862
- * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/about-object-ownership.html">Using Object Ownership</a>. </p>
3923
+ * more information about Amazon S3 permissions, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/user-guide/using-with-s3-actions.html">Specifying permissions in a policy</a>. </p>
3924
+ * <p>For information about Amazon S3 Object Ownership, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/user-guide/about-object-ownership.html">Using object ownership</a>. </p>
3863
3925
  * <p>The following operations are related to <code>PutBucketOwnershipControls</code>:</p>
3864
3926
  * <ul>
3865
3927
  * <li>
@@ -4316,7 +4378,6 @@ export declare class S3 extends S3Client {
4316
4378
  * </li>
4317
4379
  * </ul>
4318
4380
  * </note>
4319
- *
4320
4381
  * <p>
4321
4382
  * <b>Server-side Encryption</b>
4322
4383
  * </p>
@@ -4338,7 +4399,20 @@ export declare class S3 extends S3Client {
4338
4399
  * permissions are then added to the ACL on the object. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access Control List
4339
4400
  * (ACL) Overview</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing ACLs Using the REST
4340
4401
  * API</a>. </p>
4341
- *
4402
+ * <p>If the bucket that you're uploading objects to uses the bucket owner enforced setting
4403
+ * for S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that
4404
+ * use this setting only accept PUT requests that don't specify an ACL or PUT requests that
4405
+ * specify bucket owner full control ACLs, such as the <code>bucket-owner-full-control</code> canned
4406
+ * ACL or an equivalent form of this ACL expressed in the XML format. PUT requests that contain other
4407
+ * ACLs (for example, custom grants to certain Amazon Web Services accounts) fail and return a
4408
+ * <code>400</code> error with the error code
4409
+ * <code>AccessControlListNotSupported</code>.</p>
4410
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling ownership of
4411
+ * objects and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
4412
+ * <note>
4413
+ * <p>If your bucket uses the bucket owner enforced setting for Object Ownership,
4414
+ * all objects written to the bucket by any account will be owned by the bucket owner.</p>
4415
+ * </note>
4342
4416
  * <p>
4343
4417
  * <b>Storage Class Options</b>
4344
4418
  * </p>
@@ -4390,8 +4464,13 @@ export declare class S3 extends S3Client {
4390
4464
  * the ACL on an object using either the request body or the headers. For example, if you have
4391
4465
  * an existing application that updates a bucket ACL using the request body, you can continue
4392
4466
  * to use that approach. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access Control List (ACL) Overview</a> in the <i>Amazon S3 User Guide</i>.</p>
4393
- *
4394
- *
4467
+ * <important>
4468
+ * <p>If your bucket uses the bucket owner enforced setting for S3 Object Ownership, ACLs are disabled and no longer affect permissions.
4469
+ * You must use policies to grant access to your bucket and the objects in it. Requests to set ACLs or update ACLs fail and
4470
+ * return the <code>AccessControlListNotSupported</code> error code. Requests to read ACLs are still supported.
4471
+ * For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html">Controlling object ownership</a>
4472
+ * in the <i>Amazon S3 User Guide</i>.</p>
4473
+ * </important>
4395
4474
  *
4396
4475
  * <p>
4397
4476
  * <b>Access Permissions</b>
@@ -139,7 +139,17 @@ export interface CopyObjectCommandOutput extends CopyObjectOutput, __MetadataBea
139
139
  * defined by Amazon S3. These permissions are then added to the ACL on the object. For more
140
140
  * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html">Access Control List (ACL) Overview</a> and <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-using-rest-api.html">Managing ACLs Using the REST
141
141
  * API</a>. </p>
142
- *
142
+ * <p>If the bucket that you're copying objects to uses the bucket owner enforced setting for
143
+ * S3 Object Ownership, ACLs are disabled and no longer affect permissions. Buckets that
144
+ * use this setting only accept PUT requests that don't specify an ACL or PUT requests that
145
+ * specify bucket owner full control ACLs, such as the <code>bucket-owner-full-control</code> canned
146
+ * ACL or an equivalent form of this ACL expressed in the XML format.</p>
147
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/about-object-ownership.html"> Controlling ownership of
148
+ * objects and disabling ACLs</a> in the <i>Amazon S3 User Guide</i>.</p>
149
+ * <note>
150
+ * <p>If your bucket uses the bucket owner enforced setting for Object Ownership,
151
+ * all objects written to the bucket by any account will be owned by the bucket owner.</p>
152
+ * </note>
143
153
  * <p>
144
154
  * <b>Storage Class Options</b>
145
155
  * </p>