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
@@ -0,0 +1,115 @@
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/BucketLifecycleConfiguration.html
11
+ class BucketLifecycleConfiguration
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#rules-instance_method
21
+ def rules: () -> ::Array[Types::LifecycleRule]
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#transition_default_minimum_object_size-instance_method
24
+ def transition_default_minimum_object_size: () -> ("varies_by_storage_class" | "all_storage_classes_128K")
25
+
26
+ def client: () -> Client
27
+
28
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#load-instance_method
29
+ def load: () -> self
30
+ alias reload load
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#data-instance_method
33
+ def data: () -> Types::GetBucketLifecycleConfigurationOutput
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#data_loaded?-instance_method
36
+ def data_loaded?: () -> bool
37
+
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#delete-instance_method
40
+ def delete: (
41
+ ?expected_bucket_owner: ::String
42
+ ) -> ::Aws::EmptyStructure
43
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
44
+
45
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#put-instance_method
46
+ def put: (
47
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
48
+ ?lifecycle_configuration: {
49
+ rules: Array[
50
+ {
51
+ expiration: {
52
+ date: ::Time?,
53
+ days: ::Integer?,
54
+ expired_object_delete_marker: bool?
55
+ }?,
56
+ id: ::String?,
57
+ prefix: ::String?,
58
+ filter: {
59
+ prefix: ::String?,
60
+ tag: {
61
+ key: ::String,
62
+ value: ::String
63
+ }?,
64
+ object_size_greater_than: ::Integer?,
65
+ object_size_less_than: ::Integer?,
66
+ and: {
67
+ prefix: ::String?,
68
+ tags: Array[
69
+ {
70
+ key: ::String,
71
+ value: ::String
72
+ },
73
+ ]?,
74
+ object_size_greater_than: ::Integer?,
75
+ object_size_less_than: ::Integer?
76
+ }?
77
+ }?,
78
+ status: ("Enabled" | "Disabled"),
79
+ transitions: Array[
80
+ {
81
+ date: ::Time?,
82
+ days: ::Integer?,
83
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?
84
+ },
85
+ ]?,
86
+ noncurrent_version_transitions: Array[
87
+ {
88
+ noncurrent_days: ::Integer?,
89
+ storage_class: ("GLACIER" | "STANDARD_IA" | "ONEZONE_IA" | "INTELLIGENT_TIERING" | "DEEP_ARCHIVE" | "GLACIER_IR")?,
90
+ newer_noncurrent_versions: ::Integer?
91
+ },
92
+ ]?,
93
+ noncurrent_version_expiration: {
94
+ noncurrent_days: ::Integer?,
95
+ newer_noncurrent_versions: ::Integer?
96
+ }?,
97
+ abort_incomplete_multipart_upload: {
98
+ days_after_initiation: ::Integer?
99
+ }?
100
+ },
101
+ ]
102
+ },
103
+ ?expected_bucket_owner: ::String,
104
+ ?transition_default_minimum_object_size: ("varies_by_storage_class" | "all_storage_classes_128K")
105
+ ) -> Types::PutBucketLifecycleConfigurationOutput
106
+ | (?Hash[Symbol, untyped]) -> Types::PutBucketLifecycleConfigurationOutput
107
+
108
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycleConfiguration.html#bucket-instance_method
109
+ def bucket: () -> Bucket
110
+
111
+ class Collection < ::Aws::Resources::Collection[BucketLifecycleConfiguration]
112
+ end
113
+ end
114
+ end
115
+ end
@@ -0,0 +1,76 @@
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/BucketLogging.html
11
+ class BucketLogging
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#logging_enabled-instance_method
21
+ def logging_enabled: () -> Types::LoggingEnabled
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#data-instance_method
30
+ def data: () -> Types::GetBucketLoggingOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#put-instance_method
37
+ def put: (
38
+ bucket_logging_status: {
39
+ logging_enabled: {
40
+ target_bucket: ::String,
41
+ target_grants: Array[
42
+ {
43
+ grantee: {
44
+ display_name: ::String?,
45
+ email_address: ::String?,
46
+ id: ::String?,
47
+ type: ("CanonicalUser" | "AmazonCustomerByEmail" | "Group"),
48
+ uri: ::String?
49
+ }?,
50
+ permission: ("FULL_CONTROL" | "READ" | "WRITE")?
51
+ },
52
+ ]?,
53
+ target_prefix: ::String,
54
+ target_object_key_format: {
55
+ simple_prefix: {
56
+ }?,
57
+ partitioned_prefix: {
58
+ partition_date_source: ("EventTime" | "DeliveryTime")?
59
+ }?
60
+ }?
61
+ }?
62
+ },
63
+ ?content_md5: ::String,
64
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
65
+ ?expected_bucket_owner: ::String
66
+ ) -> ::Aws::EmptyStructure
67
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
68
+
69
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLogging.html#bucket-instance_method
70
+ def bucket: () -> Bucket
71
+
72
+ class Collection < ::Aws::Resources::Collection[BucketLogging]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,114 @@
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/BucketNotification.html
11
+ class BucketNotification
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#topic_configurations-instance_method
21
+ def topic_configurations: () -> ::Array[Types::TopicConfiguration]
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#queue_configurations-instance_method
24
+ def queue_configurations: () -> ::Array[Types::QueueConfiguration]
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#lambda_function_configurations-instance_method
27
+ def lambda_function_configurations: () -> ::Array[Types::LambdaFunctionConfiguration]
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#event_bridge_configuration-instance_method
30
+ def event_bridge_configuration: () -> Types::EventBridgeConfiguration
31
+
32
+ def client: () -> Client
33
+
34
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.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/BucketNotification.html#data-instance_method
39
+ def data: () -> Types::NotificationConfiguration
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.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/BucketNotification.html#put-instance_method
46
+ def put: (
47
+ notification_configuration: {
48
+ topic_configurations: Array[
49
+ {
50
+ id: ::String?,
51
+ topic_arn: ::String,
52
+ events: Array[("s3:ReducedRedundancyLostObject" | "s3:ObjectCreated:*" | "s3:ObjectCreated:Put" | "s3:ObjectCreated:Post" | "s3:ObjectCreated:Copy" | "s3:ObjectCreated:CompleteMultipartUpload" | "s3:ObjectRemoved:*" | "s3:ObjectRemoved:Delete" | "s3:ObjectRemoved:DeleteMarkerCreated" | "s3:ObjectRestore:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
53
+ filter: {
54
+ key: {
55
+ filter_rules: Array[
56
+ {
57
+ name: ("prefix" | "suffix")?,
58
+ value: ::String?
59
+ },
60
+ ]?
61
+ }?
62
+ }?
63
+ },
64
+ ]?,
65
+ queue_configurations: Array[
66
+ {
67
+ id: ::String?,
68
+ queue_arn: ::String,
69
+ events: Array[("s3:ReducedRedundancyLostObject" | "s3:ObjectCreated:*" | "s3:ObjectCreated:Put" | "s3:ObjectCreated:Post" | "s3:ObjectCreated:Copy" | "s3:ObjectCreated:CompleteMultipartUpload" | "s3:ObjectRemoved:*" | "s3:ObjectRemoved:Delete" | "s3:ObjectRemoved:DeleteMarkerCreated" | "s3:ObjectRestore:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
70
+ filter: {
71
+ key: {
72
+ filter_rules: Array[
73
+ {
74
+ name: ("prefix" | "suffix")?,
75
+ value: ::String?
76
+ },
77
+ ]?
78
+ }?
79
+ }?
80
+ },
81
+ ]?,
82
+ lambda_function_configurations: Array[
83
+ {
84
+ id: ::String?,
85
+ lambda_function_arn: ::String,
86
+ events: Array[("s3:ReducedRedundancyLostObject" | "s3:ObjectCreated:*" | "s3:ObjectCreated:Put" | "s3:ObjectCreated:Post" | "s3:ObjectCreated:Copy" | "s3:ObjectCreated:CompleteMultipartUpload" | "s3:ObjectRemoved:*" | "s3:ObjectRemoved:Delete" | "s3:ObjectRemoved:DeleteMarkerCreated" | "s3:ObjectRestore:*" | "s3:ObjectRestore:Post" | "s3:ObjectRestore:Completed" | "s3:Replication:*" | "s3:Replication:OperationFailedReplication" | "s3:Replication:OperationNotTracked" | "s3:Replication:OperationMissedThreshold" | "s3:Replication:OperationReplicatedAfterThreshold" | "s3:ObjectRestore:Delete" | "s3:LifecycleTransition" | "s3:IntelligentTiering" | "s3:ObjectAcl:Put" | "s3:LifecycleExpiration:*" | "s3:LifecycleExpiration:Delete" | "s3:LifecycleExpiration:DeleteMarkerCreated" | "s3:ObjectTagging:*" | "s3:ObjectTagging:Put" | "s3:ObjectTagging:Delete")],
87
+ filter: {
88
+ key: {
89
+ filter_rules: Array[
90
+ {
91
+ name: ("prefix" | "suffix")?,
92
+ value: ::String?
93
+ },
94
+ ]?
95
+ }?
96
+ }?
97
+ },
98
+ ]?,
99
+ event_bridge_configuration: {
100
+ }?
101
+ },
102
+ ?expected_bucket_owner: ::String,
103
+ ?skip_destination_validation: bool
104
+ ) -> ::Aws::EmptyStructure
105
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
106
+
107
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketNotification.html#bucket-instance_method
108
+ def bucket: () -> Bucket
109
+
110
+ class Collection < ::Aws::Resources::Collection[BucketNotification]
111
+ end
112
+ end
113
+ end
114
+ end
@@ -0,0 +1,59 @@
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/BucketPolicy.html
11
+ class BucketPolicy
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#policy-instance_method
21
+ def policy: () -> ::IO
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#data-instance_method
30
+ def data: () -> Types::GetBucketPolicyOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#delete-instance_method
37
+ def delete: (
38
+ ?expected_bucket_owner: ::String
39
+ ) -> ::Aws::EmptyStructure
40
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#put-instance_method
43
+ def put: (
44
+ ?content_md5: ::String,
45
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
46
+ ?confirm_remove_self_bucket_access: bool,
47
+ policy: ::String,
48
+ ?expected_bucket_owner: ::String
49
+ ) -> ::Aws::EmptyStructure
50
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
51
+
52
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketPolicy.html#bucket-instance_method
53
+ def bucket: () -> Bucket
54
+
55
+ class Collection < ::Aws::Resources::Collection[BucketPolicy]
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,54 @@
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/BucketRequestPayment.html
11
+ class BucketRequestPayment
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#payer-instance_method
21
+ def payer: () -> ("Requester" | "BucketOwner")
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#data-instance_method
30
+ def data: () -> Types::GetBucketRequestPaymentOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#put-instance_method
37
+ def put: (
38
+ ?content_md5: ::String,
39
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
40
+ request_payment_configuration: {
41
+ payer: ("Requester" | "BucketOwner")
42
+ },
43
+ ?expected_bucket_owner: ::String
44
+ ) -> ::Aws::EmptyStructure
45
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
46
+
47
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketRequestPayment.html#bucket-instance_method
48
+ def bucket: () -> Bucket
49
+
50
+ class Collection < ::Aws::Resources::Collection[BucketRequestPayment]
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,65 @@
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/BucketTagging.html
11
+ class BucketTagging
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#tag_set-instance_method
21
+ def tag_set: () -> ::Array[Types::Tag]
22
+
23
+ def client: () -> Client
24
+
25
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#load-instance_method
26
+ def load: () -> self
27
+ alias reload load
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#data-instance_method
30
+ def data: () -> Types::GetBucketTaggingOutput
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#data_loaded?-instance_method
33
+ def data_loaded?: () -> bool
34
+
35
+
36
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#delete-instance_method
37
+ def delete: (
38
+ ?expected_bucket_owner: ::String
39
+ ) -> ::Aws::EmptyStructure
40
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
41
+
42
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#put-instance_method
43
+ def put: (
44
+ ?content_md5: ::String,
45
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
46
+ tagging: {
47
+ tag_set: Array[
48
+ {
49
+ key: ::String,
50
+ value: ::String
51
+ },
52
+ ]
53
+ },
54
+ ?expected_bucket_owner: ::String
55
+ ) -> ::Aws::EmptyStructure
56
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
57
+
58
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketTagging.html#bucket-instance_method
59
+ def bucket: () -> Bucket
60
+
61
+ class Collection < ::Aws::Resources::Collection[BucketTagging]
62
+ end
63
+ end
64
+ end
65
+ end
@@ -0,0 +1,77 @@
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/BucketVersioning.html
11
+ class BucketVersioning
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#status-instance_method
21
+ def status: () -> ("Enabled" | "Suspended")
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#mfa_delete-instance_method
24
+ def mfa_delete: () -> ("Enabled" | "Disabled")
25
+
26
+ def client: () -> Client
27
+
28
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#load-instance_method
29
+ def load: () -> self
30
+ alias reload load
31
+
32
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#data-instance_method
33
+ def data: () -> Types::GetBucketVersioningOutput
34
+
35
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#data_loaded?-instance_method
36
+ def data_loaded?: () -> bool
37
+
38
+
39
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#enable-instance_method
40
+ def enable: (
41
+ ?content_md5: ::String,
42
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
43
+ ?mfa: ::String,
44
+ ?expected_bucket_owner: ::String
45
+ ) -> ::Aws::EmptyStructure
46
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
47
+
48
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#put-instance_method
49
+ def put: (
50
+ ?content_md5: ::String,
51
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
52
+ ?mfa: ::String,
53
+ versioning_configuration: {
54
+ mfa_delete: ("Enabled" | "Disabled")?,
55
+ status: ("Enabled" | "Suspended")?
56
+ },
57
+ ?expected_bucket_owner: ::String
58
+ ) -> ::Aws::EmptyStructure
59
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
60
+
61
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#suspend-instance_method
62
+ def suspend: (
63
+ ?content_md5: ::String,
64
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
65
+ ?mfa: ::String,
66
+ ?expected_bucket_owner: ::String
67
+ ) -> ::Aws::EmptyStructure
68
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
69
+
70
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketVersioning.html#bucket-instance_method
71
+ def bucket: () -> Bucket
72
+
73
+ class Collection < ::Aws::Resources::Collection[BucketVersioning]
74
+ end
75
+ end
76
+ end
77
+ end
@@ -0,0 +1,93 @@
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/BucketWebsite.html
11
+ class BucketWebsite
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#initialize-instance_method
13
+ def initialize: (String bucket_name, Hash[Symbol, untyped] options) -> void
14
+ | (bucket_name: String, ?client: Client) -> void
15
+ | (Hash[Symbol, untyped] args) -> void
16
+
17
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#bucket_name-instance_method
18
+ def bucket_name: () -> String
19
+
20
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#redirect_all_requests_to-instance_method
21
+ def redirect_all_requests_to: () -> Types::RedirectAllRequestsTo
22
+
23
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#index_document-instance_method
24
+ def index_document: () -> Types::IndexDocument
25
+
26
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#error_document-instance_method
27
+ def error_document: () -> Types::ErrorDocument
28
+
29
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#routing_rules-instance_method
30
+ def routing_rules: () -> ::Array[Types::RoutingRule]
31
+
32
+ def client: () -> Client
33
+
34
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.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/BucketWebsite.html#data-instance_method
39
+ def data: () -> Types::GetBucketWebsiteOutput
40
+
41
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.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/BucketWebsite.html#delete-instance_method
46
+ def delete: (
47
+ ?expected_bucket_owner: ::String
48
+ ) -> ::Aws::EmptyStructure
49
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
50
+
51
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#put-instance_method
52
+ def put: (
53
+ ?content_md5: ::String,
54
+ ?checksum_algorithm: ("CRC32" | "CRC32C" | "SHA1" | "SHA256" | "CRC64NVME"),
55
+ website_configuration: {
56
+ error_document: {
57
+ key: ::String
58
+ }?,
59
+ index_document: {
60
+ suffix: ::String
61
+ }?,
62
+ redirect_all_requests_to: {
63
+ host_name: ::String,
64
+ protocol: ("http" | "https")?
65
+ }?,
66
+ routing_rules: Array[
67
+ {
68
+ condition: {
69
+ http_error_code_returned_equals: ::String?,
70
+ key_prefix_equals: ::String?
71
+ }?,
72
+ redirect: {
73
+ host_name: ::String?,
74
+ http_redirect_code: ::String?,
75
+ protocol: ("http" | "https")?,
76
+ replace_key_prefix_with: ::String?,
77
+ replace_key_with: ::String?
78
+ }
79
+ },
80
+ ]?
81
+ },
82
+ ?expected_bucket_owner: ::String
83
+ ) -> ::Aws::EmptyStructure
84
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
85
+
86
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketWebsite.html#bucket-instance_method
87
+ def bucket: () -> Bucket
88
+
89
+ class Collection < ::Aws::Resources::Collection[BucketWebsite]
90
+ end
91
+ end
92
+ end
93
+ end