aws-sdk-s3 1.103.0 → 1.202.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 (109) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +664 -0
  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 +858 -116
  7. data/lib/aws-sdk-s3/bucket_acl.rb +32 -9
  8. data/lib/aws-sdk-s3/bucket_cors.rb +38 -13
  9. data/lib/aws-sdk-s3/bucket_lifecycle.rb +43 -12
  10. data/lib/aws-sdk-s3/bucket_lifecycle_configuration.rb +100 -13
  11. data/lib/aws-sdk-s3/bucket_logging.rb +35 -6
  12. data/lib/aws-sdk-s3/bucket_notification.rb +27 -9
  13. data/lib/aws-sdk-s3/bucket_policy.rb +79 -10
  14. data/lib/aws-sdk-s3/bucket_region_cache.rb +9 -5
  15. data/lib/aws-sdk-s3/bucket_request_payment.rb +29 -7
  16. data/lib/aws-sdk-s3/bucket_tagging.rb +35 -11
  17. data/lib/aws-sdk-s3/bucket_versioning.rb +108 -17
  18. data/lib/aws-sdk-s3/bucket_website.rb +35 -11
  19. data/lib/aws-sdk-s3/client.rb +11799 -3636
  20. data/lib/aws-sdk-s3/client_api.rb +1201 -276
  21. data/lib/aws-sdk-s3/customizations/bucket.rb +23 -47
  22. data/lib/aws-sdk-s3/customizations/errors.rb +40 -0
  23. data/lib/aws-sdk-s3/customizations/object.rb +216 -70
  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/types/permanent_redirect.rb +26 -0
  27. data/lib/aws-sdk-s3/customizations.rb +27 -29
  28. data/lib/aws-sdk-s3/default_executor.rb +103 -0
  29. data/lib/aws-sdk-s3/encryption/client.rb +6 -2
  30. data/lib/aws-sdk-s3/encryption/kms_cipher_provider.rb +13 -9
  31. data/lib/aws-sdk-s3/encryptionV2/client.rb +6 -2
  32. data/lib/aws-sdk-s3/encryptionV2/decrypt_handler.rb +1 -0
  33. data/lib/aws-sdk-s3/encryptionV2/kms_cipher_provider.rb +10 -6
  34. data/lib/aws-sdk-s3/endpoint_parameters.rb +181 -0
  35. data/lib/aws-sdk-s3/endpoint_provider.rb +716 -0
  36. data/lib/aws-sdk-s3/endpoints.rb +1518 -0
  37. data/lib/aws-sdk-s3/errors.rb +58 -0
  38. data/lib/aws-sdk-s3/express_credentials.rb +55 -0
  39. data/lib/aws-sdk-s3/express_credentials_provider.rb +59 -0
  40. data/lib/aws-sdk-s3/file_downloader.rb +241 -87
  41. data/lib/aws-sdk-s3/file_uploader.rb +16 -13
  42. data/lib/aws-sdk-s3/legacy_signer.rb +2 -1
  43. data/lib/aws-sdk-s3/multipart_download_error.rb +8 -0
  44. data/lib/aws-sdk-s3/multipart_file_uploader.rb +108 -86
  45. data/lib/aws-sdk-s3/multipart_stream_uploader.rb +110 -92
  46. data/lib/aws-sdk-s3/multipart_upload.rb +294 -19
  47. data/lib/aws-sdk-s3/multipart_upload_error.rb +3 -4
  48. data/lib/aws-sdk-s3/multipart_upload_part.rb +297 -31
  49. data/lib/aws-sdk-s3/object.rb +2224 -269
  50. data/lib/aws-sdk-s3/object_acl.rb +59 -17
  51. data/lib/aws-sdk-s3/object_copier.rb +7 -5
  52. data/lib/aws-sdk-s3/object_multipart_copier.rb +48 -23
  53. data/lib/aws-sdk-s3/object_summary.rb +1915 -220
  54. data/lib/aws-sdk-s3/object_version.rb +450 -58
  55. data/lib/aws-sdk-s3/plugins/accelerate.rb +3 -44
  56. data/lib/aws-sdk-s3/plugins/access_grants.rb +178 -0
  57. data/lib/aws-sdk-s3/plugins/arn.rb +0 -197
  58. data/lib/aws-sdk-s3/plugins/bucket_dns.rb +3 -39
  59. data/lib/aws-sdk-s3/plugins/bucket_name_restrictions.rb +1 -6
  60. data/lib/aws-sdk-s3/plugins/checksum_algorithm.rb +31 -0
  61. data/lib/aws-sdk-s3/plugins/dualstack.rb +1 -55
  62. data/lib/aws-sdk-s3/plugins/endpoints.rb +86 -0
  63. data/lib/aws-sdk-s3/plugins/expect_100_continue.rb +2 -1
  64. data/lib/aws-sdk-s3/plugins/express_session_auth.rb +88 -0
  65. data/lib/aws-sdk-s3/plugins/http_200_errors.rb +55 -18
  66. data/lib/aws-sdk-s3/plugins/iad_regional_endpoint.rb +6 -29
  67. data/lib/aws-sdk-s3/plugins/location_constraint.rb +3 -1
  68. data/lib/aws-sdk-s3/plugins/md5s.rb +10 -68
  69. data/lib/aws-sdk-s3/plugins/s3_signer.rb +42 -111
  70. data/lib/aws-sdk-s3/plugins/streaming_retry.rb +28 -9
  71. data/lib/aws-sdk-s3/plugins/url_encoded_keys.rb +2 -1
  72. data/lib/aws-sdk-s3/presigned_post.rb +99 -78
  73. data/lib/aws-sdk-s3/presigner.rb +32 -41
  74. data/lib/aws-sdk-s3/resource.rb +139 -12
  75. data/lib/aws-sdk-s3/transfer_manager.rb +304 -0
  76. data/lib/aws-sdk-s3/types.rb +10204 -5378
  77. data/lib/aws-sdk-s3.rb +35 -27
  78. data/sig/bucket.rbs +231 -0
  79. data/sig/bucket_acl.rbs +78 -0
  80. data/sig/bucket_cors.rbs +69 -0
  81. data/sig/bucket_lifecycle.rbs +88 -0
  82. data/sig/bucket_lifecycle_configuration.rbs +115 -0
  83. data/sig/bucket_logging.rbs +76 -0
  84. data/sig/bucket_notification.rbs +114 -0
  85. data/sig/bucket_policy.rbs +59 -0
  86. data/sig/bucket_request_payment.rbs +54 -0
  87. data/sig/bucket_tagging.rbs +65 -0
  88. data/sig/bucket_versioning.rbs +77 -0
  89. data/sig/bucket_website.rbs +93 -0
  90. data/sig/client.rbs +2586 -0
  91. data/sig/customizations/bucket.rbs +19 -0
  92. data/sig/customizations/object.rbs +38 -0
  93. data/sig/customizations/object_summary.rbs +35 -0
  94. data/sig/errors.rbs +44 -0
  95. data/sig/multipart_upload.rbs +120 -0
  96. data/sig/multipart_upload_part.rbs +109 -0
  97. data/sig/object.rbs +464 -0
  98. data/sig/object_acl.rbs +86 -0
  99. data/sig/object_summary.rbs +347 -0
  100. data/sig/object_version.rbs +143 -0
  101. data/sig/resource.rbs +141 -0
  102. data/sig/types.rbs +2868 -0
  103. data/sig/waiters.rbs +95 -0
  104. metadata +51 -16
  105. data/lib/aws-sdk-s3/arn/access_point_arn.rb +0 -69
  106. data/lib/aws-sdk-s3/arn/multi_region_access_point_arn.rb +0 -69
  107. data/lib/aws-sdk-s3/arn/object_lambda_arn.rb +0 -69
  108. data/lib/aws-sdk-s3/arn/outpost_access_point_arn.rb +0 -73
  109. data/lib/aws-sdk-s3/plugins/object_lambda_endpoint.rb +0 -25
