aws-sdk-s3 1.136.0 → 1.176.1

Sign up to get free protection for your applications and to get access to all the features.
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