aws-sdk-s3 1.136.0 → 1.176.1

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 (86) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +250 -1
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-s3/access_grants_credentials.rb +57 -0
  5. data/lib/aws-sdk-s3/access_grants_credentials_provider.rb +250 -0
  6. data/lib/aws-sdk-s3/bucket.rb +671 -139
  7. data/lib/aws-sdk-s3/bucket_acl.rb +12 -12
  8. data/lib/aws-sdk-s3/bucket_cors.rb +16 -16
  9. data/lib/aws-sdk-s3/bucket_lifecycle.rb +21 -16
  10. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +74 -17
  11. data/lib/aws-sdk-s3/bucket_logging.rb +19 -12
  12. data/lib/aws-sdk-s3/bucket_notification.rb +6 -6
  13. data/lib/aws-sdk-s3/bucket_policy.rb +62 -18
  14. data/lib/aws-sdk-s3/bucket_region_cache.rb +9 -5
  15. data/lib/aws-sdk-s3/bucket_request_payment.rb +12 -12
  16. data/lib/aws-sdk-s3/bucket_tagging.rb +16 -16
  17. data/lib/aws-sdk-s3/bucket_versioning.rb +32 -32
  18. data/lib/aws-sdk-s3/bucket_website.rb +16 -16
  19. data/lib/aws-sdk-s3/client.rb +7597 -2823
  20. data/lib/aws-sdk-s3/client_api.rb +288 -22
  21. data/lib/aws-sdk-s3/customizations/bucket.rb +1 -1
  22. data/lib/aws-sdk-s3/customizations/errors.rb +15 -2
  23. data/lib/aws-sdk-s3/customizations/object.rb +11 -5
  24. data/lib/aws-sdk-s3/customizations/object_summary.rb +5 -0
  25. data/lib/aws-sdk-s3/customizations/object_version.rb +13 -0
  26. data/lib/aws-sdk-s3/customizations.rb +25 -31
  27. data/lib/aws-sdk-s3/encryption/client.rb +2 -2
  28. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +2 -2
  29. data/lib/aws-sdk-s3/encryptionV2/client.rb +2 -2
  30. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +2 -2
  31. data/lib/aws-sdk-s3/endpoint_parameters.rb +53 -18
  32. data/lib/aws-sdk-s3/endpoint_provider.rb +125 -6
  33. data/lib/aws-sdk-s3/endpoints.rb +545 -1261
  34. data/lib/aws-sdk-s3/errors.rb +47 -0
  35. data/lib/aws-sdk-s3/express_credentials.rb +55 -0
  36. data/lib/aws-sdk-s3/express_credentials_provider.rb +59 -0
  37. data/lib/aws-sdk-s3/file_downloader.rb +1 -2
  38. data/lib/aws-sdk-s3/file_uploader.rb +1 -1
  39. data/lib/aws-sdk-s3/multipart_file_uploader.rb +4 -4
  40. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +6 -5
  41. data/lib/aws-sdk-s3/multipart_upload.rb +139 -36
  42. data/lib/aws-sdk-s3/multipart_upload_part.rb +175 -54
  43. data/lib/aws-sdk-s3/object.rb +1923 -313
  44. data/lib/aws-sdk-s3/object_acl.rb +34 -22
  45. data/lib/aws-sdk-s3/object_copier.rb +1 -1
  46. data/lib/aws-sdk-s3/object_multipart_copier.rb +10 -8
  47. data/lib/aws-sdk-s3/object_summary.rb +1690 -250
  48. data/lib/aws-sdk-s3/object_version.rb +397 -67
  49. data/lib/aws-sdk-s3/plugins/access_grants.rb +178 -0
  50. data/lib/aws-sdk-s3/plugins/endpoints.rb +32 -208
  51. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +97 -0
  52. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +55 -18
  53. data/lib/aws-sdk-s3/plugins/location_constraint.rb +3 -1
  54. data/lib/aws-sdk-s3/plugins/md5s.rb +2 -1
  55. data/lib/aws-sdk-s3/plugins/s3_signer.rb +7 -2
  56. data/lib/aws-sdk-s3/presigner.rb +5 -2
  57. data/lib/aws-sdk-s3/resource.rb +121 -22
  58. data/lib/aws-sdk-s3/types.rb +5960 -1526
  59. data/lib/aws-sdk-s3.rb +35 -31
  60. data/sig/bucket.rbs +221 -0
  61. data/sig/bucket_acl.rbs +78 -0
  62. data/sig/bucket_cors.rbs +69 -0
  63. data/sig/bucket_lifecycle.rbs +88 -0
  64. data/sig/bucket_lifecycle_configuration.rbs +115 -0
  65. data/sig/bucket_logging.rbs +76 -0
  66. data/sig/bucket_notification.rbs +114 -0
  67. data/sig/bucket_policy.rbs +59 -0
  68. data/sig/bucket_request_payment.rbs +54 -0
  69. data/sig/bucket_tagging.rbs +65 -0
  70. data/sig/bucket_versioning.rbs +77 -0
  71. data/sig/bucket_website.rbs +93 -0
  72. data/sig/client.rbs +2450 -0
  73. data/sig/customizations/bucket.rbs +19 -0
  74. data/sig/customizations/object.rbs +38 -0
  75. data/sig/customizations/object_summary.rbs +35 -0
  76. data/sig/errors.rbs +42 -0
  77. data/sig/multipart_upload.rbs +113 -0
  78. data/sig/multipart_upload_part.rbs +105 -0
  79. data/sig/object.rbs +448 -0
  80. data/sig/object_acl.rbs +86 -0
  81. data/sig/object_summary.rbs +340 -0
  82. data/sig/object_version.rbs +140 -0
  83. data/sig/resource.rbs +132 -0
  84. data/sig/types.rbs +2682 -0
  85. data/sig/waiters.rbs +95 -0
  86. metadata +44 -11
