@aws-sdk/client-s3 3.1068.0 → 3.1070.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 (64) hide show
  1. package/README.md +35 -0
  2. package/dist-cjs/auth/httpAuthSchemeProvider.js +15 -19
  3. package/dist-cjs/endpoint/bdd.js +2 -5
  4. package/dist-cjs/endpoint/endpointResolver.js +7 -11
  5. package/dist-cjs/index.js +646 -535
  6. package/dist-cjs/models/S3ServiceException.js +4 -8
  7. package/dist-cjs/models/errors.js +106 -52
  8. package/dist-cjs/runtimeConfig.browser.js +29 -33
  9. package/dist-cjs/runtimeConfig.js +43 -47
  10. package/dist-cjs/runtimeConfig.native.js +4 -7
  11. package/dist-cjs/runtimeConfig.shared.js +25 -29
  12. package/dist-cjs/schemas/schemas_0.js +1256 -740
  13. package/dist-es/S3.js +12 -0
  14. package/dist-es/commands/DeleteObjectAnnotationCommand.js +23 -0
  15. package/dist-es/commands/GetObjectAnnotationCommand.js +28 -0
  16. package/dist-es/commands/ListObjectAnnotationsCommand.js +23 -0
  17. package/dist-es/commands/PutObjectAnnotationCommand.js +29 -0
  18. package/dist-es/commands/UpdateBucketMetadataAnnotationTableConfigurationCommand.js +27 -0
  19. package/dist-es/commands/index.js +5 -0
  20. package/dist-es/models/enums.js +12 -1
  21. package/dist-es/models/errors.js +76 -4
  22. package/dist-es/pagination/ListObjectAnnotationsPaginator.js +4 -0
  23. package/dist-es/pagination/index.js +1 -0
  24. package/dist-es/schemas/schemas_0.js +260 -100
  25. package/dist-types/S3.d.ts +42 -0
  26. package/dist-types/S3Client.d.ts +7 -2
  27. package/dist-types/commands/CopyObjectCommand.d.ts +1 -0
  28. package/dist-types/commands/CreateBucketMetadataConfigurationCommand.d.ts +27 -0
  29. package/dist-types/commands/DeleteObjectAnnotationCommand.d.ts +119 -0
  30. package/dist-types/commands/GetBucketMetadataConfigurationCommand.d.ts +11 -0
  31. package/dist-types/commands/GetBucketNotificationConfigurationCommand.d.ts +3 -3
  32. package/dist-types/commands/GetObjectAnnotationCommand.d.ts +141 -0
  33. package/dist-types/commands/ListObjectAnnotationsCommand.d.ts +138 -0
  34. package/dist-types/commands/PutBucketNotificationConfigurationCommand.d.ts +3 -3
  35. package/dist-types/commands/PutObjectAnnotationCommand.d.ts +166 -0
  36. package/dist-types/commands/RenameObjectCommand.d.ts +1 -1
  37. package/dist-types/commands/RestoreObjectCommand.d.ts +1 -2
  38. package/dist-types/commands/UpdateBucketMetadataAnnotationTableConfigurationCommand.d.ts +110 -0
  39. package/dist-types/commands/index.d.ts +5 -0
  40. package/dist-types/models/enums.d.ts +29 -2
  41. package/dist-types/models/errors.d.ts +76 -4
  42. package/dist-types/models/models_0.d.ts +925 -549
  43. package/dist-types/models/models_1.d.ts +380 -2
  44. package/dist-types/pagination/ListObjectAnnotationsPaginator.d.ts +7 -0
  45. package/dist-types/pagination/index.d.ts +1 -0
  46. package/dist-types/schemas/schemas_0.d.ts +24 -0
  47. package/dist-types/ts3.4/S3.d.ts +98 -0
  48. package/dist-types/ts3.4/S3Client.d.ts +30 -0
  49. package/dist-types/ts3.4/commands/DeleteObjectAnnotationCommand.d.ts +53 -0
  50. package/dist-types/ts3.4/commands/GetObjectAnnotationCommand.d.ts +61 -0
  51. package/dist-types/ts3.4/commands/ListObjectAnnotationsCommand.d.ts +53 -0
  52. package/dist-types/ts3.4/commands/PutObjectAnnotationCommand.d.ts +61 -0
  53. package/dist-types/ts3.4/commands/RenameObjectCommand.d.ts +1 -1
  54. package/dist-types/ts3.4/commands/RestoreObjectCommand.d.ts +1 -2
  55. package/dist-types/ts3.4/commands/UpdateBucketMetadataAnnotationTableConfigurationCommand.d.ts +49 -0
  56. package/dist-types/ts3.4/commands/index.d.ts +5 -0
  57. package/dist-types/ts3.4/models/enums.d.ts +18 -3
  58. package/dist-types/ts3.4/models/errors.d.ts +41 -3
  59. package/dist-types/ts3.4/models/models_0.d.ts +138 -64
  60. package/dist-types/ts3.4/models/models_1.d.ts +75 -5
  61. package/dist-types/ts3.4/pagination/ListObjectAnnotationsPaginator.d.ts +11 -0
  62. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  63. package/dist-types/ts3.4/schemas/schemas_0.d.ts +24 -0
  64. package/package.json +20 -20
@@ -1,5 +1,5 @@
1
1
  import type { StreamingBlobTypes } from "@smithy/types";
2
- import type { AnalyticsS3ExportFileFormat, ArchiveStatus, BucketAbacStatus, BucketAccelerateStatus, BucketCannedACL, BucketLocationConstraint, BucketLogsPermission, BucketNamespace, BucketType, BucketVersioningStatus, ChecksumAlgorithm, ChecksumMode, ChecksumType, DataRedundancy, DeleteMarkerReplicationStatus, EncodingType, EncryptionType, Event, ExistingObjectReplicationStatus, ExpirationState, ExpirationStatus, FileHeaderInfo, FilterRuleName, IntelligentTieringAccessTier, IntelligentTieringStatus, InventoryConfigurationState, InventoryFormat, InventoryFrequency, InventoryIncludedObjectVersions, InventoryOptionalField, JSONType, LocationType, MetadataDirective, MetricsStatus, MFADelete, MFADeleteStatus, ObjectAttributes, ObjectCannedACL, ObjectLockEnabled, ObjectLockLegalHoldStatus, ObjectLockMode, ObjectLockRetentionMode, ObjectOwnership, ObjectStorageClass, ObjectVersionStorageClass, OptionalObjectAttributes, OwnerOverride, PartitionDateSource, Payer, Permission, Protocol, ReplicaModificationsStatus, ReplicationRuleStatus, ReplicationStatus, ReplicationTimeStatus, RequestCharged, RequestPayer, S3TablesBucketType, ServerSideEncryption, SessionMode, SseKmsEncryptedObjectsStatus, StorageClass, StorageClassAnalysisSchemaVersion, TableSseAlgorithm, TaggingDirective, Tier, TransitionDefaultMinimumObjectSize, TransitionStorageClass, Type } from "./enums";
2
+ import type { AnalyticsS3ExportFileFormat, AnnotationConfigurationState, AnnotationDirective, ArchiveStatus, BucketAbacStatus, BucketAccelerateStatus, BucketCannedACL, BucketLocationConstraint, BucketLogsPermission, BucketNamespace, BucketType, BucketVersioningStatus, ChecksumAlgorithm, ChecksumMode, ChecksumType, DataRedundancy, DeleteMarkerReplicationStatus, EncodingType, EncryptionType, Event, ExistingObjectReplicationStatus, ExpirationState, ExpirationStatus, FilterRuleName, IntelligentTieringAccessTier, IntelligentTieringStatus, InventoryConfigurationState, InventoryFormat, InventoryFrequency, InventoryIncludedObjectVersions, InventoryOptionalField, LocationType, MetadataDirective, MetricsStatus, MFADelete, MFADeleteStatus, ObjectAttributes, ObjectCannedACL, ObjectLockEnabled, ObjectLockLegalHoldStatus, ObjectLockMode, ObjectLockRetentionMode, ObjectOwnership, ObjectStorageClass, ObjectVersionStorageClass, OptionalObjectAttributes, OwnerOverride, PartitionDateSource, Payer, Permission, Protocol, ReplicaModificationsStatus, ReplicationRuleStatus, ReplicationStatus, ReplicationTimeStatus, RequestCharged, RequestPayer, S3TablesBucketType, ServerSideEncryption, SessionMode, SseKmsEncryptedObjectsStatus, StorageClass, StorageClassAnalysisSchemaVersion, TableSseAlgorithm, TaggingDirective, TransitionDefaultMinimumObjectSize, TransitionStorageClass, Type } from "./enums";
3
3
  /**
4
4
  * <p>The ABAC status of the general purpose bucket. When ABAC is enabled for the general purpose bucket, you can use tags to manage access to the general purpose buckets as well as for cost tracking purposes. When ABAC is disabled for the general purpose buckets, you can only use tags for cost tracking purposes. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/buckets-tagging.html">Using tags with S3 general purpose buckets</a>. </p>
5
5
  * @public
@@ -1305,6 +1305,34 @@ export interface CopyObjectRequest {
1305
1305
  * @public
1306
1306
  */
1307
1307
  TaggingDirective?: TaggingDirective | undefined;
1308
+ /**
1309
+ * <p>Specifies whether you want to copy annotations from the source object or exclude them. If this
1310
+ * header isn't specified, <code>COPY</code> is the default behavior.</p>
1311
+ * <p>Valid Values: <code>COPY | EXCLUDE</code>
1312
+ * </p>
1313
+ * <p>You can specify this directive as either an HTTP header
1314
+ * (<code>x-amz-object-annotation-directive</code>) or as a query string parameter. Use the query
1315
+ * string form when generating presigned URLs that need to control annotation copy behavior.</p>
1316
+ * <p>When set to <code>COPY</code>, you must have <code>s3:GetObjectAnnotation</code> permission on
1317
+ * the source object and <code>s3:PutObjectAnnotation</code> permission on the destination. Each
1318
+ * annotation copied is billed as a separate PUT request. If annotations on the source are modified
1319
+ * during the copy, Amazon S3 returns a retryable error.</p>
1320
+ * <note>
1321
+ * <p>For directory buckets, annotations are not supported. Use <code>EXCLUDE</code> to copy
1322
+ * objects to directory buckets without errors. If you specify <code>COPY</code> for a directory
1323
+ * bucket, the request returns HTTP 501 (Not Implemented).</p>
1324
+ * </note>
1325
+ * <note>
1326
+ * <p>When you copy objects using multipart upload (for example, when the Amazon Web Services CLI or Amazon Web Services SDKs
1327
+ * use Transfer Manager for objects larger than approximately 8 MB), annotations are not copied by
1328
+ * default. To include annotations, specify <code>--copy-props default</code> in the Amazon Web Services CLI or the
1329
+ * equivalent SDK configuration. With this opt-in, the SDK reads source annotations, completes the
1330
+ * multipart upload, and then writes each annotation to the destination. Between the upload completion
1331
+ * and the last annotation write, the destination object exists without all its annotations.</p>
1332
+ * </note>
1333
+ * @public
1334
+ */
1335
+ AnnotationDirective?: AnnotationDirective | undefined;
1308
1336
  /**
1309
1337
  * <p>The server-side encryption algorithm used when storing this object in Amazon S3. Unrecognized or
1310
1338
  * unsupported values won’t write a destination object and will receive a <code>400 Bad Request</code>
@@ -1920,6 +1948,31 @@ export interface MetadataTableEncryptionConfiguration {
1920
1948
  */