@@ -0,0 +1,347 @@
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/ObjectSummary.html
11
+ class ObjectSummary
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.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/ObjectSummary.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#key-instance_method
21
+ def key: () -> String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#last_modified-instance_method
24
+ def last_modified: () -> ::Time
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#etag-instance_method
27
+ def etag: () -> ::String
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#checksum_algorithm-instance_method
30
+ def checksum_algorithm: () -> ::Array[("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME")]
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#checksum_type-instance_method
33
+ def checksum_type: () -> ("COMPOSITE" | "FULL_OBJECT")
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#size-instance_method
36
+ def size: () -> ::Integer
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#storage_class-instance_method
39
+ def storage_class: () -> ("STANDARD" | "REDUCED_REDUNDANCY" | "GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE" | "FSX_OPENZFS")
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#owner-instance_method
42
+ def owner: () -> Types::Owner
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#restore_status-instance_method
45
+ def restore_status: () -> Types::RestoreStatus
46
+
47
+ def client: () -> Client
48
+
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#data-instance_method
51
+ def data: () -> Types::Object
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#data_loaded?-instance_method
54
+ def data_loaded?: () -> bool
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#exists?-instance_method
57
+ def exists?: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) -> bool
58
+ | (?Hash[Symbol, untyped]) -> bool
59
+
60
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#wait_until_exists-instance_method
61
+ def wait_until_exists: (?max_attempts: Integer, ?delay: Numeric, ?before_attempt: (^(Integer attempts) -> void), ?before_wait: (^(Integer attempts, untyped response) -> void)) ?{ (untyped waiter) -> void } -> ObjectSummary
62
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> ObjectSummary
63
+
64
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#wait_until_not_exists-instance_method
65
+ 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 } -> ObjectSummary
66
+ | (?Hash[Symbol, untyped]) ?{ (untyped waiter) -> void } -> ObjectSummary
67
+
68
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#copy_from-instance_method
69
+ def copy_from: (
70
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
71
+ ?cache_control: ::String,
72
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
73
+ ?content_disposition: ::String,
74
+ ?content_encoding: ::String,
75
+ ?content_language: ::String,
76
+ ?content_type: ::String,
77
+ copy_source: ::String,
78
+ ?copy_source_if_match: ::String,
79
+ ?copy_source_if_modified_since: ::Time,
80
+ ?copy_source_if_none_match: ::String,
81
+ ?copy_source_if_unmodified_since: ::Time,
82
+ ?expires: ::Time,
83
+ ?grant_full_control: ::String,
84
+ ?grant_read: ::String,
85
+ ?grant_read_acp: ::String,
86
+ ?grant_write_acp: ::String,
87
+ ?if_match: ::String,
88
+ ?if_none_match: ::String,
89
+ ?metadata: Hash[::String, ::String],
90
+ ?metadata_directive: ("COPY" | "REPLACE"),
91
+ ?tagging_directive: ("COPY" | "REPLACE"),
92
+ ?server_side_encryption: ("AES256" | "aws:fsx" | "aws:kms" | "aws:kms:dsse"),
93
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE" | "FSX_OPENZFS"),
94
+ ?website_redirect_location: ::String,
95
+ ?sse_customer_algorithm: ::String,
96
+ ?sse_customer_key: ::String,
97
+ ?sse_customer_key_md5: ::String,
98
+ ?ssekms_key_id: ::String,
99
+ ?ssekms_encryption_context: ::String,
100
+ ?bucket_key_enabled: bool,
101
+ ?copy_source_sse_customer_algorithm: ::String,
102
+ ?copy_source_sse_customer_key: ::String,
103
+ ?copy_source_sse_customer_key_md5: ::String,
104
+ ?request_payer: ("requester"),
105
+ ?tagging: ::String,
106
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
107
+ ?object_lock_retain_until_date: ::Time,
108
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
109
+ ?expected_bucket_owner: ::String,
110
+ ?expected_source_bucket_owner: ::String
111
+ ) -> Types::CopyObjectOutput
112
+ | (?Hash[Symbol, untyped]) -> Types::CopyObjectOutput
113
+
114
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#delete-instance_method
115
+ def delete: (
116
+ ?mfa: ::String,
117
+ ?version_id: ::String,
118
+ ?request_payer: ("requester"),
119
+ ?bypass_governance_retention: bool,
120
+ ?expected_bucket_owner: ::String,
121
+ ?if_match: ::String,
122
+ ?if_match_last_modified_time: ::Time,
123
+ ?if_match_size: ::Integer
124
+ ) -> Types::DeleteObjectOutput
125
+ | (?Hash[Symbol, untyped]) -> Types::DeleteObjectOutput
126
+
127
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#get-instance_method
128
+ def get: (
129
+ ?if_match: ::String,
130
+ ?if_modified_since: ::Time,
131
+ ?if_none_match: ::String,
132
+ ?if_unmodified_since: ::Time,
133
+ ?range: ::String,
134
+ ?response_cache_control: ::String,
135
+ ?response_content_disposition: ::String,
136
+ ?response_content_encoding: ::String,
137
+ ?response_content_language: ::String,
138
+ ?response_content_type: ::String,
139
+ ?response_expires: ::Time,
140
+ ?version_id: ::String,
141
+ ?sse_customer_algorithm: ::String,
142
+ ?sse_customer_key: ::String,
143
+ ?sse_customer_key_md5: ::String,
144
+ ?request_payer: ("requester"),
145
+ ?part_number: ::Integer,
146
+ ?expected_bucket_owner: ::String,
147
+ ?checksum_mode: ("ENABLED")
148
+ ) -> Types::GetObjectOutput
149
+ | (?Hash[Symbol, untyped]) -> Types::GetObjectOutput
150
+
151
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#initiate_multipart_upload-instance_method
152
+ def initiate_multipart_upload: (
153
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
154
+ ?cache_control: ::String,
155
+ ?content_disposition: ::String,
156
+ ?content_encoding: ::String,
157
+ ?content_language: ::String,
158
+ ?content_type: ::String,
159
+ ?expires: ::Time,
160
+ ?grant_full_control: ::String,
161
+ ?grant_read: ::String,
162
+ ?grant_read_acp: ::String,
163
+ ?grant_write_acp: ::String,
164
+ ?metadata: Hash[::String, ::String],
165
+ ?server_side_encryption: ("AES256" | "aws:fsx" | "aws:kms" | "aws:kms:dsse"),
166
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE" | "FSX_OPENZFS"),
167
+ ?website_redirect_location: ::String,
168
+ ?sse_customer_algorithm: ::String,
169
+ ?sse_customer_key: ::String,
170
+ ?sse_customer_key_md5: ::String,
171
+ ?ssekms_key_id: ::String,
172
+ ?ssekms_encryption_context: ::String,
173
+ ?bucket_key_enabled: bool,
174
+ ?request_payer: ("requester"),
175
+ ?tagging: ::String,
176
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
177
+ ?object_lock_retain_until_date: ::Time,
178
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
179
+ ?expected_bucket_owner: ::String,
180
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
181
+ ?checksum_type: ("COMPOSITE" | "FULL_OBJECT")
182
+ ) -> MultipartUpload
183
+ | (?Hash[Symbol, untyped]) -> MultipartUpload
184
+
185
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#put-instance_method
186
+ def put: (
187
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control"),
188
+ ?body: ::String | ::StringIO | ::File,
189
+ ?cache_control: ::String,
190
+ ?content_disposition: ::String,
191
+ ?content_encoding: ::String,
192
+ ?content_language: ::String,
193
+ ?content_length: ::Integer,
194
+ ?content_md5: ::String,
195
+ ?content_type: ::String,
196
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
197
+ ?checksum_crc32: ::String,
198
+ ?checksum_crc32c: ::String,
199
+ ?checksum_crc64nvme: ::String,
200
+ ?checksum_sha1: ::String,
201
+ ?checksum_sha256: ::String,
202
+ ?expires: ::Time,
203
+ ?if_match: ::String,
204
+ ?if_none_match: ::String,
205
+ ?grant_full_control: ::String,
206
+ ?grant_read: ::String,
207
+ ?grant_read_acp: ::String,
208
+ ?grant_write_acp: ::String,
209
+ ?write_offset_bytes: ::Integer,
210
+ ?metadata: Hash[::String, ::String],
211
+ ?server_side_encryption: ("AES256" | "aws:fsx" | "aws:kms" | "aws:kms:dsse"),
212
+ ?storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE" | "FSX_OPENZFS"),
213
+ ?website_redirect_location: ::String,
214
+ ?sse_customer_algorithm: ::String,
215
+ ?sse_customer_key: ::String,
216
+ ?sse_customer_key_md5: ::String,
217
+ ?ssekms_key_id: ::String,
218
+ ?ssekms_encryption_context: ::String,
219
+ ?bucket_key_enabled: bool,
220
+ ?request_payer: ("requester"),
221
+ ?tagging: ::String,
222
+ ?object_lock_mode: ("GOVERNANCE" | "COMPLIANCE"),
223
+ ?object_lock_retain_until_date: ::Time,
224
+ ?object_lock_legal_hold_status: ("ON" | "OFF"),
225
+ ?expected_bucket_owner: ::String
226
+ ) -> Types::PutObjectOutput
227
+ | (?Hash[Symbol, untyped]) -> Types::PutObjectOutput
228
+
229
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#restore_object-instance_method
230
+ def restore_object: (
231
+ ?version_id: ::String,
232
+ ?restore_request: {
233
+ days: ::Integer?,
234
+ glacier_job_parameters: {
235
+ tier: ("Standard" | "Bulk" | "Expedited")
236
+ }?,
237
+ type: ("SELECT")?,
238
+ tier: ("Standard" | "Bulk" | "Expedited")?,
239
+ description: ::String?,
240
+ select_parameters: {
241
+ input_serialization: {
242
+ csv: {
243
+ file_header_info: ("USE" | "IGNORE" | "NONE")?,
244
+ comments: ::String?,
245
+ quote_escape_character: ::String?,
246
+ record_delimiter: ::String?,
247
+ field_delimiter: ::String?,
248
+ quote_character: ::String?,
249
+ allow_quoted_record_delimiter: bool?
250
+ }?,
251
+ compression_type: ("NONE" | "GZIP" | "BZIP2")?,
252
+ json: {
253
+ type: ("DOCUMENT" | "LINES")?
254
+ }?,
255
+ parquet: {
256
+ }?
257
+ },
258
+ expression_type: ("SQL"),
259
+ expression: ::String,
260
+ output_serialization: {
261
+ csv: {
262
+ quote_fields: ("ALWAYS" | "ASNEEDED")?,
263
+ quote_escape_character: ::String?,
264
+ record_delimiter: ::String?,
265
+ field_delimiter: ::String?,
266
+ quote_character: ::String?
267
+ }?,
268
+ json: {
269
+ record_delimiter: ::String?
270
+ }?
271
+ }
272
+ }?,
273
+ output_location: {
274
+ s3: {
275
+ bucket_name: ::String,
276
+ prefix: ::String,
277
+ encryption: {
278
+ encryption_type: ("AES256" | "aws:fsx" | "aws:kms" | "aws:kms:dsse"),
279
+ kms_key_id: ::String?,
280
+ kms_context: ::String?
281
+ }?,
282
+ canned_acl: ("private" | "public-read" | "public-read-write" | "authenticated-read" | "aws-exec-read" | "bucket-owner-read" | "bucket-owner-full-control")?,
283
+ access_control_list: Array[
284
+ {
285
+ grantee: {
286
+ display_name: ::String?,
287
+ email_address: ::String?,
288
+ id: ::String?,
289
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
290
+ uri: ::String?
291
+ }?,
292
+ permission: ("FULL_CONTROL" | "WRITE" | "WRITE_ACP" | "READ" | "READ_ACP")?
293
+ },
294
+ ]?,
295
+ tagging: {
296
+ tag_set: Array[
297
+ {
298
+ key: ::String,
299
+ value: ::String
300
+ },
301
+ ]
302
+ }?,
303
+ user_metadata: Array[
304
+ {
305
+ name: ::String?,
306
+ value: ::String?
307
+ },
308
+ ]?,
309
+ storage_class: ("STANDARD" | "REDUCED_REDUNDANCY" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "GLACIER" | "DEEP_ARCHIVE" | "OUTPOSTS" | "GLACIER_IR" | "SNOW" | "EXPRESS_ONEZONE" | "FSX_OPENZFS")?
310
+ }?
311
+ }?
312
+ },
313
+ ?request_payer: ("requester"),
314
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
315
+ ?expected_bucket_owner: ::String
316
+ ) -> Types::RestoreObjectOutput
317
+ | (?Hash[Symbol, untyped]) -> Types::RestoreObjectOutput
318
+
319
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#acl-instance_method
320
+ def acl: () -> ObjectAcl
321
+
322
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#bucket-instance_method
323
+ def bucket: () -> Bucket
324
+
325
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#multipart_upload-instance_method
326
+ def multipart_upload: (String id) -> MultipartUpload
327
+
328
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#object-instance_method
329
+ def object: () -> Object
330
+
331
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectSummary.html#version-instance_method
332
+ def version: (String id) -> ObjectVersion
333
+
334
+ class Collection < ::Aws::Resources::Collection[ObjectSummary]
335
+
336
+ def batch_delete!: (
337
+ ?mfa: ::String,
338
+ ?request_payer: ("requester"),
339
+ ?bypass_governance_retention: bool,
340
+ ?expected_bucket_owner: ::String,
341
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME")
342
+ ) -> void
343
+ | (?Hash[Symbol, untyped]) -> void
344
+ end
345
+ end
346
+ end
347
+ end
@@ -0,0 +1,143 @@
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/ObjectVersion.html
11
+ class ObjectVersion
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#initialize-instance_method
13
+ def initialize: (String bucket_name, String object_key, String id, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, object_key: String, id: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#object_key-instance_method
21
+ def object_key: () -> String
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#id-instance_method
24
+ def id: () -> String
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#etag-instance_method
27
+ def etag: () -> ::String
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#checksum_algorithm-instance_method
30
+ def checksum_algorithm: () -> ::Array[("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME")]
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#checksum_type-instance_method
33
+ def checksum_type: () -> ("COMPOSITE" | "FULL_OBJECT")
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#size-instance_method
36
+ def size: () -> ::Integer
37
+
38
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#storage_class-instance_method
39
+ def storage_class: () -> ("STANDARD")
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#key-instance_method
42
+ def key: () -> ::String
43
+
44
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#version_id-instance_method
45
+ def version_id: () -> ::String
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#is_latest-instance_method
48
+ def is_latest: () -> bool
49
+
50
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#last_modified-instance_method
51
+ def last_modified: () -> ::Time
52
+
53
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#owner-instance_method
54
+ def owner: () -> Types::Owner
55
+
56
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#restore_status-instance_method
57
+ def restore_status: () -> Types::RestoreStatus
58
+
59
+ def client: () -> Client
60
+
61
+
62
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#data-instance_method
63
+ def data: () -> Types::ObjectVersion
64
+
65
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#data_loaded?-instance_method
66
+ def data_loaded?: () -> bool
67
+
68
+
69
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#delete-instance_method
70
+ def delete: (
71
+ ?mfa: ::String,
72
+ ?request_payer: ("requester"),
73
+ ?bypass_governance_retention: bool,
74
+ ?expected_bucket_owner: ::String,
75
+ ?if_match: ::String,
76
+ ?if_match_last_modified_time: ::Time,
77
+ ?if_match_size: ::Integer
78
+ ) -> Types::DeleteObjectOutput
79
+ | (?Hash[Symbol, untyped]) -> Types::DeleteObjectOutput
80
+
81
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#get-instance_method
82
+ def get: (
83
+ ?if_match: ::String,
84
+ ?if_modified_since: ::Time,
85
+ ?if_none_match: ::String,
86
+ ?if_unmodified_since: ::Time,
87
+ ?range: ::String,
88
+ ?response_cache_control: ::String,
89
+ ?response_content_disposition: ::String,
90
+ ?response_content_encoding: ::String,
91
+ ?response_content_language: ::String,
92
+ ?response_content_type: ::String,
93
+ ?response_expires: ::Time,
94
+ ?sse_customer_algorithm: ::String,
95
+ ?sse_customer_key: ::String,
96
+ ?sse_customer_key_md5: ::String,
97
+ ?request_payer: ("requester"),
98
+ ?part_number: ::Integer,
99
+ ?expected_bucket_owner: ::String,
100
+ ?checksum_mode: ("ENABLED")
101
+ ) -> Types::GetObjectOutput
102
+ | (?Hash[Symbol, untyped]) -> Types::GetObjectOutput
103
+
104
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#head-instance_method
105
+ def head: (
106
+ ?if_match: ::String,
107
+ ?if_modified_since: ::Time,
108
+ ?if_none_match: ::String,
109
+ ?if_unmodified_since: ::Time,
110
+ ?range: ::String,
111
+ ?response_cache_control: ::String,
112
+ ?response_content_disposition: ::String,
113
+ ?response_content_encoding: ::String,
114
+ ?response_content_language: ::String,
115
+ ?response_content_type: ::String,
116
+ ?response_expires: ::Time,
117
+ ?sse_customer_algorithm: ::String,
118
+ ?sse_customer_key: ::String,
119
+ ?sse_customer_key_md5: ::String,
120
+ ?request_payer: ("requester"),
121
+ ?part_number: ::Integer,
122
+ ?expected_bucket_owner: ::String,
123
+ ?checksum_mode: ("ENABLED")
124
+ ) -> Types::HeadObjectOutput
125
+ | (?Hash[Symbol, untyped]) -> Types::HeadObjectOutput
126
+
127
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/ObjectVersion.html#object-instance_method
128
+ def object: () -> Object
129
+
130
+ class Collection < ::Aws::Resources::Collection[ObjectVersion]
131
+
132
+ def batch_delete!: (
133
+ ?mfa: ::String,
134
+ ?request_payer: ("requester"),
135
+ ?bypass_governance_retention: bool,
136
+ ?expected_bucket_owner: ::String,
137
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME")
138
+ ) -> void
139
+ | (?Hash[Symbol, untyped]) -> void
140
+ end
141
+ end
142
+ end
143
+ end
data/sig/resource.rbs ADDED
@@ -0,0 +1,141 @@
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/Resource.html
11
+ class Resource
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Resource.html#initialize-instance_method
13
+ def initialize: (
14
+ ?client: Client,
15
+ ?credentials: untyped,
16
+ ?region: String,
17
+ ?access_grants: bool,
18
+ ?access_grants_credentials_provider: untyped,
19
+ ?access_key_id: String,
20
+ ?account_id: String,
21
+ ?active_endpoint_cache: bool,
22
+ ?adaptive_retry_wait_to_fill: bool,
23
+ ?auth_scheme_preference: Array[String],
24
+ ?client_side_monitoring: bool,
25
+ ?client_side_monitoring_client_id: String,
26
+ ?client_side_monitoring_host: String,
27
+ ?client_side_monitoring_port: Integer,
28
+ ?client_side_monitoring_publisher: untyped,
29
+ ?compute_checksums: bool,
30
+ ?convert_params: bool,
31
+ ?correct_clock_skew: bool,
32
+ ?defaults_mode: String,
33
+ ?disable_host_prefix_injection: bool,
34
+ ?disable_request_compression: bool,
35
+ ?disable_s3_express_session_auth: bool,
36
+ ?endpoint: String,
37
+ ?endpoint_cache_max_entries: Integer,
38
+ ?endpoint_cache_max_threads: Integer,
39
+ ?endpoint_cache_poll_interval: Integer,
40
+ ?endpoint_discovery: bool,
41
+ ?event_stream_handler: Proc,
42
+ ?express_credentials_provider: untyped,
43
+ ?follow_redirects: bool,
44
+ ?force_path_style: bool,
45
+ ?ignore_configured_endpoint_urls: bool,
46
+ ?input_event_stream_handler: Proc,
47
+ ?log_formatter: untyped,
48
+ ?log_level: Symbol,
49
+ ?logger: untyped,
50
+ ?max_attempts: Integer,
51
+ ?output_event_stream_handler: Proc,
52
+ ?profile: String,
53
+ ?request_checksum_calculation: String,
54
+ ?request_min_compression_size_bytes: Integer,
55
+ ?require_https_for_sse_cpk: bool,
56
+ ?response_checksum_validation: String,
57
+ ?retry_backoff: Proc,
58
+ ?retry_base_delay: Float,
59
+ ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
60
+ ?retry_limit: Integer,
61
+ ?retry_max_delay: Integer,
62
+ ?retry_mode: ("legacy" | "standard" | "adaptive"),
63
+ ?s3_disable_multiregion_access_points: bool,
64
+ ?s3_us_east_1_regional_endpoint: String,
65
+ ?s3_use_arn_region: bool,
66
+ ?sdk_ua_app_id: String,
67
+ ?secret_access_key: String,
68
+ ?session_token: String,
69
+ ?sigv4a_signing_region_set: Array[String],
70
+ ?stub_responses: untyped,
71
+ ?telemetry_provider: Aws::Telemetry::TelemetryProviderBase,
72
+ ?token_provider: untyped,
73
+ ?use_accelerate_endpoint: bool,
74
+ ?use_dualstack_endpoint: bool,
75
+ ?use_fips_endpoint: bool,
76
+ ?validate_params: bool,
77
+ ?endpoint_provider: untyped,
78
+ ?http_proxy: String,
79
+ ?http_open_timeout: (Float | Integer),
80
+ ?http_read_timeout: (Float | Integer),
81
+ ?http_idle_timeout: (Float | Integer),
82
+ ?http_continue_timeout: (Float | Integer),
83
+ ?ssl_timeout: (Float | Integer | nil),
84
+ ?http_wire_trace: bool,
85
+ ?ssl_verify_peer: bool,
86
+ ?ssl_ca_bundle: String,
87
+ ?ssl_ca_directory: String,
88
+ ?ssl_ca_store: String,
89
+ ?on_chunk_received: Proc,
90
+ ?on_chunk_sent: Proc,
91
+ ?raise_response_errors: bool
92
+ ) -> void
93
+ | (?Hash[Symbol, untyped]) -> void
94
+
95
+ def client: () -> Client
96
+
97
+
98
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Resource.html#create_bucket-instance_method
99
+ def create_bucket: (
100
+ ?acl: ("private" | "public-read" | "public-read-write" | "authenticated-read"),
101
+ bucket: ::String,
102
+ ?create_bucket_configuration: {
103
+ location_constraint: ("af-south-1" | "ap-east-1" | "ap-northeast-1" | "ap-northeast-2" | "ap-northeast-3" | "ap-south-1" | "ap-south-2" | "ap-southeast-1" | "ap-southeast-2" | "ap-southeast-3" | "ap-southeast-4" | "ap-southeast-5" | "ca-central-1" | "cn-north-1" | "cn-northwest-1" | "EU" | "eu-central-1" | "eu-central-2" | "eu-north-1" | "eu-south-1" | "eu-south-2" | "eu-west-1" | "eu-west-2" | "eu-west-3" | "il-central-1" | "me-central-1" | "me-south-1" | "sa-east-1" | "us-east-2" | "us-gov-east-1" | "us-gov-west-1" | "us-west-1" | "us-west-2")?,
104
+ location: {
105
+ type: ("AvailabilityZone" | "LocalZone")?,
106
+ name: ::String?
107
+ }?,
108
+ bucket: {
109
+ data_redundancy: ("SingleAvailabilityZone" | "SingleLocalZone")?,
110
+ type: ("Directory")?
111
+ }?,
112
+ tags: Array[
113
+ {
114
+ key: ::String,
115
+ value: ::String
116
+ },
117
+ ]?
118
+ },
119
+ ?grant_full_control: ::String,
120
+ ?grant_read: ::String,
121
+ ?grant_read_acp: ::String,
122
+ ?grant_write: ::String,
123
+ ?grant_write_acp: ::String,
124
+ ?object_lock_enabled_for_bucket: bool,
125
+ ?object_ownership: ("BucketOwnerPreferred" | "ObjectWriter" | "BucketOwnerEnforced")
126
+ ) -> Bucket
127
+ | (?Hash[Symbol, untyped]) -> Bucket
128
+
129
+
130
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Resource.html#bucket-instance_method
131
+ def bucket: (String name) -> Bucket
132
+
133
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/Resource.html#buckets-instance_method
134
+ def buckets: (
135
+ ?prefix: ::String,
136
+ ?bucket_region: ::String
137
+ ) -> Bucket::Collection
138
+ | (?Hash[Symbol, untyped]) -> Bucket::Collection
139
+ end
140
+ end
141
+ end