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