1921
1949
  KmsKeyArn?: string | undefined;
1922
1950
  }
1951
+ /**
1952
+ * <p>Specifies the configuration for the annotation table associated with a bucket's Amazon S3 Metadata
1953
+ * configuration. The annotation table is an Iceberg table that records annotation events for objects
1954
+ * in the bucket.</p>
1955
+ * @public
1956
+ */
1957
+ export interface AnnotationTableConfiguration {
1958
+ /**
1959
+ * <p>The state of the annotation table. Valid values are <code>ENABLED</code> and <code>DISABLED</code>.</p>
1960
+ * @public
1961
+ */
1962
+ ConfigurationState: AnnotationConfigurationState | undefined;
1963
+ /**
1964
+ * <p>
1965
+ * The encryption settings for an S3 Metadata journal table or inventory table configuration.
1966
+ * </p>
1967
+ * @public
1968
+ */
1969
+ EncryptionConfiguration?: MetadataTableEncryptionConfiguration | undefined;
1970
+ /**
1971
+ * <p>The ARN of the IAM role used to manage the annotation table.</p>
1972
+ * @public
1973
+ */
1974
+ Role?: string | undefined;
1975
+ }
1923
1976
  /**
1924
1977
  * <p>
1925
1978
  * The inventory table configuration for an S3 Metadata configuration.
@@ -2011,6 +2064,11 @@ export interface MetadataConfiguration {
2011
2064
  * @public
2012
2065
  */
2013
2066
  InventoryTableConfiguration?: InventoryTableConfiguration | undefined;
2067
+ /**
2068
+ * <p>Optional annotation table configuration to include with the metadata configuration.</p>
2069
+ * @public
2070
+ */
2071
+ AnnotationTableConfiguration?: AnnotationTableConfiguration | undefined;
2014
2072
  }
2015
2073
  /**
2016
2074
  * @public
@@ -3465,6 +3523,77 @@ export interface DeleteObjectRequest {
3465
3523
  */
3466
3524
  IfMatchSize?: number | undefined;
3467
3525
  }
3526
+ /**
3527
+ * @public
3528
+ */
3529
+ export interface DeleteObjectAnnotationOutput {
3530
+ /**
3531
+ * <p>The version ID of the object that the annotation was deleted from.</p>
3532
+ * @public
3533
+ */
3534
+ ObjectVersionId?: string | undefined;
3535
+ /**
3536
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
3537
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
3538
+ * Storage Service user guide</i>.</p>
3539
+ * <note>
3540
+ * <p>This functionality is not supported for directory buckets.</p>
3541
+ * </note>
3542
+ * @public
3543
+ */
3544
+ RequestCharged?: RequestCharged | undefined;
3545
+ }
3546
+ /**
3547
+ * @public
3548
+ */
3549
+ export interface DeleteObjectAnnotationRequest {
3550
+ /**
3551
+ * <p>The name of the bucket that contains the object.</p>
3552
+ * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
3553
+ * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
3554
+ * @public
3555
+ */
3556
+ Bucket: string | undefined;
3557
+ /**
3558
+ * <p>The object key.</p>
3559
+ * @public
3560
+ */
3561
+ Key: string | undefined;
3562
+ /**
3563
+ * <p>The name of the annotation to delete. Annotation names are UTF-8 encoded and cannot start with
3564
+ * <code>aws</code> or <code>s3</code> (case-insensitive).</p>
3565
+ * <p>Length Constraints: Minimum length of 1. Maximum length of 512 bytes.</p>
3566
+ * @public
3567
+ */
3568
+ AnnotationName: string | undefined;
3569
+ /**
3570
+ * <p>The version ID of the object.</p>
3571
+ * @public
3572
+ */
3573
+ VersionId?: string | undefined;
3574
+ /**
3575
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
3576
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
3577
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
3578
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
3579
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
3580
+ * <note>
3581
+ * <p>This functionality is not supported for directory buckets.</p>
3582
+ * </note>
3583
+ * @public
3584
+ */
3585
+ RequestPayer?: RequestPayer | undefined;
3586
+ /**
3587
+ * <p>The account ID of the expected bucket owner.</p>
3588
+ * @public
3589
+ */
3590
+ ExpectedBucketOwner?: string | undefined;
3591
+ /**
3592
+ * <p>If specified, the operation only succeeds if the object's ETag matches the provided value.</p>
3593
+ * @public
3594
+ */
3595
+ ObjectIfMatch?: string | undefined;
3596
+ }
3468
3597
  /**
3469
3598
  * <p>Information about the deleted object.</p>
3470
3599
  * @public
@@ -7176,39 +7305,6 @@ export interface GetBucketLoggingRequest {
7176
7305
  */
7177
7306
  ExpectedBucketOwner?: string | undefined;
7178
7307
  }
7179
- /**
7180
- * <p>
7181
- * The destination information for the S3 Metadata configuration.
7182
- * </p>
7183
- * @public
7184
- */
7185
- export interface DestinationResult {
7186
- /**
7187
- * <p>
7188
- * The type of the table bucket where the metadata configuration is stored. The <code>aws</code>
7189
- * value indicates an Amazon Web Services managed table bucket, and the <code>customer</code> value indicates a
7190
- * customer-managed table bucket. V2 metadata configurations are stored in Amazon Web Services managed table
7191
- * buckets, and V1 metadata configurations are stored in customer-managed table buckets.
7192
- * </p>
7193
- * @public
7194
- */
7195
- TableBucketType?: S3TablesBucketType | undefined;
7196
- /**
7197
- * <p>
7198
- * The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.
7199
- * </p>
7200
- * @public
7201
- */
7202
- TableBucketArn?: string | undefined;
7203
- /**
7204
- * <p>
7205
- * The namespace in the table bucket where the metadata tables for a metadata configuration are
7206
- * stored.
7207
- * </p>
7208
- * @public
7209
- */
7210
- TableNamespace?: string | undefined;
7211
- }
7212
7308
  /**
7213
7309
  * <p> If an S3 Metadata V1 <code>CreateBucketMetadataTableConfiguration</code> or V2
7214
7310
  * <code>CreateBucketMetadataConfiguration</code> request succeeds, but S3 Metadata was
@@ -7444,6 +7540,83 @@ export interface ErrorDetails {
7444
7540
  */
7445
7541
  ErrorMessage?: string | undefined;
7446
7542
  }
7543
+ /**
7544
+ * <p>Contains the current state of the annotation table associated with a bucket's Amazon S3 Metadata
7545
+ * configuration, including its provisioning status and identifiers.</p>
7546
+ * @public
7547
+ */
7548
+ export interface AnnotationTableConfigurationResult {
7549
+ /**
7550
+ * <p>The current configuration state of the annotation table.</p>
7551
+ * @public
7552
+ */
7553
+ ConfigurationState: AnnotationConfigurationState | undefined;
7554
+ /**
7555
+ * <p>The provisioning status of the annotation table. Possible values: <code>CREATING</code>, <code>BACKFILLING</code>, <code>ACTIVE</code>, <code>FAILED</code>.</p>
7556
+ * @public
7557
+ */
7558
+ TableStatus?: string | undefined;
7559
+ /**
7560
+ * <p> If an S3 Metadata V1 <code>CreateBucketMetadataTableConfiguration</code> or V2
7561
+ * <code>CreateBucketMetadataConfiguration</code> request succeeds, but S3 Metadata was
7562
+ * unable to create the table, this structure contains the error code and error message. </p>
7563
+ * <note>
7564
+ * <p>If you created your S3 Metadata configuration before July 15, 2025, we recommend that you delete
7565
+ * and re-create your configuration by using <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_CreateBucketMetadataConfiguration.html">CreateBucketMetadataConfiguration</a> so that you can expire journal table records and create
7566
+ * a live inventory table.</p>
7567
+ * </note>
7568
+ * @public
7569
+ */
7570
+ Error?: ErrorDetails | undefined;
7571
+ /**
7572
+ * <p>The name of the annotation table.</p>
7573
+ * @public
7574
+ */
7575
+ TableName?: string | undefined;
7576
+ /**
7577
+ * <p>The ARN of the annotation table.</p>
7578
+ * @public
7579
+ */
7580
+ TableArn?: string | undefined;
7581
+ /**
7582
+ * <p>The ARN of the IAM role associated with the annotation table.</p>
7583
+ * @public
7584
+ */
7585
+ Role?: string | undefined;
7586
+ }
7587
+ /**
7588
+ * <p>
7589
+ * The destination information for the S3 Metadata configuration.
7590
+ * </p>
7591
+ * @public
7592
+ */
7593
+ export interface DestinationResult {
7594
+ /**
7595
+ * <p>
7596
+ * The type of the table bucket where the metadata configuration is stored. The <code>aws</code>
7597
+ * value indicates an Amazon Web Services managed table bucket, and the <code>customer</code> value indicates a
7598
+ * customer-managed table bucket. V2 metadata configurations are stored in Amazon Web Services managed table
7599
+ * buckets, and V1 metadata configurations are stored in customer-managed table buckets.
7600
+ * </p>
7601
+ * @public
7602
+ */
7603
+ TableBucketType?: S3TablesBucketType | undefined;
7604
+ /**
7605
+ * <p>
7606
+ * The Amazon Resource Name (ARN) of the table bucket where the metadata configuration is stored.
7607
+ * </p>
7608
+ * @public
7609
+ */
7610
+ TableBucketArn?: string | undefined;
7611
+ /**
7612
+ * <p>
7613
+ * The namespace in the table bucket where the metadata tables for a metadata configuration are
7614
+ * stored.
7615
+ * </p>
7616
+ * @public
7617
+ */
7618
+ TableNamespace?: string | undefined;
7619
+ }
7447
7620
  /**
7448
7621
  * <p>
7449
7622
  * The inventory table configuration for an S3 Metadata configuration.
@@ -7610,6 +7783,11 @@ export interface MetadataConfigurationResult {
7610
7783
  * @public
7611
7784
  */
7612
7785
  InventoryTableConfigurationResult?: InventoryTableConfigurationResult | undefined;
7786
+ /**
7787
+ * <p>The annotation table configuration result, if an annotation table is configured.</p>
7788
+ * @public
7789
+ */
7790
+ AnnotationTableConfigurationResult?: AnnotationTableConfigurationResult | undefined;
7613
7791
  }
7614
7792
  /**
7615
7793
  * <p>
@@ -9730,100 +9908,255 @@ export interface GetObjectAclRequest {
9730
9908
  ExpectedBucketOwner?: string | undefined;
9731
9909
  }
9732
9910
  /**
9733
- * <p>Contains all the possible checksum or digest values for an object.</p>
9734
9911
  * @public
9735
9912
  */