data/sig/object.rbs ADDED
@@ -0,0 +1,448 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html
11
+ class Object
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#initialize-instance_method
13
+ def initialize: (String bucket_name, String key, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, key: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#key-instance_method
21
+ def key: () -> String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#delete_marker-instance_method
24
+ def delete_marker: () -> bool
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#accept_ranges-instance_method
27
+ def accept_ranges: () -> ::String
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#expiration-instance_method
30
+ def expiration: () -> ::String
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#restore-instance_method
33
+ def restore: () -> ::String
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#archive_status-instance_method
36
+ def archive_status: () -> ("ARCHIVE_ACCESS" | "DEEP_ARCHIVE_ACCESS")
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#last_modified-instance_method
39
+ def last_modified: () -> ::Time
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#content_length-instance_method
42
+ def content_length: () -> ::Integer
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#checksum_crc32-instance_method
45
+ def checksum_crc32: () -> ::String
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#checksum_crc32c-instance_method
48
+ def checksum_crc32c: () -> ::String
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#checksum_sha1-instance_method
51
+ def checksum_sha1: () -> ::String
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#checksum_sha256-instance_method
54
+ def checksum_sha256: () -> ::String
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#etag-instance_method
57
+ def etag: () -> ::String
58
+
59
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#missing_meta-instance_method
60
+ def missing_meta: () -> ::Integer
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#version_id-instance_method
63
+ def version_id: () -> ::String
64
+
65
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#cache_control-instance_method
66
+ def cache_control: () -> ::String
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#content_disposition-instance_method
69
+ def content_disposition: () -> ::String
70
+
71
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#content_encoding-instance_method
72
+ def content_encoding: () -> ::String
73
+
74
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#content_language-instance_method
75
+ def content_language: () -> ::String
76
+
77
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#content_type-instance_method
78
+ def content_type: () -> ::String
79
+
80
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#expires-instance_method
81
+ def expires: () -> ::Time
82
+
83
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#expires_string-instance_method
84
+ def expires_string: () -> ::String
85
+
86
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#website_redirect_location-instance_method
87
+ def website_redirect_location: () -> ::String
88
+
89
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#server_side_encryption-instance_method
90
+ def server_side_encryption: () -> ("AES256" | "aws:kms" | "aws:kms:dsse")
91
+
92
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#metadata-instance_method
93
+ def metadata: () -> ::Hash[::String, ::String]
94
+
95
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#sse_customer_algorithm-instance_method
96
+ def sse_customer_algorithm: () -> ::String
97
+
98
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#sse_customer_key_md5-instance_method
99
+ def sse_customer_key_md5: () -> ::String
100
+
101
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#ssekms_key_id-instance_method
102
+ def ssekms_key_id: () -> ::String
103
+
104
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#bucket_key_enabled-instance_method
105
+ def bucket_key_enabled: () -> bool
106
+
107
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#storage_class-instance_method
108
+ def storage_class: () -> ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE")
109
+
110
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#request_charged-instance_method
111
+ def request_charged: () -> ("requester")
112
+
113
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#replication_status-instance_method
114
+ def replication_status: () -> ("COMPLETE" | "PENDING" | "FAILED" | "REPLICA" | "COMPLETED")
115
+
116
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#parts_count-instance_method
117
+ def parts_count: () -> ::Integer
118
+
119
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#object_lock_mode-instance_method
120
+ def object_lock_mode: () -> ("GOVERNANCE" | "COMPLIANCE")
121
+
122
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#object_lock_retain_until_date-instance_method
123
+ def object_lock_retain_until_date: () -> ::Time
124
+
125
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#object_lock_legal_hold_status-instance_method
126
+ def object_lock_legal_hold_status: () -> ("ON" | "OFF")
127
+
128
+ def client: () -> Client
129
+
130
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#load-instance_method
131
+ def load: () -> self
132
+ alias reload load
133
+
134
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#data-instance_method
135
+ def data: () -> Types::HeadObjectOutput
136
+
137
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#data_loaded?-instance_method
138
+ def data_loaded?: () -> bool
139
+
140
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#exists?-instance_method
141
+ def exists?: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) -> bool
142
+ | (?Hash[Symbol, untyped]) -> bool
143
+
144
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#wait_until_exists-instance_method
145
+ def wait_until_exists: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) ?{ (untyped waiter) -> void } -> Object
146
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Object
147
+
148
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#wait_until_not_exists-instance_method
149
+ def wait_until_not_exists: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) ?{ (untyped waiter) -> void } -> Object
150
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> Object
151
+
152
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#copy_from-instance_method
153
+ def copy_from: (
154
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
155
+ ?cache_control: ::String,
156
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
157
+ ?content_disposition: ::String,
158
+ ?content_encoding: ::String,
159
+ ?content_language: ::String,
160
+ ?content_type: ::String,
161
+ copy_source: ::String,
162
+ ?copy_source_if_match: ::String,
163
+ ?copy_source_if_modified_since: ::Time,
164
+ ?copy_source_if_none_match: ::String,
165
+ ?copy_source_if_unmodified_since: ::Time,
166
+ ?expires: ::Time,
167
+ ?grant_full_control: ::String,
168
+ ?grant_read: ::String,
169
+ ?grant_read_acp: ::String,
170
+ ?grant_write_acp: ::String,
171
+ ?metadata: Hash[::String, ::String],
172
+ ?metadata_directive: ("COPY" | "REPLACE"),
173
+ ?tagging_directive: ("COPY" | "REPLACE"),
174
+ ?server_side_encryption: ("AES256" | "aws:kms" | "aws:kms:dsse"),
175
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE"),
176
+ ?website_redirect_location: ::String,
177
+ ?sse_customer_algorithm: ::String,
178
+ ?sse_customer_key: ::String,
179
+ ?sse_customer_key_md5: ::String,
180
+ ?ssekms_key_id: ::String,
181
+ ?ssekms_encryption_context: ::String,
182
+ ?bucket_key_enabled: bool,
183
+ ?copy_source_sse_customer_algorithm: ::String,
184
+ ?copy_source_sse_customer_key: ::String,
185
+ ?copy_source_sse_customer_key_md5: ::String,
186
+ ?request_payer: ("requester"),
187
+ ?tagging: ::String,
188
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
189
+ ?object_lock_retain_until_date: ::Time,
190
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
191
+ ?expected_bucket_owner: ::String,
192
+ ?expected_source_bucket_owner: ::String
193
+ ) -> Types::CopyObjectOutput
194
+ | (?Hash[Symbol, untyped]) -> Types::CopyObjectOutput
195
+
196
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#delete-instance_method
197
+ def delete: (
198
+ ?mfa: ::String,
199
+ ?version_id: ::String,
200
+ ?request_payer: ("requester"),
201
+ ?bypass_governance_retention: bool,
202
+ ?expected_bucket_owner: ::String,
203
+ ?if_match: ::String,
204
+ ?if_match_last_modified_time: ::Time,
205
+ ?if_match_size: ::Integer
206
+ ) -> Types::DeleteObjectOutput
207
+ | (?Hash[Symbol, untyped]) -> Types::DeleteObjectOutput
208
+
209
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#get-instance_method
210
+ def get: (
211
+ ?if_match: ::String,
212
+ ?if_modified_since: ::Time,
213
+ ?if_none_match: ::String,
214
+ ?if_unmodified_since: ::Time,
215
+ ?range: ::String,
216
+ ?response_cache_control: ::String,
217
+ ?response_content_disposition: ::String,
218
+ ?response_content_encoding: ::String,
219
+ ?response_content_language: ::String,
220
+ ?response_content_type: ::String,
221
+ ?response_expires: ::Time,
222
+ ?version_id: ::String,
223
+ ?sse_customer_algorithm: ::String,
224
+ ?sse_customer_key: ::String,
225
+ ?sse_customer_key_md5: ::String,
226
+ ?request_payer: ("requester"),
227
+ ?part_number: ::Integer,
228
+ ?expected_bucket_owner: ::String,
229
+ ?checksum_mode: ("ENABLED")
230
+ ) -> Types::GetObjectOutput
231
+ | (?Hash[Symbol, untyped]) -> Types::GetObjectOutput
232
+
233
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#initiate_multipart_upload-instance_method
234
+ def initiate_multipart_upload: (
235
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
236
+ ?cache_control: ::String,
237
+ ?content_disposition: ::String,
238
+ ?content_encoding: ::String,
239
+ ?content_language: ::String,
240
+ ?content_type: ::String,
241
+ ?expires: ::Time,
242
+ ?grant_full_control: ::String,
243
+ ?grant_read: ::String,
244
+ ?grant_read_acp: ::String,
245
+ ?grant_write_acp: ::String,
246
+ ?metadata: Hash[::String, ::String],
247
+ ?server_side_encryption: ("AES256" | "aws:kms" | "aws:kms:dsse"),
248
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE"),
249
+ ?website_redirect_location: ::String,
250
+ ?sse_customer_algorithm: ::String,
251
+ ?sse_customer_key: ::String,
252
+ ?sse_customer_key_md5: ::String,
253
+ ?ssekms_key_id: ::String,
254
+ ?ssekms_encryption_context: ::String,
255
+ ?bucket_key_enabled: bool,
256
+ ?request_payer: ("requester"),
257
+ ?tagging: ::String,
258
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
259
+ ?object_lock_retain_until_date: ::Time,
260
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
261
+ ?expected_bucket_owner: ::String,
262
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256")
263
+ ) -> MultipartUpload
264
+ | (?Hash[Symbol, untyped]) -> MultipartUpload
265
+
266
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#put-instance_method
267
+ def put: (
268
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
269
+ ?body: ::String | ::StringIO | ::File,
270
+ ?cache_control: ::String,
271
+ ?content_disposition: ::String,
272
+ ?content_encoding: ::String,
273
+ ?content_language: ::String,
274
+ ?content_length: ::Integer,
275
+ ?content_md5: ::String,
276
+ ?content_type: ::String,
277
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
278
+ ?checksum_crc32: ::String,
279
+ ?checksum_crc32c: ::String,
280
+ ?checksum_sha1: ::String,
281
+ ?checksum_sha256: ::String,
282
+ ?expires: ::Time,
283
+ ?if_match: ::String,
284
+ ?if_none_match: ::String,
285
+ ?grant_full_control: ::String,
286
+ ?grant_read: ::String,
287
+ ?grant_read_acp: ::String,
288
+ ?grant_write_acp: ::String,
289
+ ?write_offset_bytes: ::Integer,
290
+ ?metadata: Hash[::String, ::String],
291
+ ?server_side_encryption: ("AES256" | "aws:kms" | "aws:kms:dsse"),
292
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE"),
293
+ ?website_redirect_location: ::String,
294
+ ?sse_customer_algorithm: ::String,
295
+ ?sse_customer_key: ::String,
296
+ ?sse_customer_key_md5: ::String,
297
+ ?ssekms_key_id: ::String,
298
+ ?ssekms_encryption_context: ::String,
299
+ ?bucket_key_enabled: bool,
300
+ ?request_payer: ("requester"),
301
+ ?tagging: ::String,
302
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
303
+ ?object_lock_retain_until_date: ::Time,
304
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
305
+ ?expected_bucket_owner: ::String
306
+ ) -> Types::PutObjectOutput
307
+ | (?Hash[Symbol, untyped]) -> Types::PutObjectOutput
308
+
309
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#restore_object-instance_method
310
+ def restore_object: (
311
+ ?version_id: ::String,
312
+ ?restore_request: {
313
+ days: ::Integer?,
314
+ glacier_job_parameters: {
315
+ tier: ("Standard" | "Bulk" | "Expedited")
316
+ }?,
317
+ type: ("SELECT")?,
318
+ tier: ("Standard" | "Bulk" | "Expedited")?,
319
+ description: ::String?,
320
+ select_parameters: {
321
+ input_serialization: {
322
+ csv: {
323
+ file_header_info: ("USE" | "IGNORE" | "NONE")?,
324
+ comments: ::String?,
325
+ quote_escape_character: ::String?,
326
+ record_delimiter: ::String?,
327
+ field_delimiter: ::String?,
328
+ quote_character: ::String?,
329
+ allow_quoted_record_delimiter: bool?
330
+ }?,
331
+ compression_type: ("NONE" | "GZIP" | "BZIP2")?,
332
+ json: {
333
+ type: ("DOCUMENT" | "LINES")?
334
+ }?,
335
+ parquet: {
336
+ }?
337
+ },
338
+ expression_type: ("SQL"),
339
+ expression: ::String,
340
+ output_serialization: {
341
+ csv: {
342
+ quote_fields: ("ALWAYS" | "ASNEEDED")?,
343
+ quote_escape_character: ::String?,
344
+ record_delimiter: ::String?,
345
+ field_delimiter: ::String?,
346
+ quote_character: ::String?
347
+ }?,
348
+ json: {
349
+ record_delimiter: ::String?
350
+ }?
351
+ }
352
+ }?,
353
+ output_location: {
354
+ s3: {
355
+ bucket_name: ::String,
356
+ prefix: ::String,
357
+ encryption: {
358
+ encryption_type: ("AES256" | "aws:kms" | "aws:kms:dsse"),
359
+ kms_key_id: ::String?,
360
+ kms_context: ::String?
361
+ }?,
362
+ canned_acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control")?,
363
+ access_control_list: Array[
364
+ {
365
+ grantee: {
366
+ display_name: ::String?,
367
+ email_address: ::String?,
368
+ id: ::String?,
369
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
370
+ uri: ::String?
371
+ }?,
372
+ permission: ("FULL_CONTROL" | "WRITE" | "WRITE_ACP" | "READ" | "READ_ACP")?
373
+ },
374
+ ]?,
375
+ tagging: {
376
+ tag_set: Array[
377
+ {
378
+ key: ::String,
379
+ value: ::String
380
+ },
381
+ ]
382
+ }?,
383
+ user_metadata: Array[
384
+ {
385
+ name: ::String?,
386
+ value: ::String?
387
+ },
388
+ ]?,
389
+ storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE")?
390
+ }?
391
+ }?
392
+ },
393
+ ?request_payer: ("requester"),
394
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
395
+ ?expected_bucket_owner: ::String
396
+ ) -> Types::RestoreObjectOutput
397
+ | (?Hash[Symbol, untyped]) -> Types::RestoreObjectOutput
398
+
399
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#head-instance_method
400
+ def head: (
401
+ ?if_match: ::String,
402
+ ?if_modified_since: ::Time,
403
+ ?if_none_match: ::String,
404
+ ?if_unmodified_since: ::Time,
405
+ ?range: ::String,
406
+ ?response_cache_control: ::String,
407
+ ?response_content_disposition: ::String,
408
+ ?response_content_encoding: ::String,
409
+ ?response_content_language: ::String,
410
+ ?response_content_type: ::String,
411
+ ?response_expires: ::Time,
412
+ ?version_id: ::String,
413
+ ?sse_customer_algorithm: ::String,
414
+ ?sse_customer_key: ::String,
415
+ ?sse_customer_key_md5: ::String,
416
+ ?request_payer: ("requester"),
417
+ ?part_number: ::Integer,
418
+ ?expected_bucket_owner: ::String,
419
+ ?checksum_mode: ("ENABLED")
420
+ ) -> Types::HeadObjectOutput
421
+ | (?Hash[Symbol, untyped]) -> Types::HeadObjectOutput
422
+
423
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#acl-instance_method
424
+ def acl: () -> ObjectAcl
425
+
426
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#bucket-instance_method
427
+ def bucket: () -> Bucket
428
+
429
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#multipart_upload-instance_method
430
+ def multipart_upload: (String id) -> MultipartUpload
431
+
432
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Object.html#version-instance_method
433
+ def version: (String id) -> ObjectVersion
434
+
435
+ class Collection < ::Aws::Resources::Collection[Object]
436
+
437
+ def batch_delete!: (
438
+ ?mfa: ::String,
439
+ ?request_payer: ("requester"),
440
+ ?bypass_governance_retention: bool,
441
+ ?expected_bucket_owner: ::String,
442
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256")
443
+ ) -> void
444
+ | (?Hash[Symbol, untyped]) -> void
445
+ end
446
+ end
447
+ end
448
+ end
@@ -0,0 +1,86 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module S3
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html
11
+ class ObjectAcl
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#initialize-instance_method
13
+ def initialize: (String bucket_name, String object_key, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, object_key: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#object_key-instance_method
21
+ def object_key: () -> String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#owner-instance_method
24
+ def owner: () -> Types::Owner
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#grants-instance_method
27
+ def grants: () -> ::Array[Types::Grant]
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#request_charged-instance_method
30
+ def request_charged: () -> ("requester")
31
+
32
+ def client: () -> Client
33
+
34
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#load-instance_method
35
+ def load: () -> self
36
+ alias reload load
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#data-instance_method
39
+ def data: () -> Types::GetObjectAclOutput
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#data_loaded?-instance_method
42
+ def data_loaded?: () -> bool
43
+
44
+
45
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#put-instance_method
46
+ def put: (
47
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
48
+ ?access_control_policy: {
49
+ grants: Array[
50
+ {
51
+ grantee: {
52
+ display_name: ::String?,
53
+ email_address: ::String?,
54
+ id: ::String?,
55
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
56
+ uri: ::String?
57
+ }?,
58
+ permission: ("FULL_CONTROL" | "WRITE" | "WRITE_ACP" | "READ" | "READ_ACP")?
59
+ },
60
+ ]?,
61
+ owner: {
62
+ display_name: ::String?,
63
+ id: ::String?
64
+ }?
65
+ },
66
+ ?content_md5: ::String,
67
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256"),
68
+ ?grant_full_control: ::String,
69
+ ?grant_read: ::String,
70
+ ?grant_read_acp: ::String,
71
+ ?grant_write: ::String,
72
+ ?grant_write_acp: ::String,
73
+ ?request_payer: ("requester"),
74
+ ?version_id: ::String,
75
+ ?expected_bucket_owner: ::String
76
+ ) -> Types::PutObjectAclOutput
77
+ | (?Hash[Symbol, untyped]) -> Types::PutObjectAclOutput
78
+
79
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectAcl.html#object-instance_method
80
+ def object: () -> Object
81
+
82
+ class Collection < ::Aws::Resources::Collection[ObjectAcl]
83
+ end
84
+ end
85
+ end
86
+ end