9736
- export interface Checksum {
9913
+ export interface GetObjectAnnotationOutput {
9737
9914
  /**
9738
- * <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only present if the checksum was uploaded
9739
- * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
9740
- * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
9741
- * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
9915
+ * <p>The annotation payload.</p>
9916
+ * @public
9917
+ */
9918
+ AnnotationPayload?: StreamingBlobTypes | undefined;
9919
+ /**
9920
+ * <p>The version ID of the object that the annotation is attached to.</p>
9921
+ * @public
9922
+ */
9923
+ ObjectVersionId?: string | undefined;
9924
+ /**
9925
+ * <p>The date and time the annotation was last modified.</p>
9926
+ * @public
9927
+ */
9928
+ LastModified?: Date | undefined;
9929
+ /**
9930
+ * <p>The size of the annotation payload, in bytes.</p>
9931
+ * @public
9932
+ */
9933
+ ContentLength?: number | undefined;
9934
+ /**
9935
+ * <p>The entity tag of the annotation.</p>
9936
+ * @public
9937
+ */
9938
+ ETag?: string | undefined;
9939
+ /**
9940
+ * <p>The CRC32 checksum of the annotation payload.</p>
9742
9941
  * @public
9743
9942
  */
9744
9943
  ChecksumCRC32?: string | undefined;
9745
9944
  /**
9746
- * <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded
9747
- * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
9748
- * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
9749
- * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
9945
+ * <p>The CRC32C checksum of the annotation payload.</p>
9750
9946
  * @public
9751
9947
  */
9752
9948
  ChecksumCRC32C?: string | undefined;
9753
9949
  /**
9754
- * <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. This checksum is present
9755
- * if the object was uploaded with the <code>CRC64NVME</code> checksum algorithm, or if the object was
9756
- * uploaded without a checksum (and Amazon S3 added the default checksum, <code>CRC64NVME</code>, to the
9757
- * uploaded object). For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9758
- * the <i>Amazon S3 User Guide</i>.</p>
9950
+ * <p>The CRC64NVME checksum of the annotation payload.</p>
9759
9951
  * @public
9760
9952
  */
9761
9953
  ChecksumCRC64NVME?: string | undefined;
9762
9954
  /**
9763
- * <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded
9764
- * with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
9765
- * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
9766
- * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
9955
+ * <p>The SHA1 checksum of the annotation payload.</p>
9767
9956
  * @public
9768
9957
  */
9769
9958
  ChecksumSHA1?: string | undefined;
9770
9959
  /**
9771
- * <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded
9772
- * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
9773
- * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
9774
- * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
9960
+ * <p>The SHA256 checksum of the annotation payload.</p>
9775
9961
  * @public
9776
9962
  */
9777
9963
  ChecksumSHA256?: string | undefined;
9778
9964
  /**
9779
- * <p>The Base64 encoded, 512-bit <code>SHA512</code> digest of the object. This checksum is present
9780
- * if the object was uploaded with the <code>SHA512</code> checksum algorithm. For more information, see
9781
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9782
- * the <i>Amazon S3 User Guide</i>.</p>
9965
+ * <p>The SHA512 checksum of the annotation payload.</p>
9783
9966
  * @public
9784
9967
  */
9785
9968
  ChecksumSHA512?: string | undefined;
9786
9969
  /**
9787
- * <p>The Base64 encoded, 128-bit <code>MD5</code> digest of the object. This checksum is present
9788
- * if the object was uploaded with the <code>MD5</code> checksum algorithm. For more information, see
9789
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9790
- * the <i>Amazon S3 User Guide</i>.</p>
9970
+ * <p>The MD5 checksum of the annotation payload.</p>
9791
9971
  * @public
9792
9972
  */
9793
9973
  ChecksumMD5?: string | undefined;
9794
9974
  /**
9795
- * <p>The Base64 encoded, 64-bit <code>XXHASH64</code> checksum of the object. This checksum is present
9796
- * if the object was uploaded with the <code>XXHASH64</code> checksum algorithm. For more information, see
9797
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9798
- * the <i>Amazon S3 User Guide</i>.</p>
9975
+ * <p>The XXHASH64 checksum of the annotation payload.</p>
9799
9976
  * @public
9800
9977
  */
9801
9978
  ChecksumXXHASH64?: string | undefined;
9802
9979
  /**
9803
- * <p>The Base64 encoded, 64-bit <code>XXHASH3</code> checksum of the object. This checksum is present
9804
- * if the object was uploaded with the <code>XXHASH3</code> checksum algorithm. For more information, see
9805
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9806
- * the <i>Amazon S3 User Guide</i>.</p>
9980
+ * <p>The XXHASH3 checksum of the annotation payload.</p>
9807
9981
  * @public
9808
9982
  */
9809
9983
  ChecksumXXHASH3?: string | undefined;
9810
9984
  /**
9811
- * <p>The Base64 encoded, 128-bit <code>XXHASH128</code> checksum of the object. This checksum is present
9812
- * if the object was uploaded with the <code>XXHASH128</code> checksum algorithm. For more information, see
9813
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
9814
- * the <i>Amazon S3 User Guide</i>.</p>
9985
+ * <p>The XXHASH128 checksum of the annotation payload.</p>
9815
9986
  * @public
9816
9987
  */
9817
9988
  ChecksumXXHASH128?: string | undefined;
9818
9989
  /**
9819
- * <p>The checksum type that is used to calculate the object’s checksum value. For more information, see
9820
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
9821
- * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
9990
+ * <p>The type of checksum used.</p>
9822
9991
  * @public
9823
9992
  */
9824
9993
  ChecksumType?: ChecksumType | undefined;
9825
- }
9826
- /**
9994
+ /**
9995
+ * <p>The server-side encryption algorithm used.</p>
9996
+ * @public
9997
+ */
9998
+ ServerSideEncryption?: ServerSideEncryption | undefined;
9999
+ /**
10000
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
10001
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
10002
+ * Storage Service user guide</i>.</p>
10003
+ * <note>
10004
+ * <p>This functionality is not supported for directory buckets.</p>
10005
+ * </note>
10006
+ * @public
10007
+ */
10008
+ RequestCharged?: RequestCharged | undefined;
10009
+ /**
10010
+ * <p>The replication status of the annotation. Possible values include <code>PENDING</code>, <code>COMPLETED</code>, <code>FAILED</code>, and <code>REPLICA</code>.</p>
10011
+ * @public
10012
+ */
10013
+ ReplicationStatus?: ReplicationStatus | undefined;
10014
+ }
10015
+ /**
10016
+ * @public
10017
+ */
10018
+ export interface GetObjectAnnotationRequest {
10019
+ /**
10020
+ * <p>The name of the bucket that contains the object.</p>
10021
+ * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
10022
+ * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
10023
+ * @public
10024
+ */
10025
+ Bucket: string | undefined;
10026
+ /**
10027
+ * <p>The object key.</p>
10028
+ * @public
10029
+ */
10030
+ Key: string | undefined;
10031
+ /**
10032
+ * <p>The name of the annotation to retrieve.</p>
10033
+ * <p>Length Constraints: Minimum length of 1. Maximum length of 512 bytes.</p>
10034
+ * @public
10035
+ */
10036
+ AnnotationName: string | undefined;
10037
+ /**
10038
+ * <p>The version ID of the object.</p>
10039
+ * @public
10040
+ */
10041
+ VersionId?: string | undefined;
10042
+ /**
10043
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
10044
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
10045
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
10046
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
10047
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
10048
+ * <note>
10049
+ * <p>This functionality is not supported for directory buckets.</p>
10050
+ * </note>
10051
+ * @public
10052
+ */
10053
+ RequestPayer?: RequestPayer | undefined;
10054
+ /**
10055
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with an HTTP 403 (Access Denied) error.</p>
10056
+ * @public
10057
+ */
10058
+ ExpectedBucketOwner?: string | undefined;
10059
+ /**
10060
+ * <p>Set to <code>ENABLED</code> to validate the checksum of the annotation payload on retrieval.</p>
10061
+ * @public
10062
+ */
10063
+ ChecksumMode?: ChecksumMode | undefined;
10064
+ }
10065
+ /**
10066
+ * <p>Contains all the possible checksum or digest values for an object.</p>
10067
+ * @public
10068
+ */
10069
+ export interface Checksum {
10070
+ /**
10071
+ * <p>The Base64 encoded, 32-bit <code>CRC32 checksum</code> of the object. This checksum is only present if the checksum was uploaded
10072
+ * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
10073
+ * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
10074
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
10075
+ * @public
10076
+ */
10077
+ ChecksumCRC32?: string | undefined;
10078
+ /**
10079
+ * <p>The Base64 encoded, 32-bit <code>CRC32C</code> checksum of the object. This checksum is only present if the checksum was uploaded
10080
+ * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
10081
+ * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
10082
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
10083
+ * @public
10084
+ */
10085
+ ChecksumCRC32C?: string | undefined;
10086
+ /**
10087
+ * <p>The Base64 encoded, 64-bit <code>CRC64NVME</code> checksum of the object. This checksum is present
10088
+ * if the object was uploaded with the <code>CRC64NVME</code> checksum algorithm, or if the object was
10089
+ * uploaded without a checksum (and Amazon S3 added the default checksum, <code>CRC64NVME</code>, to the
10090
+ * uploaded object). For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10091
+ * the <i>Amazon S3 User Guide</i>.</p>
10092
+ * @public
10093
+ */
10094
+ ChecksumCRC64NVME?: string | undefined;
10095
+ /**
10096
+ * <p>The Base64 encoded, 160-bit <code>SHA1</code> digest of the object. This checksum is only present if the checksum was uploaded
10097
+ * with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
10098
+ * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
10099
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
10100
+ * @public
10101
+ */
10102
+ ChecksumSHA1?: string | undefined;
10103
+ /**
10104
+ * <p>The Base64 encoded, 256-bit <code>SHA256</code> digest of the object. This checksum is only present if the checksum was uploaded
10105
+ * with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it's a calculation based on the checksum values of each individual part. For more information about how checksums are calculated
10106
+ * with multipart uploads, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums">
10107
+ * Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
10108
+ * @public
10109
+ */
10110
+ ChecksumSHA256?: string | undefined;
10111
+ /**
10112
+ * <p>The Base64 encoded, 512-bit <code>SHA512</code> digest of the object. This checksum is present
10113
+ * if the object was uploaded with the <code>SHA512</code> checksum algorithm. For more information, see
10114
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10115
+ * the <i>Amazon S3 User Guide</i>.</p>
10116
+ * @public
10117
+ */
10118
+ ChecksumSHA512?: string | undefined;
10119
+ /**
10120
+ * <p>The Base64 encoded, 128-bit <code>MD5</code> digest of the object. This checksum is present
10121
+ * if the object was uploaded with the <code>MD5</code> checksum algorithm. For more information, see
10122
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10123
+ * the <i>Amazon S3 User Guide</i>.</p>
10124
+ * @public
10125
+ */
10126
+ ChecksumMD5?: string | undefined;
10127
+ /**
10128
+ * <p>The Base64 encoded, 64-bit <code>XXHASH64</code> checksum of the object. This checksum is present
10129
+ * if the object was uploaded with the <code>XXHASH64</code> checksum algorithm. For more information, see
10130
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10131
+ * the <i>Amazon S3 User Guide</i>.</p>
10132
+ * @public
10133
+ */
10134
+ ChecksumXXHASH64?: string | undefined;
10135
+ /**
10136
+ * <p>The Base64 encoded, 64-bit <code>XXHASH3</code> checksum of the object. This checksum is present
10137
+ * if the object was uploaded with the <code>XXHASH3</code> checksum algorithm. For more information, see
10138
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10139
+ * the <i>Amazon S3 User Guide</i>.</p>
10140
+ * @public
10141
+ */
10142
+ ChecksumXXHASH3?: string | undefined;
10143
+ /**
10144
+ * <p>The Base64 encoded, 128-bit <code>XXHASH128</code> checksum of the object. This checksum is present
10145
+ * if the object was uploaded with the <code>XXHASH128</code> checksum algorithm. For more information, see
10146
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
10147
+ * the <i>Amazon S3 User Guide</i>.</p>
10148
+ * @public
10149
+ */
10150
+ ChecksumXXHASH128?: string | undefined;
10151
+ /**
10152
+ * <p>The checksum type that is used to calculate the object’s checksum value. For more information, see
10153
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
10154
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
10155
+ * @public
10156
+ */
10157
+ ChecksumType?: ChecksumType | undefined;
10158
+ }
10159
+ /**
9827
10160
  * <p>A container for elements related to an individual part.</p>
9828
10161
  * @public
9829
10162
  */
@@ -12001,118 +12334,270 @@ export interface ListMultipartUploadsRequest {
12001
12334
  RequestPayer?: RequestPayer | undefined;
12002
12335
  }
12003
12336
  /**
12004
- * <p>Specifies the restoration status of an object. Objects in certain storage classes must be restored
12005
- * before they can be retrieved. For more information about these storage classes and how to work with
12006
- * archived objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/archived-objects.html">
12007
- * Working with archived objects</a> in the <i>Amazon S3 User Guide</i>.</p>
12008
- * <note>
12009
- * <p>This functionality is not supported for directory buckets. Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p>
12010
- * </note>
12337
+ * <p>Describes a single annotation attached to an object, including its name, last modified time,
12338
+ * size, ETag, checksum algorithm, and replication status. Returned in the response from
12339
+ * <code>ListObjectAnnotations</code>.</p>
12011
12340
  * @public
12012
12341
  */
12013
- export interface RestoreStatus {
12342
+ export interface AnnotationEntry {
12014
12343
  /**
12015
- * <p>Specifies whether the object is currently being restored. If the object restoration is in progress,
12016
- * the header returns the value <code>TRUE</code>. For example:</p>
12017
- * <p>
12018
- * <code>x-amz-optional-object-attributes: IsRestoreInProgress="true"</code>
12019
- * </p>
12020
- * <p>If the object restoration has completed, the header returns the value <code>FALSE</code>. For
12021
- * example:</p>
12022
- * <p>
12023
- * <code>x-amz-optional-object-attributes: IsRestoreInProgress="false",
12024
- * RestoreExpiryDate="2012-12-21T00:00:00.000Z"</code>
12025
- * </p>
12026
- * <p>If the object hasn't been restored, there is no header response.</p>
12344
+ * <p>The name of the annotation.</p>
12027
12345
  * @public
12028
12346
  */
12029
- IsRestoreInProgress?: boolean | undefined;
12347
+ AnnotationName: string | undefined;
12030
12348
  /**
12031
- * <p>Indicates when the restored copy will expire. This value is populated only if the object has already
12032
- * been restored. For example:</p>
12033
- * <p>
12034
- * <code>x-amz-optional-object-attributes: IsRestoreInProgress="false",
12035
- * RestoreExpiryDate="2012-12-21T00:00:00.000Z"</code>
12036
- * </p>
12349
+ * <p>The date and time the annotation was last modified.</p>
12037
12350
  * @public
12038
12351
  */
12039
- RestoreExpiryDate?: Date | undefined;
12352
+ LastModified: Date | undefined;
12353
+ /**
12354
+ * <p>The entity tag of the annotation.</p>
12355
+ * @public
12356
+ */
12357
+ ETag?: string | undefined;
12358
+ /**
12359
+ * <p>The checksum algorithm used for the annotation.</p>
12360
+ * @public
12361
+ */
12362
+ ChecksumAlgorithm?: ChecksumAlgorithm[] | undefined;
12363
+ /**
12364
+ * <p>The size of the annotation payload, in bytes.</p>
12365
+ * @public
12366
+ */
12367
+ Size: number | undefined;
12368
+ /**
12369
+ * <p>The replication status of the annotation.</p>
12370
+ * @public
12371
+ */
12372
+ ReplicationStatus?: ReplicationStatus | undefined;
12040
12373
  }
12041
12374
  /**
12042
- * <p>An object consists of data and its descriptive metadata.</p>
12043
12375
  * @public
12044
12376
  */
12045
- export interface _Object {
12377
+ export interface ListObjectAnnotationsOutput {
12046
12378
  /**
12047
- * <p>The name that you assign to an object. You use the object key to retrieve the object.</p>
12379
+ * <p>The list of annotations attached to the object.</p>
12048
12380
  * @public
12049
12381
  */
12050
- Key?: string | undefined;
12382
+ Annotations?: AnnotationEntry[] | undefined;
12051
12383
  /**
12052
- * <p>Creation date of the object.</p>
12384
+ * <p>The bucket name.</p>
12053
12385
  * @public
12054
12386
  */
12055
- LastModified?: Date | undefined;
12387
+ Bucket?: string | undefined;
12056
12388
  /**
12057
- * <p>The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object,
12058
- * not its metadata. The ETag may or may not be an MD5 digest of the object data. Whether or not it is
12059
- * depends on how the object was created and how it is encrypted as described below:</p>
12060
- * <ul>
12061
- * <li>
12062
- * <p>Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services
12063
- * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest of
12064
- * their object data.</p>
12065
- * </li>
12066
- * <li>
12067
- * <p>Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services
12068
- * Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest of
12069
- * their object data.</p>
12070
- * </li>
12071
- * <li>
12072
- * <p>If an object is created by either the Multipart Upload or Part Copy operation, the ETag is not
12073
- * an MD5 digest, regardless of the method of encryption. If an object is larger than 16 MB, the Amazon Web Services
12074
- * Management Console will upload or copy that object as a Multipart Upload, and therefore the ETag
12075
- * will not be an MD5 digest.</p>
12076
- * </li>
12077
- * </ul>
12078
- * <note>
12079
- * <p>
12080
- * <b>Directory buckets</b> - MD5 is not supported by directory buckets.</p>
12081
- * </note>
12389
+ * <p>The object key.</p>
12082
12390
  * @public
12083
12391
  */
12084
- ETag?: string | undefined;
12392
+ Key?: string | undefined;
12085
12393
  /**
12086
- * <p>The algorithm that was used to create a checksum of the object.</p>
12394
+ * <p>The version ID of the object.</p>
12087
12395
  * @public
12088
12396
  */
12089
- ChecksumAlgorithm?: ChecksumAlgorithm[] | undefined;
12397
+ ObjectVersionId?: string | undefined;
12090
12398
  /**
12091
- * <p>The checksum type that is used to calculate the object’s checksum value. For more information, see
12092
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
12093
- * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
12399
+ * <p>The prefix used to filter the response.</p>
12094
12400
  * @public
12095
12401
  */
12096
- ChecksumType?: ChecksumType | undefined;
12402
+ AnnotationPrefix?: string | undefined;
12097
12403
  /**
12098
- * <p>Size in bytes of the object</p>
12404
+ * <p>The maximum number of annotations returned in the response.</p>
12099
12405
  * @public
12100
12406
  */
12101
- Size?: number | undefined;
12407
+ MaxAnnotationResults?: number | undefined;
12102
12408
  /**
12103
- * <p>The class of storage used to store the object.</p>
12104
- * <note>
12105
- * <p>
12106
- * <b>Directory buckets</b> -
12107
- * Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p>
12108
- * </note>
12409
+ * <p>The number of annotations returned.</p>
12109
12410
  * @public
12110
12411
  */
12111
- StorageClass?: ObjectStorageClass | undefined;
12412
+ AnnotationCount?: number | undefined;
12112
12413
  /**
12113
- * <p>The owner of the object</p>
12114
- * <note>
12115
- * <p>
12414
+ * <p>The continuation token used in this request.</p>
12415
+ * @public
12416
+ */
12417
+ ContinuationToken?: string | undefined;
12418
+ /**
12419
+ * <p>The continuation token to use to retrieve the next page of results.</p>
12420
+ * @public
12421
+ */
12422
+ NextContinuationToken?: string | undefined;
12423
+ /**
12424
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
12425
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
12426
+ * Storage Service user guide</i>.</p>
12427
+ * <note>
12428
+ * <p>This functionality is not supported for directory buckets.</p>
12429
+ * </note>
12430
+ * @public
12431
+ */
12432
+ RequestCharged?: RequestCharged | undefined;
12433
+ }
12434
+ /**
12435
+ * @public
12436
+ */
12437
+ export interface ListObjectAnnotationsRequest {
12438
+ /**
12439
+ * <p>The name of the bucket that contains the object.</p>
12440
+ * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
12441
+ * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
12442
+ * @public
12443
+ */
12444
+ Bucket: string | undefined;
12445
+ /**
12446
+ * <p>The object key.</p>
12447
+ * @public
12448
+ */
12449
+ Key: string | undefined;
12450
+ /**
12451
+ * <p>The version ID of the object.</p>
12452
+ * @public
12453
+ */
12454
+ VersionId?: string | undefined;
12455
+ /**
12456
+ * <p>The maximum number of annotations to return in the response. Maximum is 1,000.</p>
12457
+ * @public
12458
+ */
12459
+ MaxAnnotationResults?: number | undefined;
12460
+ /**
12461
+ * <p>Filter results to annotations whose name begins with the specified prefix.</p>
12462
+ * @public
12463
+ */
12464
+ AnnotationPrefix?: string | undefined;
12465
+ /**
12466
+ * <p>Continuation token returned by a previous request to retrieve the next page.</p>
12467
+ * @public
12468
+ */
12469
+ ContinuationToken?: string | undefined;
12470
+ /**
12471
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
12472
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
12473
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
12474
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
12475
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
12476
+ * <note>
12477
+ * <p>This functionality is not supported for directory buckets.</p>
12478
+ * </note>
12479
+ * @public
12480
+ */
12481
+ RequestPayer?: RequestPayer | undefined;
12482
+ /**
12483
+ * <p>The account ID of the expected bucket owner.</p>
12484
+ * @public
12485
+ */
12486
+ ExpectedBucketOwner?: string | undefined;
12487
+ }
12488
+ /**
12489
+ * <p>Specifies the restoration status of an object. Objects in certain storage classes must be restored
12490
+ * before they can be retrieved. For more information about these storage classes and how to work with
12491
+ * archived objects, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/archived-objects.html">
12492
+ * Working with archived objects</a> in the <i>Amazon S3 User Guide</i>.</p>
12493
+ * <note>
12494
+ * <p>This functionality is not supported for directory buckets. Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p>
12495
+ * </note>
12496
+ * @public
12497
+ */
12498
+ export interface RestoreStatus {
12499
+ /**
12500
+ * <p>Specifies whether the object is currently being restored. If the object restoration is in progress,
12501
+ * the header returns the value <code>TRUE</code>. For example:</p>
12502
+ * <p>
12503
+ * <code>x-amz-optional-object-attributes: IsRestoreInProgress="true"</code>
12504
+ * </p>
12505
+ * <p>If the object restoration has completed, the header returns the value <code>FALSE</code>. For
12506
+ * example:</p>
12507
+ * <p>
12508
+ * <code>x-amz-optional-object-attributes: IsRestoreInProgress="false",
12509
+ * RestoreExpiryDate="2012-12-21T00:00:00.000Z"</code>
12510
+ * </p>
12511
+ * <p>If the object hasn't been restored, there is no header response.</p>
12512
+ * @public
12513
+ */
12514
+ IsRestoreInProgress?: boolean | undefined;
12515
+ /**
12516
+ * <p>Indicates when the restored copy will expire. This value is populated only if the object has already
12517
+ * been restored. For example:</p>
12518
+ * <p>
12519
+ * <code>x-amz-optional-object-attributes: IsRestoreInProgress="false",
12520
+ * RestoreExpiryDate="2012-12-21T00:00:00.000Z"</code>
12521
+ * </p>
12522
+ * @public
12523
+ */
12524
+ RestoreExpiryDate?: Date | undefined;
12525
+ }
12526
+ /**
12527
+ * <p>An object consists of data and its descriptive metadata.</p>
12528
+ * @public
12529
+ */
12530
+ export interface _Object {
12531
+ /**
12532
+ * <p>The name that you assign to an object. You use the object key to retrieve the object.</p>
12533
+ * @public
12534
+ */
12535
+ Key?: string | undefined;
12536
+ /**
12537
+ * <p>Creation date of the object.</p>
12538
+ * @public
12539
+ */
12540
+ LastModified?: Date | undefined;
12541
+ /**
12542
+ * <p>The entity tag is a hash of the object. The ETag reflects changes only to the contents of an object,
12543
+ * not its metadata. The ETag may or may not be an MD5 digest of the object data. Whether or not it is
12544
+ * depends on how the object was created and how it is encrypted as described below:</p>
12545
+ * <ul>
12546
+ * <li>
12547
+ * <p>Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services
12548
+ * Management Console, and are encrypted by SSE-S3 or plaintext, have ETags that are an MD5 digest of
12549
+ * their object data.</p>
12550
+ * </li>
12551
+ * <li>
12552
+ * <p>Objects created by the PUT Object, POST Object, or Copy operation, or through the Amazon Web Services
12553
+ * Management Console, and are encrypted by SSE-C or SSE-KMS, have ETags that are not an MD5 digest of
12554
+ * their object data.</p>
12555
+ * </li>
12556
+ * <li>
12557
+ * <p>If an object is created by either the Multipart Upload or Part Copy operation, the ETag is not
12558
+ * an MD5 digest, regardless of the method of encryption. If an object is larger than 16 MB, the Amazon Web Services
12559
+ * Management Console will upload or copy that object as a Multipart Upload, and therefore the ETag
12560
+ * will not be an MD5 digest.</p>
12561
+ * </li>
12562
+ * </ul>
12563
+ * <note>
12564
+ * <p>
12565
+ * <b>Directory buckets</b> - MD5 is not supported by directory buckets.</p>
12566
+ * </note>
12567
+ * @public
12568
+ */
12569
+ ETag?: string | undefined;
12570
+ /**
12571
+ * <p>The algorithm that was used to create a checksum of the object.</p>
12572
+ * @public
12573
+ */
12574
+ ChecksumAlgorithm?: ChecksumAlgorithm[] | undefined;
12575
+ /**
12576
+ * <p>The checksum type that is used to calculate the object’s checksum value. For more information, see
12577
+ * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking
12578
+ * object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
12579
+ * @public
12580
+ */
12581
+ ChecksumType?: ChecksumType | undefined;
12582
+ /**
12583
+ * <p>Size in bytes of the object</p>
12584
+ * @public
12585
+ */
12586
+ Size?: number | undefined;
12587
+ /**
12588
+ * <p>The class of storage used to store the object.</p>
12589
+ * <note>
12590
+ * <p>
12591
+ * <b>Directory buckets</b> -
12592
+ * Directory buckets only support <code>EXPRESS_ONEZONE</code> (the S3 Express One Zone storage class) in Availability Zones and <code>ONEZONE_IA</code> (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.</p>
12593
+ * </note>
12594
+ * @public
12595
+ */
12596
+ StorageClass?: ObjectStorageClass | undefined;
12597
+ /**
12598
+ * <p>The owner of the object</p>
12599
+ * <note>
12600
+ * <p>
12116
12601
  * <b>Directory buckets</b> - The bucket owner is returned as the
12117
12602
  * object owner.</p>
12118
12603
  * </note>
@@ -15148,156 +15633,87 @@ export interface PutObjectAclRequest {
15148
15633
  /**
15149
15634
  * @public
15150
15635
  */
15151
- export interface PutObjectLegalHoldOutput {
15636
+ export interface PutObjectAnnotationOutput {
15152
15637
  /**
15153
- * <p>If present, indicates that the requester was successfully charged for the request. For more
15154
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
15155
- * Storage Service user guide</i>.</p>
15156
- * <note>
15157
- * <p>This functionality is not supported for directory buckets.</p>
15158
- * </note>
15638
+ * <p>The object key.</p>
15159
15639
  * @public
15160
15640
  */
15161
- RequestCharged?: RequestCharged | undefined;
15162
- }
15163
- /**
15164
- * @public
15165
- */
15166
- export interface PutObjectLegalHoldRequest {
15641
+ Key?: string | undefined;
15167
15642
  /**
15168
- * <p>The bucket name containing the object that you want to place a legal hold on. </p>
15169
- * <p>
15170
- * <b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p>
15171
- * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15172
- * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15643
+ * <p>The name of the annotation.</p>
15173
15644
  * @public
15174
15645
  */
15175
- Bucket: string | undefined;
15646
+ AnnotationName?: string | undefined;
15176
15647
  /**
15177
- * <p>The key name for the object that you want to place a legal hold on.</p>
15648
+ * <p>The version ID of the object that the annotation was attached to.</p>
15178
15649
  * @public
15179
15650
  */
15180
- Key: string | undefined;
15651
+ ObjectVersionId?: string | undefined;
15181
15652
  /**
15182
- * <p>Container element for the legal hold configuration you want to apply to the specified object.</p>
15653
+ * <p>The entity tag of the annotation.</p>
15183
15654
  * @public
15184
15655
  */
15185
- LegalHold?: ObjectLockLegalHold | undefined;
15656
+ ETag?: string | undefined;
15186
15657
  /**
15187
- * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15188
- * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15189
- * Pays enabled, the requester will pay for the corresponding charges. For information about
15190
- * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15191
- * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15192
- * <note>
15193
- * <p>This functionality is not supported for directory buckets.</p>
15194
- * </note>
15658
+ * <p>The CRC32 checksum of the stored annotation.</p>
15195
15659
  * @public
15196
15660
  */
15197
- RequestPayer?: RequestPayer | undefined;
15661
+ ChecksumCRC32?: string | undefined;
15198
15662
  /**
15199
- * <p>The version ID of the object that you want to place a legal hold on.</p>
15663
+ * <p>The CRC32C checksum of the stored annotation.</p>
15200
15664
  * @public
15201
15665
  */
15202
- VersionId?: string | undefined;
15666
+ ChecksumCRC32C?: string | undefined;
15203
15667
  /**
15204
- * <p>The MD5 hash for the request body.</p>
15205
- * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15668
+ * <p>The CRC64NVME checksum of the stored annotation.</p>
15206
15669
  * @public
15207
15670
  */
15208
- ContentMD5?: string | undefined;
15671
+ ChecksumCRC64NVME?: string | undefined;
15209
15672
  /**
15210
- * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
15211
- * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
15212
- * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
15213
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
15214
- * the <i>Amazon S3 User Guide</i>.</p>
15215
- * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
15216
- * parameter.</p>
15673
+ * <p>The SHA1 checksum of the stored annotation.</p>
15217
15674
  * @public
15218
15675
  */
15219
- ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15676
+ ChecksumSHA1?: string | undefined;
15220
15677
  /**
15221
- * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15678
+ * <p>The SHA256 checksum of the stored annotation.</p>
15222
15679
  * @public
15223
15680
  */
15224
- ExpectedBucketOwner?: string | undefined;
15225
- }
15226
- /**
15227
- * @public
15228
- */
15229
- export interface PutObjectLockConfigurationOutput {
15681
+ ChecksumSHA256?: string | undefined;
15230
15682
  /**
15231
- * <p>If present, indicates that the requester was successfully charged for the request. For more
15232
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
15233
- * Storage Service user guide</i>.</p>
15234
- * <note>
15235
- * <p>This functionality is not supported for directory buckets.</p>
15236
- * </note>
15683
+ * <p>The SHA512 checksum of the stored annotation.</p>
15237
15684
  * @public
15238
15685
  */
15239
- RequestCharged?: RequestCharged | undefined;
15240
- }
15241
- /**
15242
- * @public
15243
- */
15244
- export interface PutObjectLockConfigurationRequest {
15686
+ ChecksumSHA512?: string | undefined;
15245
15687
  /**
15246
- * <p>The bucket whose Object Lock configuration you want to create or replace.</p>
15247
- * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15248
- * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15688
+ * <p>The MD5 checksum of the stored annotation.</p>
15249
15689
  * @public
15250
15690
  */
15251
- Bucket: string | undefined;
15691
+ ChecksumMD5?: string | undefined;
15252
15692
  /**
15253
- * <p>The Object Lock configuration that you want to apply to the specified bucket.</p>
15693
+ * <p>The XXHASH64 checksum of the stored annotation.</p>
15254
15694
  * @public
15255
15695
  */
15256
- ObjectLockConfiguration?: ObjectLockConfiguration | undefined;
15696
+ ChecksumXXHASH64?: string | undefined;
15257
15697
  /**
15258
- * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15259
- * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15260
- * Pays enabled, the requester will pay for the corresponding charges. For information about
15261
- * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15262
- * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15263
- * <note>
15264
- * <p>This functionality is not supported for directory buckets.</p>
15265
- * </note>
15698
+ * <p>The XXHASH3 checksum of the stored annotation.</p>
15266
15699
  * @public
15267
15700
  */
15268
- RequestPayer?: RequestPayer | undefined;
15701
+ ChecksumXXHASH3?: string | undefined;
15269
15702
  /**
15270
- * <p>A token to allow Object Lock to be enabled for an existing bucket.</p>
15703
+ * <p>The XXHASH128 checksum of the stored annotation.</p>
15271
15704
  * @public
15272
15705
  */
15273
- Token?: string | undefined;
15706
+ ChecksumXXHASH128?: string | undefined;
15274
15707
  /**
15275
- * <p>The MD5 hash for the request body.</p>
15276
- * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15708
+ * <p>The type of checksum used.</p>
15277
15709
  * @public
15278
15710
  */
15279
- ContentMD5?: string | undefined;
15280
- /**
15281
- * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
15282
- * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
15283
- * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
15284
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
15285
- * the <i>Amazon S3 User Guide</i>.</p>
15286
- * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
15287
- * parameter.</p>
15288
- * @public
15289
- */
15290
- ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15711
+ ChecksumType?: ChecksumType | undefined;
15291
15712
  /**
15292
- * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15713
+ * <p>The server-side encryption algorithm used to encrypt the annotation.</p>
15293
15714
  * @public
15294
15715
  */
15295
- ExpectedBucketOwner?: string | undefined;
15296
- }
15297
- /**
15298
- * @public
15299
- */
15300
- export interface PutObjectRetentionOutput {
15716
+ ServerSideEncryption?: ServerSideEncryption | undefined;
15301
15717
  /**
15302
15718
  * <p>If present, indicates that the requester was successfully charged for the request. For more
15303
15719
  * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
@@ -15312,67 +15728,117 @@ export interface PutObjectRetentionOutput {
15312
15728
  /**
15313
15729
  * @public
15314
15730
  */
15315
- export interface PutObjectRetentionRequest {
15731
+ export interface PutObjectAnnotationRequest {
15316
15732
  /**
15317
- * <p>The bucket name that contains the object you want to apply this Object Retention configuration to. </p>
15318
- * <p>
15319
- * <b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p>
15733
+ * <p>The name of the bucket that contains the object.</p>
15320
15734
  * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15321
15735
  * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15322
15736
  * @public
15323
15737
  */
15324
15738
  Bucket: string | undefined;
15325
15739
  /**
15326
- * <p>The key name for the object that you want to apply this Object Retention configuration to.</p>
15740
+ * <p>The object key.</p>
15327
15741
  * @public
15328
15742
  */
15329
15743
  Key: string | undefined;
15330
15744
  /**
15331
- * <p>The container element for the Object Retention configuration.</p>
15745
+ * <p>The version ID of the object to attach the annotation to.</p>
15332
15746
  * @public
15333
15747
  */
15334
- Retention?: ObjectLockRetention | undefined;
15748
+ VersionId?: string | undefined;
15335
15749
  /**
15336
- * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15337
- * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15338
- * Pays enabled, the requester will pay for the corresponding charges. For information about
15339
- * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15340
- * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15341
- * <note>
15342
- * <p>This functionality is not supported for directory buckets.</p>
15343
- * </note>
15750
+ * <p>The name of the annotation.</p>
15751
+ * <p>Length Constraints: Minimum length of 1. Maximum length of 512 bytes.</p>
15344
15752
  * @public
15345
15753
  */
15346
- RequestPayer?: RequestPayer | undefined;
15754
+ AnnotationName: string | undefined;
15347
15755
  /**
15348
- * <p>The version ID for the object that you want to apply this Object Retention configuration to.</p>
15756
+ * <p>The annotation payload. Must be between 1 byte and 1 MiB in size, and must be valid UTF-8
15757
+ * encoded text. If the payload contains invalid UTF-8 bytes, the request fails with HTTP 415
15758
+ * (Unsupported Media Type). To store binary data, encode the payload using Base64 before
15759
+ * uploading.</p>
15349
15760
  * @public
15350
15761
  */
15351
- VersionId?: string | undefined;
15762
+ AnnotationPayload: StreamingBlobTypes | undefined;
15352
15763
  /**
15353
- * <p>Indicates whether this action should bypass Governance-mode restrictions.</p>
15764
+ * <p>If specified, the operation only succeeds if the object's ETag matches the provided value.</p>
15354
15765
  * @public
15355
15766
  */
15356
- BypassGovernanceRetention?: boolean | undefined;
15767
+ ObjectIfMatch?: string | undefined;
15357
15768
  /**
15358
- * <p>The MD5 hash for the request body.</p>
15359
- * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15769
+ * <p>The checksum algorithm to use. Supported values: <code>CRC32</code>, <code>CRC32C</code>, <code>CRC64NVME</code>, <code>SHA1</code>, <code>SHA256</code>, <code>SHA512</code>, <code>MD5</code>, <code>XXHASH64</code>, <code>XXHASH3</code>, <code>XXHASH128</code>.</p>
15770
+ * @public
15771
+ */
15772
+ ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15773
+ /**
15774
+ * <p>Base64-encoded CRC32 checksum of the annotation payload.</p>
15775
+ * @public
15776
+ */
15777
+ ChecksumCRC32?: string | undefined;
15778
+ /**
15779
+ * <p>Base64-encoded CRC32C checksum of the annotation payload.</p>
15780
+ * @public
15781
+ */
15782
+ ChecksumCRC32C?: string | undefined;
15783
+ /**
15784
+ * <p>Base64-encoded CRC64NVME checksum of the annotation payload.</p>
15785
+ * @public
15786
+ */
15787
+ ChecksumCRC64NVME?: string | undefined;
15788
+ /**
15789
+ * <p>Base64-encoded SHA1 checksum of the annotation payload.</p>
15790
+ * @public
15791
+ */
15792
+ ChecksumSHA1?: string | undefined;
15793
+ /**
15794
+ * <p>Base64-encoded SHA256 checksum of the annotation payload.</p>
15795
+ * @public
15796
+ */
15797
+ ChecksumSHA256?: string | undefined;
15798
+ /**
15799
+ * <p>Base64-encoded SHA512 checksum of the annotation payload.</p>
15800
+ * @public
15801
+ */
15802
+ ChecksumSHA512?: string | undefined;
15803
+ /**
15804
+ * <p>Base64-encoded MD5 checksum of the annotation payload.</p>
15805
+ * @public
15806
+ */
15807
+ ChecksumMD5?: string | undefined;
15808
+ /**
15809
+ * <p>Base64-encoded XXHASH64 checksum of the annotation payload.</p>
15810
+ * @public
15811
+ */
15812
+ ChecksumXXHASH64?: string | undefined;
15813
+ /**
15814
+ * <p>Base64-encoded XXHASH3 checksum of the annotation payload.</p>
15815
+ * @public
15816
+ */
15817
+ ChecksumXXHASH3?: string | undefined;
15818
+ /**
15819
+ * <p>Base64-encoded XXHASH128 checksum of the annotation payload.</p>
15820
+ * @public
15821
+ */
15822
+ ChecksumXXHASH128?: string | undefined;
15823
+ /**
15824
+ * <p>Base64-encoded MD5 digest of the message.</p>
15360
15825
  * @public
15361
15826
  */
15362
15827
  ContentMD5?: string | undefined;
15363
15828
  /**
15364
- * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
15365
- * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
15366
- * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
15367
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
15368
- * the <i>Amazon S3 User Guide</i>.</p>
15369
- * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
15370
- * parameter.</p>
15829
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15830
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15831
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
15832
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15833
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15834
+ * <note>
15835
+ * <p>This functionality is not supported for directory buckets.</p>
15836
+ * </note>
15371
15837
  * @public
15372
15838
  */
15373
- ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15839
+ RequestPayer?: RequestPayer | undefined;
15374
15840
  /**
15375
- * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15841
+ * <p>The account ID of the expected bucket owner. If the bucket is owned by a different account, the request fails with an HTTP 403 (Access Denied) error.</p>
15376
15842
  * @public
15377
15843
  */
15378
15844
  ExpectedBucketOwner?: string | undefined;
@@ -15380,37 +15846,55 @@ export interface PutObjectRetentionRequest {
15380
15846
  /**
15381
15847
  * @public
15382
15848
  */
15383
- export interface PutObjectTaggingOutput {
15849
+ export interface PutObjectLegalHoldOutput {
15384
15850
  /**
15385
- * <p>The versionId of the object the tag-set was added to.</p>
15851
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
15852
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
15853
+ * Storage Service user guide</i>.</p>
15854
+ * <note>
15855
+ * <p>This functionality is not supported for directory buckets.</p>
15856
+ * </note>
15386
15857
  * @public
15387
15858
  */
15388
- VersionId?: string | undefined;
15859
+ RequestCharged?: RequestCharged | undefined;
15389
15860
  }
15390
15861
  /**
15391
15862
  * @public
15392
15863
  */
15393
- export interface PutObjectTaggingRequest {
15864
+ export interface PutObjectLegalHoldRequest {
15394
15865
  /**
15395
- * <p>The bucket name containing the object. </p>
15866
+ * <p>The bucket name containing the object that you want to place a legal hold on. </p>
15396
15867
  * <p>
15397
15868
  * <b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p>
15398
- * <p>
15399
- * <b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
15400
- * form <code>
15401
- * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
15402
15869
  * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15403
15870
  * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15404
15871
  * @public
15405
15872
  */
15406
15873
  Bucket: string | undefined;
15407
15874
  /**
15408
- * <p>Name of the object key.</p>
15875
+ * <p>The key name for the object that you want to place a legal hold on.</p>
15409
15876
  * @public
15410
15877
  */
15411
15878
  Key: string | undefined;
15412
15879
  /**
15413
- * <p>The versionId of the object that the tag-set will be added to.</p>
15880
+ * <p>Container element for the legal hold configuration you want to apply to the specified object.</p>
15881
+ * @public
15882
+ */
15883
+ LegalHold?: ObjectLockLegalHold | undefined;
15884
+ /**
15885
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15886
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15887
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
15888
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15889
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15890
+ * <note>
15891
+ * <p>This functionality is not supported for directory buckets.</p>
15892
+ * </note>
15893
+ * @public
15894
+ */
15895
+ RequestPayer?: RequestPayer | undefined;
15896
+ /**
15897
+ * <p>The version ID of the object that you want to place a legal hold on.</p>
15414
15898
  * @public
15415
15899
  */
15416
15900
  VersionId?: string | undefined;
@@ -15431,37 +15915,62 @@ export interface PutObjectTaggingRequest {
15431
15915
  * @public
15432
15916
  */
15433
15917
  ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15434
- /**
15435
- * <p>Container for the <code>TagSet</code> and <code>Tag</code> elements</p>
15436
- * @public
15437
- */
15438
- Tagging: Tagging | undefined;
15439
15918
  /**
15440
15919
  * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15441
15920
  * @public
15442
15921
  */
15443
15922
  ExpectedBucketOwner?: string | undefined;
15923
+ }
15924
+ /**
15925
+ * @public
15926
+ */
15927
+ export interface PutObjectLockConfigurationOutput {
15444
15928
  /**
15445
- * <p>Confirms that the requester knows that she or he will be charged for the tagging object
15446
- * request. Bucket owners need not specify this parameter in their requests.</p>
15929
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
15930
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
15931
+ * Storage Service user guide</i>.</p>
15932
+ * <note>
15933
+ * <p>This functionality is not supported for directory buckets.</p>
15934
+ * </note>
15447
15935
  * @public
15448
15936
  */
15449
- RequestPayer?: RequestPayer | undefined;
15937
+ RequestCharged?: RequestCharged | undefined;
15450
15938
  }
15451
15939
  /**
15452
15940
  * @public
15453
15941
  */
15454
- export interface PutPublicAccessBlockRequest {
15942
+ export interface PutObjectLockConfigurationRequest {
15455
15943
  /**
15456
- * <p>The name of the Amazon S3 bucket whose <code>PublicAccessBlock</code> configuration you want to
15457
- * set.</p>
15944
+ * <p>The bucket whose Object Lock configuration you want to create or replace.</p>
15458
15945
  * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15459
15946
  * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15460
15947
  * @public
15461
15948
  */
15462
15949
  Bucket: string | undefined;
15463
15950
  /**
15464
- * <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
15951
+ * <p>The Object Lock configuration that you want to apply to the specified bucket.</p>
15952
+ * @public
15953
+ */
15954
+ ObjectLockConfiguration?: ObjectLockConfiguration | undefined;
15955
+ /**
15956
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
15957
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
15958
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
15959
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
15960
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15961
+ * <note>
15962
+ * <p>This functionality is not supported for directory buckets.</p>
15963
+ * </note>
15964
+ * @public
15965
+ */
15966
+ RequestPayer?: RequestPayer | undefined;
15967
+ /**
15968
+ * <p>A token to allow Object Lock to be enabled for an existing bucket.</p>
15969
+ * @public
15970
+ */
15971
+ Token?: string | undefined;
15972
+ /**
15973
+ * <p>The MD5 hash for the request body.</p>
15465
15974
  * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15466
15975
  * @public
15467
15976
  */
@@ -15477,13 +15986,6 @@ export interface PutPublicAccessBlockRequest {
15477
15986
  * @public
15478
15987
  */
15479
15988
  ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15480
- /**
15481
- * <p>The <code>PublicAccessBlock</code> configuration that you want to apply to this Amazon S3
15482
- * bucket. You can enable the configuration options in any combination. For more information
15483
- * about when Amazon S3 considers a bucket or object public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p>
15484
- * @public
15485
- */
15486
- PublicAccessBlockConfiguration: PublicAccessBlockConfiguration | undefined;
15487
15989
  /**
15488
15990
  * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15489
15991
  * @public
@@ -15493,322 +15995,196 @@ export interface PutPublicAccessBlockRequest {
15493
15995
  /**
15494
15996
  * @public
15495
15997
  */
15496
- export interface RenameObjectOutput {
15998
+ export interface PutObjectRetentionOutput {
15999
+ /**
16000
+ * <p>If present, indicates that the requester was successfully charged for the request. For more
16001
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
16002
+ * Storage Service user guide</i>.</p>
16003
+ * <note>
16004
+ * <p>This functionality is not supported for directory buckets.</p>
16005
+ * </note>
16006
+ * @public
16007
+ */
16008
+ RequestCharged?: RequestCharged | undefined;
15497
16009
  }
15498
16010
  /**
15499
16011
  * @public
15500
16012
  */
15501
- export interface RenameObjectRequest {
16013
+ export interface PutObjectRetentionRequest {
15502
16014
  /**
15503
- * <p>The bucket name of the directory bucket containing the object.</p>
15504
- * <p> You must use virtual-hosted-style requests in the format
15505
- * <code>Bucket-name.s3express-zone-id.region-code.amazonaws.com</code>. Path-style requests are not
15506
- * supported. Directory bucket names must be unique in the chosen Availability Zone. Bucket names must
15507
- * follow the format <code>bucket-base-name--zone-id--x-s3 </code> (for example,
15508
- * <code>amzn-s3-demo-bucket--usw2-az1--x-s3</code>). For information about bucket naming restrictions, see
15509
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html">Directory bucket naming rules</a> in the <i>Amazon S3 User Guide</i>.</p>
16015
+ * <p>The bucket name that contains the object you want to apply this Object Retention configuration to. </p>
16016
+ * <p>
16017
+ * <b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p>
15510
16018
  * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
15511
16019
  * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15512
16020
  * @public
15513
16021
  */
15514
16022
  Bucket: string | undefined;
15515
16023
  /**
15516
- * <p>Key name of the object to rename.</p>
16024
+ * <p>The key name for the object that you want to apply this Object Retention configuration to.</p>
15517
16025
  * @public
15518
16026
  */
15519
16027
  Key: string | undefined;
15520
16028
  /**
15521
- * <p>Specifies the source for the rename operation. The value must be URL encoded.</p>
15522
- * @public
15523
- */
15524
- RenameSource: string | undefined;
15525
- /**
15526
- * <p>Renames the object only if the ETag (entity tag) value provided during the operation matches the
15527
- * ETag of the object in S3. The <code>If-Match</code> header field makes the request method conditional on
15528
- * ETags. If the ETag values do not match, the operation returns a <code>412 Precondition Failed</code>
15529
- * error.</p>
15530
- * <p>Expects the ETag value as a string.</p>
15531
- * @public
15532
- */
15533
- DestinationIfMatch?: string | undefined;
15534
- /**
15535
- * <p> Renames the object only if the destination does not already exist in the specified directory
15536
- * bucket. If the object does exist when you send a request with <code>If-None-Match:*</code>, the S3 API
15537
- * will return a <code>412 Precondition Failed</code> error, preventing an overwrite. The
15538
- * <code>If-None-Match</code> header prevents overwrites of existing data by validating that there's not
15539
- * an object with the same key name already in your directory bucket.</p>
15540
- * <p> Expects the <code>*</code> character (asterisk).</p>
15541
- * @public
15542
- */
15543
- DestinationIfNoneMatch?: string | undefined;
15544
- /**
15545
- * <p>Renames the object if the destination exists and if it has been modified since the specified
15546
- * time.</p>
15547
- * @public
15548
- */
15549
- DestinationIfModifiedSince?: Date | undefined;
15550
- /**
15551
- * <p>Renames the object if it hasn't been modified since the specified time.</p>
15552
- * @public
15553
- */
15554
- DestinationIfUnmodifiedSince?: Date | undefined;
15555
- /**
15556
- * <p>Renames the object if the source exists and if its entity tag (ETag) matches the specified ETag.
15557
- * </p>
15558
- * @public
15559
- */
15560
- SourceIfMatch?: string | undefined;
15561
- /**
15562
- * <p>Renames the object if the source exists and if its entity tag (ETag) is different than the specified
15563
- * ETag. If an asterisk (<code>*</code>) character is provided, the operation will fail and return a
15564
- * <code>412 Precondition Failed</code> error. </p>
15565
- * @public
15566
- */
15567
- SourceIfNoneMatch?: string | undefined;
15568
- /**
15569
- * <p>Renames the object if the source exists and if it has been modified since the specified time.</p>
15570
- * @public
15571
- */
15572
- SourceIfModifiedSince?: Date | undefined;
15573
- /**
15574
- * <p>Renames the object if the source exists and hasn't been modified since the specified time.</p>
15575
- * @public
15576
- */
15577
- SourceIfUnmodifiedSince?: Date | undefined;
15578
- /**
15579
- * <p> A unique string with a max of 64 ASCII characters in the ASCII range of 33 - 126.</p>
15580
- * <note>
15581
- * <p>
15582
- * <code>RenameObject</code> supports idempotency using a client token. To make an idempotent API request
15583
- * using <code>RenameObject</code>, specify a client token in the request. You should not reuse the same
15584
- * client token for other API requests. If you retry a request that completed successfully using the same
15585
- * client token and the same parameters, the retry succeeds without performing any further actions. If
15586
- * you retry a successful request using the same client token, but one or more of the parameters are
15587
- * different, the retry fails and an <code>IdempotentParameterMismatch</code> error is returned. </p>
15588
- * </note>
16029
+ * <p>The container element for the Object Retention configuration.</p>
15589
16030
  * @public
15590
16031
  */
15591
- ClientToken?: string | undefined;
15592
- }
15593
- /**
15594
- * @public
15595
- */
15596
- export interface RestoreObjectOutput {
16032
+ Retention?: ObjectLockRetention | undefined;
15597
16033
  /**
15598
- * <p>If present, indicates that the requester was successfully charged for the request. For more
15599
- * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/RequesterPaysBuckets.html">Using Requester Pays buckets for storage transfers and usage</a> in the <i>Amazon Simple
15600
- * Storage Service user guide</i>.</p>
16034
+ * <p>Confirms that the requester knows that they will be charged for the request. Bucket owners need not
16035
+ * specify this parameter in their requests. If either the source or destination S3 bucket has Requester
16036
+ * Pays enabled, the requester will pay for the corresponding charges. For information about
16037
+ * downloading objects from Requester Pays buckets, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html">Downloading Objects in Requester Pays
16038
+ * Buckets</a> in the <i>Amazon S3 User Guide</i>.</p>
15601
16039
  * <note>
15602
16040
  * <p>This functionality is not supported for directory buckets.</p>
15603
16041
  * </note>
15604
16042
  * @public
15605
16043
  */
15606
- RequestCharged?: RequestCharged | undefined;
16044
+ RequestPayer?: RequestPayer | undefined;
15607
16045
  /**
15608
- * <p>Indicates the path in the provided S3 output location where Select results will be restored
15609
- * to.</p>
16046
+ * <p>The version ID for the object that you want to apply this Object Retention configuration to.</p>
15610
16047
  * @public
15611
16048
  */
15612
- RestoreOutputPath?: string | undefined;
15613
- }
15614
- /**
15615
- * <p>Container for S3 Glacier job parameters.</p>
15616
- * @public
15617
- */
15618
- export interface GlacierJobParameters {
16049
+ VersionId?: string | undefined;
15619
16050
  /**
15620
- * <p>Retrieval tier at which the restore will be processed.</p>
16051
+ * <p>Indicates whether this action should bypass Governance-mode restrictions.</p>
15621
16052
  * @public
15622
16053
  */
15623
- Tier: Tier | undefined;
15624
- }
15625
- /**
15626
- * <p>Contains the type of server-side encryption used.</p>
15627
- * @public
15628
- */
15629
- export interface Encryption {
16054
+ BypassGovernanceRetention?: boolean | undefined;
15630
16055
  /**
15631
- * <p>The server-side encryption algorithm used when storing job results in Amazon S3 (for example, AES256,
15632
- * <code>aws:kms</code>).</p>
16056
+ * <p>The MD5 hash for the request body.</p>
16057
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15633
16058
  * @public
15634
16059
  */
15635
- EncryptionType: ServerSideEncryption | undefined;
16060
+ ContentMD5?: string | undefined;
15636
16061
  /**
15637
- * <p>If the encryption type is <code>aws:kms</code>, this optional value specifies the ID of the
15638
- * symmetric encryption customer managed key to use for encryption of job results. Amazon S3 only supports symmetric
15639
- * encryption KMS keys. For more information, see <a href="https://docs.aws.amazon.com/kms/latest/developerguide/symmetric-asymmetric.html">Asymmetric keys in KMS</a> in the
15640
- * <i>Amazon Web Services Key Management Service Developer Guide</i>.</p>
16062
+ * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
16063
+ * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
16064
+ * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
16065
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
16066
+ * the <i>Amazon S3 User Guide</i>.</p>
16067
+ * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
16068
+ * parameter.</p>
15641
16069
  * @public
15642
16070
  */
15643
- KMSKeyId?: string | undefined;
16071
+ ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15644
16072
  /**
15645
- * <p>If the encryption type is <code>aws:kms</code>, this optional value can be used to specify the
15646
- * encryption context for the restore results.</p>
16073
+ * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15647
16074
  * @public
15648
16075
  */
15649
- KMSContext?: string | undefined;
16076
+ ExpectedBucketOwner?: string | undefined;
15650
16077
  }
15651
16078
  /**
15652
- * <p>A metadata key-value pair to store with an object.</p>
15653
16079
  * @public
15654
16080
  */
15655
- export interface MetadataEntry {
15656
- /**
15657
- * <p>Name of the object.</p>
15658
- * @public
15659
- */
15660
- Name?: string | undefined;
16081
+ export interface PutObjectTaggingOutput {
15661
16082
  /**
15662
- * <p>Value of the object.</p>
16083
+ * <p>The versionId of the object the tag-set was added to.</p>
15663
16084
  * @public
15664
16085
  */
15665
- Value?: string | undefined;
16086
+ VersionId?: string | undefined;
15666
16087
  }
15667
16088
  /**
15668
- * <p>Describes an Amazon S3 location that will receive the results of the restore request.</p>
15669
16089
  * @public
15670
16090
  */
15671
- export interface S3Location {
15672
- /**
15673
- * <p>The name of the bucket where the restore results will be placed.</p>
15674
- * @public
15675
- */
15676
- BucketName: string | undefined;
16091
+ export interface PutObjectTaggingRequest {
15677
16092
  /**
15678
- * <p>The prefix that is prepended to the restore results for this request.</p>
16093
+ * <p>The bucket name containing the object. </p>
16094
+ * <p>
16095
+ * <b>Access points</b> - When you use this action with an access point for general purpose buckets, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When you use this action with an access point for directory buckets, you must provide the access point name in place of the bucket name. When using the access point ARN, you must direct requests to the access point hostname. The access point hostname takes the form <i>AccessPointName</i>-<i>AccountId</i>.s3-accesspoint.<i>Region</i>.amazonaws.com. When using this action with an access point through the Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html">Using access points</a> in the <i>Amazon S3 User Guide</i>.</p>
16096
+ * <p>
16097
+ * <b>S3 on Outposts</b> - When you use this action with S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the
16098
+ * form <code>
16099
+ * <i>AccessPointName</i>-<i>AccountId</i>.<i>outpostID</i>.s3-outposts.<i>Region</i>.amazonaws.com</code>. When you use this action with S3 on Outposts, the destination bucket must be the Outposts access point ARN or the access point alias. For more information about S3 on Outposts, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html">What is S3 on Outposts?</a> in the <i>Amazon S3 User Guide</i>.</p>
16100
+ * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
16101
+ * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15679
16102
  * @public
15680
16103
  */
15681
- Prefix: string | undefined;
16104
+ Bucket: string | undefined;
15682
16105
  /**
15683
- * <p>Contains the type of server-side encryption used.</p>
16106
+ * <p>Name of the object key.</p>
15684
16107
  * @public
15685
16108
  */
15686
- Encryption?: Encryption | undefined;
16109
+ Key: string | undefined;
15687
16110
  /**
15688
- * <p>The canned ACL to apply to the restore results.</p>
16111
+ * <p>The versionId of the object that the tag-set will be added to.</p>
15689
16112
  * @public
15690
16113
  */
15691
- CannedACL?: ObjectCannedACL | undefined;
16114
+ VersionId?: string | undefined;
15692
16115
  /**
15693
- * <p>A list of grants that control access to the staged results.</p>
16116
+ * <p>The MD5 hash for the request body.</p>
16117
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15694
16118
  * @public
15695
16119
  */
15696
- AccessControlList?: Grant[] | undefined;
16120
+ ContentMD5?: string | undefined;
15697
16121
  /**
15698
- * <p>The tag-set that is applied to the restore results.</p>
16122
+ * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
16123
+ * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
16124
+ * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
16125
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
16126
+ * the <i>Amazon S3 User Guide</i>.</p>
16127
+ * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
16128
+ * parameter.</p>
15699
16129
  * @public
15700
16130
  */
15701
- Tagging?: Tagging | undefined;
16131
+ ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15702
16132
  /**
15703
- * <p>A list of metadata to store with the restore results in S3.</p>
16133
+ * <p>Container for the <code>TagSet</code> and <code>Tag</code> elements</p>
15704
16134
  * @public
15705
16135
  */
15706
- UserMetadata?: MetadataEntry[] | undefined;
16136
+ Tagging: Tagging | undefined;
15707
16137
  /**
15708
- * <p>The class of storage used to store the restore results.</p>
16138
+ * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15709
16139
  * @public
15710
16140
  */
15711
- StorageClass?: StorageClass | undefined;
15712
- }
15713
- /**
15714
- * <p>Describes the location where the restore job's output is stored.</p>
15715
- * @public
15716
- */
15717
- export interface OutputLocation {
16141
+ ExpectedBucketOwner?: string | undefined;
15718
16142
  /**
15719
- * <p>Describes an S3 location that will receive the results of the restore request.</p>
16143
+ * <p>Confirms that the requester knows that she or he will be charged for the tagging object
16144
+ * request. Bucket owners need not specify this parameter in their requests.</p>
15720
16145
  * @public
15721
16146
  */
15722
- S3?: S3Location | undefined;
16147
+ RequestPayer?: RequestPayer | undefined;
15723
16148
  }
15724
16149
  /**
15725
- * <p>Describes how an uncompressed comma-separated values (CSV)-formatted input object is
15726
- * formatted.</p>
15727
16150
  * @public
15728
16151
  */
15729
- export interface CSVInput {
15730
- /**
15731
- * <p>Describes the first line of input. Valid values are:</p>
15732
- * <ul>
15733
- * <li>
15734
- * <p>
15735
- * <code>NONE</code>: First line is not a header.</p>
15736
- * </li>
15737
- * <li>
15738
- * <p>
15739
- * <code>IGNORE</code>: First line is a header, but you can't use the header values to indicate the
15740
- * column in an expression. You can use column position (such as _1, _2, …) to indicate the column
15741
- * (<code>SELECT s._1 FROM OBJECT s</code>).</p>
15742
- * </li>
15743
- * <li>
15744
- * <p>
15745
- * <code>Use</code>: First line is a header, and you can use the header value to identify a column
15746
- * in an expression (<code>SELECT "name" FROM OBJECT</code>). </p>
15747
- * </li>
15748
- * </ul>
15749
- * @public
15750
- */
15751
- FileHeaderInfo?: FileHeaderInfo | undefined;
15752
- /**
15753
- * <p>A single character used to indicate that a row should be ignored when the character is present at
15754
- * the start of that row. You can specify any character to indicate a comment line. The default character
15755
- * is <code>#</code>.</p>
15756
- * <p>Default: <code>#</code>
15757
- * </p>
15758
- * @public
15759
- */
15760
- Comments?: string | undefined;
15761
- /**
15762
- * <p>A single character used for escaping the quotation mark character inside an already escaped value.
15763
- * For example, the value <code>""" a , b """</code> is parsed as <code>" a , b "</code>.</p>
15764
- * @public
15765
- */
15766
- QuoteEscapeCharacter?: string | undefined;
16152
+ export interface PutPublicAccessBlockRequest {
15767
16153
  /**
15768
- * <p>A single character used to separate individual records in the input. Instead of the default value,
15769
- * you can specify an arbitrary delimiter.</p>
16154
+ * <p>The name of the Amazon S3 bucket whose <code>PublicAccessBlock</code> configuration you want to
16155
+ * set.</p>
16156
+ * <p>Note: To supply the Multi-region Access Point (MRAP) to Bucket, you need to install the "@aws-sdk/signature-v4-crt" package to your project dependencies.
16157
+ * For more information, please go to https://github.com/aws/aws-sdk-js-v3#known-issues</p>
15770
16158
  * @public
15771
16159
  */
15772
- RecordDelimiter?: string | undefined;
16160
+ Bucket: string | undefined;
15773
16161
  /**
15774
- * <p>A single character used to separate individual fields in a record. You can specify an arbitrary
15775
- * delimiter.</p>
16162
+ * <p>The MD5 hash of the <code>PutPublicAccessBlock</code> request body. </p>
16163
+ * <p>For requests made using the Amazon Web Services Command Line Interface (CLI) or Amazon Web Services SDKs, this field is calculated automatically.</p>
15776
16164
  * @public
15777
16165
  */
15778
- FieldDelimiter?: string | undefined;
16166
+ ContentMD5?: string | undefined;
15779
16167
  /**
15780
- * <p>A single character used for escaping when the field delimiter is part of the value. For example, if
15781
- * the value is <code>a, b</code>, Amazon S3 wraps this field value in quotation marks, as follows: <code>" a ,
15782
- * b "</code>.</p>
15783
- * <p>Type: String</p>
15784
- * <p>Default: <code>"</code>
15785
- * </p>
15786
- * <p>Ancestors: <code>CSV</code>
15787
- * </p>
16168
+ * <p>Indicates the algorithm used to create the checksum for the object when you use the SDK. This header will not provide any
16169
+ * additional functionality if you don't use the SDK. When you send this header, there must be a corresponding <code>x-amz-checksum</code> or
16170
+ * <code>x-amz-trailer</code> header sent. Otherwise, Amazon S3 fails the request with the HTTP status code <code>400 Bad Request</code>. For more
16171
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html">Checking object integrity</a> in
16172
+ * the <i>Amazon S3 User Guide</i>.</p>
16173
+ * <p>If you provide an individual checksum, Amazon S3 ignores any provided <code>ChecksumAlgorithm</code>
16174
+ * parameter.</p>
15788
16175
  * @public
15789
16176
  */
15790
- QuoteCharacter?: string | undefined;
16177
+ ChecksumAlgorithm?: ChecksumAlgorithm | undefined;
15791
16178
  /**
15792
- * <p>Specifies that CSV field values may contain quoted record delimiters and such records should be
15793
- * allowed. Default value is FALSE. Setting this value to TRUE may lower performance.</p>
16179
+ * <p>The <code>PublicAccessBlock</code> configuration that you want to apply to this Amazon S3
16180
+ * bucket. You can enable the configuration options in any combination. For more information
16181
+ * about when Amazon S3 considers a bucket or object public, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/access-control-block-public-access.html#access-control-block-public-access-policy-status">The Meaning of "Public"</a> in the <i>Amazon S3 User Guide</i>.</p>
15794
16182
  * @public
15795
16183
  */
15796
- AllowQuotedRecordDelimiter?: boolean | undefined;
15797
- }
15798
- /**
15799
- * <p>Specifies JSON as object's input serialization format.</p>
15800
- * @public
15801
- */
15802
- export interface JSONInput {
16184
+ PublicAccessBlockConfiguration: PublicAccessBlockConfiguration | undefined;
15803
16185
  /**
15804
- * <p>The type of JSON. Valid values: Document, Lines.</p>
16186
+ * <p>The account ID of the expected bucket owner. If the account ID that you provide does not match the actual owner of the bucket, the request fails with the HTTP status code <code>403 Forbidden</code> (access denied).</p>
15805
16187
  * @public
15806
16188
  */
15807
- Type?: JSONType | undefined;
15808
- }
15809
- /**
15810
- * <p>Container for Parquet.</p>
15811
- * @public
15812
- */
15813
- export interface ParquetInput {
16189
+ ExpectedBucketOwner?: string | undefined;
15814
16190
  }