@aws-sdk/client-s3-control 3.454.0 → 3.458.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 (169) hide show
  1. package/README.md +232 -72
  2. package/dist-cjs/S3Control.js +40 -0
  3. package/dist-cjs/commands/AssociateAccessGrantsIdentityCenterCommand.js +58 -0
  4. package/dist-cjs/commands/CreateAccessGrantCommand.js +58 -0
  5. package/dist-cjs/commands/CreateAccessGrantsInstanceCommand.js +58 -0
  6. package/dist-cjs/commands/CreateAccessGrantsLocationCommand.js +58 -0
  7. package/dist-cjs/commands/DeleteAccessGrantCommand.js +58 -0
  8. package/dist-cjs/commands/DeleteAccessGrantsInstanceCommand.js +58 -0
  9. package/dist-cjs/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  10. package/dist-cjs/commands/DeleteAccessGrantsLocationCommand.js +58 -0
  11. package/dist-cjs/commands/DissociateAccessGrantsIdentityCenterCommand.js +58 -0
  12. package/dist-cjs/commands/GetAccessGrantCommand.js +58 -0
  13. package/dist-cjs/commands/GetAccessGrantsInstanceCommand.js +58 -0
  14. package/dist-cjs/commands/GetAccessGrantsInstanceForPrefixCommand.js +58 -0
  15. package/dist-cjs/commands/GetAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  16. package/dist-cjs/commands/GetAccessGrantsLocationCommand.js +58 -0
  17. package/dist-cjs/commands/GetDataAccessCommand.js +59 -0
  18. package/dist-cjs/commands/ListAccessGrantsCommand.js +58 -0
  19. package/dist-cjs/commands/ListAccessGrantsInstancesCommand.js +58 -0
  20. package/dist-cjs/commands/ListAccessGrantsLocationsCommand.js +58 -0
  21. package/dist-cjs/commands/PutAccessGrantsInstanceResourcePolicyCommand.js +58 -0
  22. package/dist-cjs/commands/UpdateAccessGrantsLocationCommand.js +58 -0
  23. package/dist-cjs/commands/index.js +20 -0
  24. package/dist-cjs/models/index.js +1 -0
  25. package/dist-cjs/models/models_0.js +41 -47
  26. package/dist-cjs/models/models_1.js +40 -0
  27. package/dist-cjs/pagination/ListAccessGrantsInstancesPaginator.js +29 -0
  28. package/dist-cjs/pagination/ListAccessGrantsLocationsPaginator.js +29 -0
  29. package/dist-cjs/pagination/ListAccessGrantsPaginator.js +29 -0
  30. package/dist-cjs/pagination/index.js +3 -0
  31. package/dist-cjs/protocols/Aws_restXml.js +1777 -117
  32. package/dist-es/S3Control.js +40 -0
  33. package/dist-es/commands/AssociateAccessGrantsIdentityCenterCommand.js +54 -0
  34. package/dist-es/commands/CreateAccessGrantCommand.js +54 -0
  35. package/dist-es/commands/CreateAccessGrantsInstanceCommand.js +54 -0
  36. package/dist-es/commands/CreateAccessGrantsLocationCommand.js +54 -0
  37. package/dist-es/commands/DeleteAccessGrantCommand.js +54 -0
  38. package/dist-es/commands/DeleteAccessGrantsInstanceCommand.js +54 -0
  39. package/dist-es/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  40. package/dist-es/commands/DeleteAccessGrantsLocationCommand.js +54 -0
  41. package/dist-es/commands/DissociateAccessGrantsIdentityCenterCommand.js +54 -0
  42. package/dist-es/commands/GetAccessGrantCommand.js +54 -0
  43. package/dist-es/commands/GetAccessGrantsInstanceCommand.js +54 -0
  44. package/dist-es/commands/GetAccessGrantsInstanceForPrefixCommand.js +54 -0
  45. package/dist-es/commands/GetAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  46. package/dist-es/commands/GetAccessGrantsLocationCommand.js +54 -0
  47. package/dist-es/commands/GetDataAccessCommand.js +55 -0
  48. package/dist-es/commands/ListAccessGrantsCommand.js +54 -0
  49. package/dist-es/commands/ListAccessGrantsInstancesCommand.js +54 -0
  50. package/dist-es/commands/ListAccessGrantsLocationsCommand.js +54 -0
  51. package/dist-es/commands/PutAccessGrantsInstanceResourcePolicyCommand.js +54 -0
  52. package/dist-es/commands/UpdateAccessGrantsLocationCommand.js +54 -0
  53. package/dist-es/commands/index.js +20 -0
  54. package/dist-es/models/index.js +1 -0
  55. package/dist-es/models/models_0.js +37 -43
  56. package/dist-es/models/models_1.js +35 -0
  57. package/dist-es/pagination/ListAccessGrantsInstancesPaginator.js +25 -0
  58. package/dist-es/pagination/ListAccessGrantsLocationsPaginator.js +25 -0
  59. package/dist-es/pagination/ListAccessGrantsPaginator.js +25 -0
  60. package/dist-es/pagination/index.js +3 -0
  61. package/dist-es/protocols/Aws_restXml.js +1731 -112
  62. package/dist-types/S3Control.d.ts +140 -0
  63. package/dist-types/S3ControlClient.d.ts +22 -2
  64. package/dist-types/commands/AssociateAccessGrantsIdentityCenterCommand.d.ts +82 -0
  65. package/dist-types/commands/CreateAccessGrantCommand.d.ts +118 -0
  66. package/dist-types/commands/CreateAccessGrantsInstanceCommand.d.ts +93 -0
  67. package/dist-types/commands/CreateAccessGrantsLocationCommand.d.ts +111 -0
  68. package/dist-types/commands/CreateJobCommand.d.ts +16 -0
  69. package/dist-types/commands/DeleteAccessGrantCommand.d.ts +78 -0
  70. package/dist-types/commands/DeleteAccessGrantsInstanceCommand.d.ts +77 -0
  71. package/dist-types/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +77 -0
  72. package/dist-types/commands/DeleteAccessGrantsLocationCommand.d.ts +78 -0
  73. package/dist-types/commands/DescribeJobCommand.d.ts +16 -0
  74. package/dist-types/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +81 -0
  75. package/dist-types/commands/GetAccessGrantCommand.d.ts +93 -0
  76. package/dist-types/commands/GetAccessGrantsInstanceCommand.d.ts +82 -0
  77. package/dist-types/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +85 -0
  78. package/dist-types/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +81 -0
  79. package/dist-types/commands/GetAccessGrantsLocationCommand.d.ts +84 -0
  80. package/dist-types/commands/GetBucketReplicationCommand.d.ts +2 -1
  81. package/dist-types/commands/GetDataAccessCommand.d.ts +94 -0
  82. package/dist-types/commands/ListAccessGrantsCommand.d.ts +104 -0
  83. package/dist-types/commands/ListAccessGrantsInstancesCommand.d.ts +89 -0
  84. package/dist-types/commands/ListAccessGrantsLocationsCommand.d.ts +91 -0
  85. package/dist-types/commands/ListStorageLensGroupsCommand.d.ts +2 -1
  86. package/dist-types/commands/ListTagsForResourceCommand.d.ts +12 -9
  87. package/dist-types/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +83 -0
  88. package/dist-types/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  89. package/dist-types/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  90. package/dist-types/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  91. package/dist-types/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  92. package/dist-types/commands/PutBucketPolicyCommand.d.ts +1 -1
  93. package/dist-types/commands/PutBucketReplicationCommand.d.ts +10 -9
  94. package/dist-types/commands/PutBucketTaggingCommand.d.ts +1 -1
  95. package/dist-types/commands/PutBucketVersioningCommand.d.ts +6 -6
  96. package/dist-types/commands/PutJobTaggingCommand.d.ts +1 -1
  97. package/dist-types/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  98. package/dist-types/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  99. package/dist-types/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  100. package/dist-types/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  101. package/dist-types/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +3 -2
  102. package/dist-types/commands/TagResourceCommand.d.ts +12 -8
  103. package/dist-types/commands/UntagResourceCommand.d.ts +12 -8
  104. package/dist-types/commands/UpdateAccessGrantsLocationCommand.d.ts +90 -0
  105. package/dist-types/commands/UpdateJobPriorityCommand.d.ts +1 -1
  106. package/dist-types/commands/UpdateJobStatusCommand.d.ts +1 -1
  107. package/dist-types/commands/UpdateStorageLensGroupCommand.d.ts +1 -1
  108. package/dist-types/commands/index.d.ts +20 -0
  109. package/dist-types/models/index.d.ts +1 -0
  110. package/dist-types/models/models_0.d.ts +1211 -831
  111. package/dist-types/models/models_1.d.ts +775 -0
  112. package/dist-types/pagination/ListAccessGrantsInstancesPaginator.d.ts +7 -0
  113. package/dist-types/pagination/ListAccessGrantsLocationsPaginator.d.ts +7 -0
  114. package/dist-types/pagination/ListAccessGrantsPaginator.d.ts +7 -0
  115. package/dist-types/pagination/index.d.ts +3 -0
  116. package/dist-types/protocols/Aws_restXml.d.ts +180 -0
  117. package/dist-types/ts3.4/S3Control.d.ts +370 -0
  118. package/dist-types/ts3.4/S3ControlClient.d.ts +120 -0
  119. package/dist-types/ts3.4/commands/AssociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  120. package/dist-types/ts3.4/commands/CreateAccessGrantCommand.d.ts +39 -0
  121. package/dist-types/ts3.4/commands/CreateAccessGrantsInstanceCommand.d.ts +42 -0
  122. package/dist-types/ts3.4/commands/CreateAccessGrantsLocationCommand.d.ts +42 -0
  123. package/dist-types/ts3.4/commands/DeleteAccessGrantCommand.d.ts +34 -0
  124. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceCommand.d.ts +38 -0
  125. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +38 -0
  126. package/dist-types/ts3.4/commands/DeleteAccessGrantsLocationCommand.d.ts +38 -0
  127. package/dist-types/ts3.4/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  128. package/dist-types/ts3.4/commands/GetAccessGrantCommand.d.ts +38 -0
  129. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceCommand.d.ts +42 -0
  130. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +42 -0
  131. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  132. package/dist-types/ts3.4/commands/GetAccessGrantsLocationCommand.d.ts +42 -0
  133. package/dist-types/ts3.4/commands/GetDataAccessCommand.d.ts +35 -0
  134. package/dist-types/ts3.4/commands/ListAccessGrantsCommand.d.ts +38 -0
  135. package/dist-types/ts3.4/commands/ListAccessGrantsInstancesCommand.d.ts +42 -0
  136. package/dist-types/ts3.4/commands/ListAccessGrantsLocationsCommand.d.ts +42 -0
  137. package/dist-types/ts3.4/commands/ListStorageLensGroupsCommand.d.ts +2 -4
  138. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +1 -1
  139. package/dist-types/ts3.4/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  140. package/dist-types/ts3.4/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  141. package/dist-types/ts3.4/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  142. package/dist-types/ts3.4/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  143. package/dist-types/ts3.4/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  144. package/dist-types/ts3.4/commands/PutBucketPolicyCommand.d.ts +1 -1
  145. package/dist-types/ts3.4/commands/PutBucketReplicationCommand.d.ts +1 -1
  146. package/dist-types/ts3.4/commands/PutBucketTaggingCommand.d.ts +1 -1
  147. package/dist-types/ts3.4/commands/PutBucketVersioningCommand.d.ts +1 -1
  148. package/dist-types/ts3.4/commands/PutJobTaggingCommand.d.ts +1 -1
  149. package/dist-types/ts3.4/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  150. package/dist-types/ts3.4/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  151. package/dist-types/ts3.4/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  152. package/dist-types/ts3.4/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  153. package/dist-types/ts3.4/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +1 -1
  154. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +1 -1
  155. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +1 -1
  156. package/dist-types/ts3.4/commands/UpdateAccessGrantsLocationCommand.d.ts +42 -0
  157. package/dist-types/ts3.4/commands/UpdateJobPriorityCommand.d.ts +1 -1
  158. package/dist-types/ts3.4/commands/UpdateJobStatusCommand.d.ts +1 -1
  159. package/dist-types/ts3.4/commands/UpdateStorageLensGroupCommand.d.ts +1 -1
  160. package/dist-types/ts3.4/commands/index.d.ts +20 -0
  161. package/dist-types/ts3.4/models/index.d.ts +1 -0
  162. package/dist-types/ts3.4/models/models_0.d.ts +248 -181
  163. package/dist-types/ts3.4/models/models_1.d.ts +205 -0
  164. package/dist-types/ts3.4/pagination/ListAccessGrantsInstancesPaginator.d.ts +11 -0
  165. package/dist-types/ts3.4/pagination/ListAccessGrantsLocationsPaginator.d.ts +11 -0
  166. package/dist-types/ts3.4/pagination/ListAccessGrantsPaginator.d.ts +11 -0
  167. package/dist-types/ts3.4/pagination/index.d.ts +3 -0
  168. package/dist-types/ts3.4/protocols/Aws_restXml.d.ts +240 -0
  169. package/package.json +3 -3
@@ -37,6 +37,196 @@ export interface AccessControlTranslation {
37
37
  */
38
38
  Owner: OwnerOverride | undefined;
39
39
  }
40
+ /**
41
+ * @public
42
+ * <p>Information about the S3 Access Grants instance.</p>
43
+ */
44
+ export interface ListAccessGrantsInstanceEntry {
45
+ /**
46
+ * @public
47
+ * <p>The ID of the S3 Access Grants instance. The ID is <code>default</code>. You can have one S3 Access Grants instance per Region per account. </p>
48
+ */
49
+ AccessGrantsInstanceId?: string;
50
+ /**
51
+ * @public
52
+ * <p>The Amazon Resource Name (ARN) of the S3 Access Grants instance. </p>
53
+ */
54
+ AccessGrantsInstanceArn?: string;
55
+ /**
56
+ * @public
57
+ * <p>The date and time when you created the S3 Access Grants instance. </p>
58
+ */
59
+ CreatedAt?: Date;
60
+ /**
61
+ * @public
62
+ * <p>If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance application; a subresource of the original Identity Center instance. S3 Access Grants creates this Identity Center application for the specific S3 Access Grants instance. </p>
63
+ */
64
+ IdentityCenterArn?: string;
65
+ }
66
+ /**
67
+ * @public
68
+ * <p>The configuration options of the S3 Access Grants location. It contains the <code>S3SubPrefix</code> field. The grant scope, the data to which you are granting access, is the result of appending the <code>Subprefix</code> field to the scope of the registered location.</p>
69
+ */
70
+ export interface AccessGrantsLocationConfiguration {
71
+ /**
72
+ * @public
73
+ * <p>The <code>S3SubPrefix</code> is appended to the location scope creating the grant scope. Use this field to narrow the scope of the grant to a subset of the location scope. This field is required if the location scope is the default location <code>s3://</code> because you cannot create a grant for all of your S3 data in the Region and must narrow the scope. For example, if the location scope is the default location <code>s3://</code>, the <code>S3SubPrefx</code> can be a <bucket-name>/*, so the full grant scope path would be <code>s3://<bucket-name>/*</code>. Or the <code>S3SubPrefx</code> can be <code><bucket-name>/<prefix-name>*</code>, so the full grant scope path would be or <code>s3://<bucket-name>/<prefix-name>*</code>.</p>
74
+ * <p>If the <code>S3SubPrefix</code> includes a prefix, append the wildcard character <code>*</code> after the prefix to indicate that you want to include all object key names in the bucket that start with that prefix. </p>
75
+ */
76
+ S3SubPrefix?: string;
77
+ }
78
+ /**
79
+ * @public
80
+ * @enum
81
+ */
82
+ export declare const GranteeType: {
83
+ readonly DIRECTORY_GROUP: "DIRECTORY_GROUP";
84
+ readonly DIRECTORY_USER: "DIRECTORY_USER";
85
+ readonly IAM: "IAM";
86
+ };
87
+ /**
88
+ * @public
89
+ */
90
+ export type GranteeType = (typeof GranteeType)[keyof typeof GranteeType];
91
+ /**
92
+ * @public
93
+ * <p>The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.</p>
94
+ */
95
+ export interface Grantee {
96
+ /**
97
+ * @public
98
+ * <p>The type of the grantee to which access has been granted. It can be one of the following values:</p>
99
+ * <ul>
100
+ * <li>
101
+ * <p>
102
+ * <code>IAM</code> - An IAM user or role.</p>
103
+ * </li>
104
+ * <li>
105
+ * <p>
106
+ * <code>DIRECTORY_USER</code> - Your corporate directory user. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.</p>
107
+ * </li>
108
+ * <li>
109
+ * <p>
110
+ * <code>DIRECTORY_GROUP</code> - Your corporate directory group. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.</p>
111
+ * </li>
112
+ * </ul>
113
+ */
114
+ GranteeType?: GranteeType;
115
+ /**
116
+ * @public
117
+ * <p>The unique identifier of the <code>Grantee</code>. If the grantee type is <code>IAM</code>, the identifier is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee type is a directory user or group, the identifier is 128-bit universally unique identifier (UUID) in the format <code>a1b2c3d4-5678-90ab-cdef-EXAMPLE11111</code>. You can obtain this UUID from your Amazon Web Services IAM Identity Center instance.</p>
118
+ */
119
+ GranteeIdentifier?: string;
120
+ }
121
+ /**
122
+ * @public
123
+ * @enum
124
+ */
125
+ export declare const Permission: {
126
+ readonly READ: "READ";
127
+ readonly READWRITE: "READWRITE";
128
+ readonly WRITE: "WRITE";
129
+ };
130
+ /**
131
+ * @public
132
+ */
133
+ export type Permission = (typeof Permission)[keyof typeof Permission];
134
+ /**
135
+ * @public
136
+ * <p>Information about the access grant.</p>
137
+ */
138
+ export interface ListAccessGrantEntry {
139
+ /**
140
+ * @public
141
+ * <p>The date and time when you created the S3 Access Grants instance. </p>
142
+ */
143
+ CreatedAt?: Date;
144
+ /**
145
+ * @public
146
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
147
+ */
148
+ AccessGrantId?: string;
149
+ /**
150
+ * @public
151
+ * <p>The Amazon Resource Name (ARN) of the access grant. </p>
152
+ */
153
+ AccessGrantArn?: string;
154
+ /**
155
+ * @public
156
+ * <p>The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.</p>
157
+ */
158
+ Grantee?: Grantee;
159
+ /**
160
+ * @public
161
+ * <p>The type of access granted to your S3 data, which can be set to one of the following values:</p>
162
+ * <ul>
163
+ * <li>
164
+ * <p>
165
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
166
+ * </li>
167
+ * <li>
168
+ * <p>
169
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
170
+ * </li>
171
+ * <li>
172
+ * <p>
173
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
174
+ * </li>
175
+ * </ul>
176
+ */
177
+ Permission?: Permission;
178
+ /**
179
+ * @public
180
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
181
+ */
182
+ AccessGrantsLocationId?: string;
183
+ /**
184
+ * @public
185
+ * <p>The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access. </p>
186
+ */
187
+ AccessGrantsLocationConfiguration?: AccessGrantsLocationConfiguration;
188
+ /**
189
+ * @public
190
+ * <p>The S3 path of the data to which you are granting access. It is the result of appending the <code>Subprefix</code> to the location scope.</p>
191
+ */
192
+ GrantScope?: string;
193
+ /**
194
+ * @public
195
+ * <p>The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application. </p>
196
+ */
197
+ ApplicationArn?: string;
198
+ }
199
+ /**
200
+ * @public
201
+ * <p>A container for information about the registered location.</p>
202
+ */
203
+ export interface ListAccessGrantsLocationsEntry {
204
+ /**
205
+ * @public
206
+ * <p>The date and time when you registered the location. </p>
207
+ */
208
+ CreatedAt?: Date;
209
+ /**
210
+ * @public
211
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
212
+ */
213
+ AccessGrantsLocationId?: string;
214
+ /**
215
+ * @public
216
+ * <p>The Amazon Resource Name (ARN) of the registered location. </p>
217
+ */
218
+ AccessGrantsLocationArn?: string;
219
+ /**
220
+ * @public
221
+ * <p>The S3 path to the location that you are registering. The location scope can be the default S3 location <code>s3://</code>, the S3 path to a bucket <code>s3://<bucket></code>, or the S3 path to a bucket and prefix <code>s3://<bucket>/<prefix></code>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the <code>engineering/</code> prefix or object key names that start with the <code>marketing/campaigns/</code> prefix.</p>
222
+ */
223
+ LocationScope?: string;
224
+ /**
225
+ * @public
226
+ * <p>The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location. </p>
227
+ */
228
+ IAMRoleArn?: string;
229
+ }
40
230
  /**
41
231
  * @public
42
232
  * @enum
@@ -328,6 +518,21 @@ export interface AccountLevel {
328
518
  */
329
519
  StorageLensGroupLevel?: StorageLensGroupLevel;
330
520
  }
521
+ /**
522
+ * @public
523
+ */
524
+ export interface AssociateAccessGrantsIdentityCenterRequest {
525
+ /**
526
+ * @public
527
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
528
+ */
529
+ AccountId?: string;
530
+ /**
531
+ * @public
532
+ * <p>The Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate identity directory that you added to the IAM Identity Center. You can use the <a href="https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ListInstances.html">ListInstances</a> API operation to retrieve a list of your Identity Center instances and their ARNs.</p>
533
+ */
534
+ IdentityCenterArn: string | undefined;
535
+ }
331
536
  /**
332
537
  * @public
333
538
  * <p>Error details for the failed asynchronous operation.</p>
@@ -618,119 +823,378 @@ export interface AwsLambdaTransformation {
618
823
  }
619
824
  /**
620
825
  * @public
826
+ * @enum
621
827
  */
622
- export interface CreateAccessPointRequest {
828
+ export declare const S3PrefixType: {
829
+ readonly Object: "Object";
830
+ };
831
+ /**
832
+ * @public
833
+ */
834
+ export type S3PrefixType = (typeof S3PrefixType)[keyof typeof S3PrefixType];
835
+ /**
836
+ * @public
837
+ * <p>
838
+ * An Amazon Web Services resource tag that's associated with your S3 resource. You can add tags to new objects when you upload them, or you can add object tags to existing objects.
839
+ * </p>
840
+ * <note>
841
+ * <p>This operation is only supported for <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">S3 Storage Lens groups</a> and for <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-grants-tagging.html">S3 Access Grants</a>. The tagged resource can be an S3 Storage Lens group or S3 Access Grants instance, registered location, or grant. </p>
842
+ * </note>
843
+ */
844
+ export interface Tag {
623
845
  /**
624
846
  * @public
625
- * <p>The Amazon Web Services account ID for the account that owns the specified access point.</p>
847
+ * <p>The key of the key-value pair of a tag added to your Amazon Web Services resource. A tag key can be up to 128 Unicode characters in length and is case-sensitive. System created tags that begin with <code>aws:</code> aren’t supported.
848
+ * </p>
849
+ */
850
+ Key: string | undefined;
851
+ /**
852
+ * @public
853
+ * <p>
854
+ * The value of the key-value pair of a tag added to your Amazon Web Services resource. A tag value can be up to 256 Unicode characters in length and is case-sensitive.
855
+ * </p>
856
+ */
857
+ Value: string | undefined;
858
+ }
859
+ /**
860
+ * @public
861
+ */
862
+ export interface CreateAccessGrantRequest {
863
+ /**
864
+ * @public
865
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
626
866
  */
627
867
  AccountId?: string;
628
868
  /**
629
869
  * @public
630
- * <p>The name you want to assign to this access point.</p>
870
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
871
+ * <p>If you are passing the <code>default</code> location, you cannot create an access grant for the entire default location. You must also specify a bucket or a bucket and prefix in the <code>Subprefix</code> field. </p>
631
872
  */
632
- Name: string | undefined;
873
+ AccessGrantsLocationId: string | undefined;
633
874
  /**
634
875
  * @public
635
- * <p>The name of the bucket that you want to associate this access point with.</p>
636
- * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
637
- * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name></code>. For example, to access the bucket <code>reports</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports</code>. The value must be URL encoded. </p>
876
+ * <p>The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access. It contains the <code>S3SubPrefix</code> field. The grant scope is the result of appending the subprefix to the location scope of the registered location.</p>
638
877
  */
639
- Bucket: string | undefined;
878
+ AccessGrantsLocationConfiguration?: AccessGrantsLocationConfiguration;
640
879
  /**
641
880
  * @public
642
- * <p>If you include this field, Amazon S3 restricts access to this access point to requests from the
643
- * specified virtual private cloud (VPC).</p>
644
- * <note>
645
- * <p>This is required for creating an access point for Amazon S3 on Outposts buckets.</p>
646
- * </note>
881
+ * <p>The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.</p>
647
882
  */
648
- VpcConfiguration?: VpcConfiguration;
883
+ Grantee: Grantee | undefined;
649
884
  /**
650
885
  * @public
651
- * <p> The <code>PublicAccessBlock</code> configuration that you want to apply to the access point.
652
- * </p>
886
+ * <p>The type of access that you are granting to your S3 data, which can be set to one of the following values:</p>
887
+ * <ul>
888
+ * <li>
889
+ * <p>
890
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
891
+ * </li>
892
+ * <li>
893
+ * <p>
894
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
895
+ * </li>
896
+ * <li>
897
+ * <p>
898
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
899
+ * </li>
900
+ * </ul>
653
901
  */
654
- PublicAccessBlockConfiguration?: PublicAccessBlockConfiguration;
902
+ Permission: Permission | undefined;
655
903
  /**
656
904
  * @public
657
- * <p>The Amazon Web Services account ID associated with the S3 bucket associated with this access point.</p>
905
+ * <p>The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If an application ARN is included in the request to create an access grant, the grantee can only access the S3 data through this application. </p>
658
906
  */
659
- BucketAccountId?: string;
660
- }
661
- /**
662
- * @public
663
- */
664
- export interface CreateAccessPointResult {
907
+ ApplicationArn?: string;
665
908
  /**
666
909
  * @public
667
- * <p>The ARN of the access point.</p>
668
- * <note>
669
- * <p>This is only supported by Amazon S3 on Outposts.</p>
670
- * </note>
910
+ * <p>The type of <code>S3SubPrefix</code>. The only possible value is <code>Object</code>. Pass this value if the access grant scope is an object. Do not pass this value if the access grant scope is a bucket or a bucket and a prefix. </p>
671
911
  */
672
- AccessPointArn?: string;
912
+ S3PrefixType?: S3PrefixType;
673
913
  /**
674
914
  * @public
675
- * <p>The name or alias of the access point.</p>
915
+ * <p>The Amazon Web Services resource tags that you are adding to the access grant. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources. </p>
676
916
  */
677
- Alias?: string;
917
+ Tags?: Tag[];
678
918
  }
679
- /**
680
- * @public
681
- * @enum
682
- */
683
- export declare const ObjectLambdaAllowedFeature: {
684
- readonly GetObjectPartNumber: "GetObject-PartNumber";
685
- readonly GetObjectRange: "GetObject-Range";
686
- readonly HeadObjectPartNumber: "HeadObject-PartNumber";
687
- readonly HeadObjectRange: "HeadObject-Range";
688
- };
689
- /**
690
- * @public
691
- */
692
- export type ObjectLambdaAllowedFeature = (typeof ObjectLambdaAllowedFeature)[keyof typeof ObjectLambdaAllowedFeature];
693
- /**
694
- * @public
695
- * @enum
696
- */
697
- export declare const ObjectLambdaTransformationConfigurationAction: {
698
- readonly GetObject: "GetObject";
699
- readonly HeadObject: "HeadObject";
700
- readonly ListObjects: "ListObjects";
701
- readonly ListObjectsV2: "ListObjectsV2";
702
- };
703
- /**
704
- * @public
705
- */
706
- export type ObjectLambdaTransformationConfigurationAction = (typeof ObjectLambdaTransformationConfigurationAction)[keyof typeof ObjectLambdaTransformationConfigurationAction];
707
- /**
708
- * @public
709
- * <p>A container for AwsLambdaTransformation.</p>
710
- */
711
- export type ObjectLambdaContentTransformation = ObjectLambdaContentTransformation.AwsLambdaMember | ObjectLambdaContentTransformation.$UnknownMember;
712
919
  /**
713
920
  * @public
714
921
  */
715
- export declare namespace ObjectLambdaContentTransformation {
922
+ export interface CreateAccessGrantResult {
716
923
  /**
717
924
  * @public
718
- * <p>A container for an Lambda function.</p>
925
+ * <p>The date and time when you created the access grant. </p>
719
926
  */
720
- interface AwsLambdaMember {
721
- AwsLambda: AwsLambdaTransformation;
722
- $unknown?: never;
723
- }
927
+ CreatedAt?: Date;
724
928
  /**
725
929
  * @public
930
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
726
931
  */
727
- interface $UnknownMember {
728
- AwsLambda?: never;
729
- $unknown: [string, any];
730
- }
731
- interface Visitor<T> {
732
- AwsLambda: (value: AwsLambdaTransformation) => T;
733
- _: (name: string, value: any) => T;
932
+ AccessGrantId?: string;
933
+ /**
934
+ * @public
935
+ * <p>The Amazon Resource Name (ARN) of the access grant. </p>
936
+ */
937
+ AccessGrantArn?: string;
938
+ /**
939
+ * @public
940
+ * <p>The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added your corporate directory to Amazon Web Services IAM Identity Center and associated your Identity Center instance with your S3 Access Grants instance, the grantee can also be a corporate directory user or group.</p>
941
+ */
942
+ Grantee?: Grantee;
943
+ /**
944
+ * @public
945
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
946
+ */
947
+ AccessGrantsLocationId?: string;
948
+ /**
949
+ * @public
950
+ * <p>The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access. </p>
951
+ */
952
+ AccessGrantsLocationConfiguration?: AccessGrantsLocationConfiguration;
953
+ /**
954
+ * @public
955
+ * <p>The type of access that you are granting to your S3 data, which can be set to one of the following values:</p>
956
+ * <ul>
957
+ * <li>
958
+ * <p>
959
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
960
+ * </li>
961
+ * <li>
962
+ * <p>
963
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
964
+ * </li>
965
+ * <li>
966
+ * <p>
967
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
968
+ * </li>
969
+ * </ul>
970
+ */
971
+ Permission?: Permission;
972
+ /**
973
+ * @public
974
+ * <p>The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application. </p>
975
+ */
976
+ ApplicationArn?: string;
977
+ /**
978
+ * @public
979
+ * <p>The S3 path of the data to which you are granting access. It is the result of appending the <code>Subprefix</code> to the location scope. </p>
980
+ */
981
+ GrantScope?: string;
982
+ }
983
+ /**
984
+ * @public
985
+ */
986
+ export interface CreateAccessGrantsInstanceRequest {
987
+ /**
988
+ * @public
989
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
990
+ */
991
+ AccountId?: string;
992
+ /**
993
+ * @public
994
+ * <p>If you would like to associate your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, use this field to pass the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance that you are associating with your S3 Access Grants instance. An IAM Identity Center instance is your corporate identity directory that you added to the IAM Identity Center. You can use the <a href="https://docs.aws.amazon.com/singlesignon/latest/APIReference/API_ListInstances.html">ListInstances</a> API operation to retrieve a list of your Identity Center instances and their ARNs. </p>
995
+ */
996
+ IdentityCenterArn?: string;
997
+ /**
998
+ * @public
999
+ * <p>The Amazon Web Services resource tags that you are adding to the S3 Access Grants instance. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources. </p>
1000
+ */
1001
+ Tags?: Tag[];
1002
+ }
1003
+ /**
1004
+ * @public
1005
+ */
1006
+ export interface CreateAccessGrantsInstanceResult {
1007
+ /**
1008
+ * @public
1009
+ * <p>The date and time when you created the S3 Access Grants instance. </p>
1010
+ */
1011
+ CreatedAt?: Date;
1012
+ /**
1013
+ * @public
1014
+ * <p>The ID of the S3 Access Grants instance. The ID is <code>default</code>. You can have one S3 Access Grants instance per Region per account. </p>
1015
+ */
1016
+ AccessGrantsInstanceId?: string;
1017
+ /**
1018
+ * @public
1019
+ * <p>The Amazon Resource Name (ARN) of the S3 Access Grants instance. </p>
1020
+ */
1021
+ AccessGrantsInstanceArn?: string;
1022
+ /**
1023
+ * @public
1024
+ * <p>If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the IAM Identity Center instance application; a subresource of the original Identity Center instance passed in the request. S3 Access Grants creates this Identity Center application for this specific S3 Access Grants instance. </p>
1025
+ */
1026
+ IdentityCenterArn?: string;
1027
+ }
1028
+ /**
1029
+ * @public
1030
+ */
1031
+ export interface CreateAccessGrantsLocationRequest {
1032
+ /**
1033
+ * @public
1034
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
1035
+ */
1036
+ AccountId?: string;
1037
+ /**
1038
+ * @public
1039
+ * <p>The S3 path to the location that you are registering. The location scope can be the default S3 location <code>s3://</code>, the S3 path to a bucket <code>s3://<bucket></code>, or the S3 path to a bucket and prefix <code>s3://<bucket>/<prefix></code>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the <code>engineering/</code> prefix or object key names that start with the <code>marketing/campaigns/</code> prefix.</p>
1040
+ */
1041
+ LocationScope: string | undefined;
1042
+ /**
1043
+ * @public
1044
+ * <p>The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location. </p>
1045
+ */
1046
+ IAMRoleArn: string | undefined;
1047
+ /**
1048
+ * @public
1049
+ * <p>The Amazon Web Services resource tags that you are adding to the S3 Access Grants location. Each tag is a label consisting of a user-defined key and value. Tags can help you manage, identify, organize, search for, and filter resources.</p>
1050
+ */
1051
+ Tags?: Tag[];
1052
+ }
1053
+ /**
1054
+ * @public
1055
+ */
1056
+ export interface CreateAccessGrantsLocationResult {
1057
+ /**
1058
+ * @public
1059
+ * <p>The date and time when you registered the location. </p>
1060
+ */
1061
+ CreatedAt?: Date;
1062
+ /**
1063
+ * @public
1064
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
1065
+ */
1066
+ AccessGrantsLocationId?: string;
1067
+ /**
1068
+ * @public
1069
+ * <p>The Amazon Resource Name (ARN) of the location you are registering.</p>
1070
+ */
1071
+ AccessGrantsLocationArn?: string;
1072
+ /**
1073
+ * @public
1074
+ * <p>The S3 URI path to the location that you are registering. The location scope can be the default S3 location <code>s3://</code>, the S3 path to a bucket, or the S3 path to a bucket and prefix. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the <code>engineering/</code> prefix or object key names that start with the <code>marketing/campaigns/</code> prefix.</p>
1075
+ */
1076
+ LocationScope?: string;
1077
+ /**
1078
+ * @public
1079
+ * <p>The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location. </p>
1080
+ */
1081
+ IAMRoleArn?: string;
1082
+ }
1083
+ /**
1084
+ * @public
1085
+ */
1086
+ export interface CreateAccessPointRequest {
1087
+ /**
1088
+ * @public
1089
+ * <p>The Amazon Web Services account ID for the account that owns the specified access point.</p>
1090
+ */
1091
+ AccountId?: string;
1092
+ /**
1093
+ * @public
1094
+ * <p>The name you want to assign to this access point.</p>
1095
+ */
1096
+ Name: string | undefined;
1097
+ /**
1098
+ * @public
1099
+ * <p>The name of the bucket that you want to associate this access point with.</p>
1100
+ * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
1101
+ * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name></code>. For example, to access the bucket <code>reports</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports</code>. The value must be URL encoded. </p>
1102
+ */
1103
+ Bucket: string | undefined;
1104
+ /**
1105
+ * @public
1106
+ * <p>If you include this field, Amazon S3 restricts access to this access point to requests from the
1107
+ * specified virtual private cloud (VPC).</p>
1108
+ * <note>
1109
+ * <p>This is required for creating an access point for Amazon S3 on Outposts buckets.</p>
1110
+ * </note>
1111
+ */
1112
+ VpcConfiguration?: VpcConfiguration;
1113
+ /**
1114
+ * @public
1115
+ * <p> The <code>PublicAccessBlock</code> configuration that you want to apply to the access point.
1116
+ * </p>
1117
+ */
1118
+ PublicAccessBlockConfiguration?: PublicAccessBlockConfiguration;
1119
+ /**
1120
+ * @public
1121
+ * <p>The Amazon Web Services account ID associated with the S3 bucket associated with this access point.</p>
1122
+ */
1123
+ BucketAccountId?: string;
1124
+ }
1125
+ /**
1126
+ * @public
1127
+ */
1128
+ export interface CreateAccessPointResult {
1129
+ /**
1130
+ * @public
1131
+ * <p>The ARN of the access point.</p>
1132
+ * <note>
1133
+ * <p>This is only supported by Amazon S3 on Outposts.</p>
1134
+ * </note>
1135
+ */
1136
+ AccessPointArn?: string;
1137
+ /**
1138
+ * @public
1139
+ * <p>The name or alias of the access point.</p>
1140
+ */
1141
+ Alias?: string;
1142
+ }
1143
+ /**
1144
+ * @public
1145
+ * @enum
1146
+ */
1147
+ export declare const ObjectLambdaAllowedFeature: {
1148
+ readonly GetObjectPartNumber: "GetObject-PartNumber";
1149
+ readonly GetObjectRange: "GetObject-Range";
1150
+ readonly HeadObjectPartNumber: "HeadObject-PartNumber";
1151
+ readonly HeadObjectRange: "HeadObject-Range";
1152
+ };
1153
+ /**
1154
+ * @public
1155
+ */
1156
+ export type ObjectLambdaAllowedFeature = (typeof ObjectLambdaAllowedFeature)[keyof typeof ObjectLambdaAllowedFeature];
1157
+ /**
1158
+ * @public
1159
+ * @enum
1160
+ */
1161
+ export declare const ObjectLambdaTransformationConfigurationAction: {
1162
+ readonly GetObject: "GetObject";
1163
+ readonly HeadObject: "HeadObject";
1164
+ readonly ListObjects: "ListObjects";
1165
+ readonly ListObjectsV2: "ListObjectsV2";
1166
+ };
1167
+ /**
1168
+ * @public
1169
+ */
1170
+ export type ObjectLambdaTransformationConfigurationAction = (typeof ObjectLambdaTransformationConfigurationAction)[keyof typeof ObjectLambdaTransformationConfigurationAction];
1171
+ /**
1172
+ * @public
1173
+ * <p>A container for AwsLambdaTransformation.</p>
1174
+ */
1175
+ export type ObjectLambdaContentTransformation = ObjectLambdaContentTransformation.AwsLambdaMember | ObjectLambdaContentTransformation.$UnknownMember;
1176
+ /**
1177
+ * @public
1178
+ */
1179
+ export declare namespace ObjectLambdaContentTransformation {
1180
+ /**
1181
+ * @public
1182
+ * <p>A container for an Lambda function.</p>
1183
+ */
1184
+ interface AwsLambdaMember {
1185
+ AwsLambda: AwsLambdaTransformation;
1186
+ $unknown?: never;
1187
+ }
1188
+ /**
1189
+ * @public
1190
+ */
1191
+ interface $UnknownMember {
1192
+ AwsLambda?: never;
1193
+ $unknown: [string, any];
1194
+ }
1195
+ interface Visitor<T> {
1196
+ AwsLambda: (value: AwsLambdaTransformation) => T;
1197
+ _: (name: string, value: any) => T;
734
1198
  }
735
1199
  const visit: <T>(value: ObjectLambdaContentTransformation, visitor: Visitor<T>) => T;
736
1200
  }
@@ -814,8 +1278,8 @@ export declare const ObjectLambdaAccessPointAliasStatus: {
814
1278
  export type ObjectLambdaAccessPointAliasStatus = (typeof ObjectLambdaAccessPointAliasStatus)[keyof typeof ObjectLambdaAccessPointAliasStatus];
815
1279
  /**
816
1280
  * @public
817
- * <p>The alias of an Object Lambda Access Point. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html#ol-access-points-alias">How to use a bucket-style alias for your S3 bucket
818
- * Object Lambda Access Point</a>.</p>
1281
+ * <p>The alias of an Object Lambda Access Point. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/olap-use.html#ol-access-points-alias">How to use a
1282
+ * bucket-style alias for your S3 bucket Object Lambda Access Point</a>.</p>
819
1283
  */
820
1284
  export interface ObjectLambdaAccessPointAlias {
821
1285
  /**
@@ -825,8 +1289,10 @@ export interface ObjectLambdaAccessPointAlias {
825
1289
  Value?: string;
826
1290
  /**
827
1291
  * @public
828
- * <p>The status of the Object Lambda Access Point alias. If the status is <code>PROVISIONING</code>, the Object Lambda Access Point is provisioning the alias and the alias is not ready for use yet. If
829
- * the status is <code>READY</code>, the Object Lambda Access Point alias is successfully provisioned and ready for use.</p>
1292
+ * <p>The status of the Object Lambda Access Point alias. If the status is <code>PROVISIONING</code>, the Object Lambda Access Point
1293
+ * is provisioning the alias and the alias is not ready for use yet. If the status is
1294
+ * <code>READY</code>, the Object Lambda Access Point alias is successfully provisioned and ready for
1295
+ * use.</p>
830
1296
  */
831
1297
  Status?: ObjectLambdaAccessPointAliasStatus;
832
1298
  }
@@ -1125,6 +1591,49 @@ export interface JobManifest {
1125
1591
  */
1126
1592
  Location: JobManifestLocation | undefined;
1127
1593
  }
1594
+ /**
1595
+ * @public
1596
+ * <p>If provided, the generated manifest includes only source bucket objects whose object
1597
+ * keys match the string constraints specified for <code>MatchAnyPrefix</code>,
1598
+ * <code>MatchAnySuffix</code>, and <code>MatchAnySubstring</code>.</p>
1599
+ */
1600
+ export interface KeyNameConstraint {
1601
+ /**
1602
+ * @public
1603
+ * <p>If provided, the generated manifest includes objects where the specified string appears
1604
+ * at the start of the object key string.</p>
1605
+ */
1606
+ MatchAnyPrefix?: string[];
1607
+ /**
1608
+ * @public
1609
+ * <p>If provided, the generated manifest includes objects where the specified string appears
1610
+ * at the end of the object key string.</p>
1611
+ */
1612
+ MatchAnySuffix?: string[];
1613
+ /**
1614
+ * @public
1615
+ * <p>If provided, the generated manifest includes objects where the specified string appears
1616
+ * anywhere within the object key string.</p>
1617
+ */
1618
+ MatchAnySubstring?: string[];
1619
+ }
1620
+ /**
1621
+ * @public
1622
+ * @enum
1623
+ */
1624
+ export declare const S3StorageClass: {
1625
+ readonly DEEP_ARCHIVE: "DEEP_ARCHIVE";
1626
+ readonly GLACIER: "GLACIER";
1627
+ readonly GLACIER_IR: "GLACIER_IR";
1628
+ readonly INTELLIGENT_TIERING: "INTELLIGENT_TIERING";
1629
+ readonly ONEZONE_IA: "ONEZONE_IA";
1630
+ readonly STANDARD: "STANDARD";
1631
+ readonly STANDARD_IA: "STANDARD_IA";
1632
+ };
1633
+ /**
1634
+ * @public
1635
+ */
1636
+ export type S3StorageClass = (typeof S3StorageClass)[keyof typeof S3StorageClass];
1128
1637
  /**
1129
1638
  * @public
1130
1639
  * @enum
@@ -1152,28 +1661,53 @@ export interface JobManifestGeneratorFilter {
1152
1661
  EligibleForReplication?: boolean;
1153
1662
  /**
1154
1663
  * @public
1155
- * <p>If provided, the generated manifest should include only source bucket objects that were
1664
+ * <p>If provided, the generated manifest includes only source bucket objects that were
1156
1665
  * created after this time.</p>
1157
1666
  */
1158
1667
  CreatedAfter?: Date;
1159
1668
  /**
1160
1669
  * @public
1161
- * <p>If provided, the generated manifest should include only source bucket objects that were
1670
+ * <p>If provided, the generated manifest includes only source bucket objects that were
1162
1671
  * created before this time.</p>
1163
1672
  */
1164
1673
  CreatedBefore?: Date;
1165
1674
  /**
1166
1675
  * @public
1167
- * <p>If provided, the generated manifest should include only source bucket objects that have
1168
- * one of the specified Replication statuses.</p>
1676
+ * <p>If provided, the generated manifest includes only source bucket objects that have one of
1677
+ * the specified Replication statuses.</p>
1169
1678
  */
1170
1679
  ObjectReplicationStatuses?: ReplicationStatus[];
1171
- }
1172
- /**
1173
- * @public
1174
- * <p>Configuration for the use of SSE-KMS to encrypt generated manifest objects.</p>
1175
- */
1176
- export interface SSEKMSEncryption {
1680
+ /**
1681
+ * @public
1682
+ * <p>If provided, the generated manifest includes only source bucket objects whose object
1683
+ * keys match the string constraints specified for <code>MatchAnyPrefix</code>,
1684
+ * <code>MatchAnySuffix</code>, and <code>MatchAnySubstring</code>.</p>
1685
+ */
1686
+ KeyNameConstraint?: KeyNameConstraint;
1687
+ /**
1688
+ * @public
1689
+ * <p>If provided, the generated manifest includes only source bucket objects whose file size
1690
+ * is greater than the specified number of bytes.</p>
1691
+ */
1692
+ ObjectSizeGreaterThanBytes?: number;
1693
+ /**
1694
+ * @public
1695
+ * <p>If provided, the generated manifest includes only source bucket objects whose file size
1696
+ * is less than the specified number of bytes.</p>
1697
+ */
1698
+ ObjectSizeLessThanBytes?: number;
1699
+ /**
1700
+ * @public
1701
+ * <p>If provided, the generated manifest includes only source bucket objects that are stored
1702
+ * with the specified storage class.</p>
1703
+ */
1704
+ MatchAnyStorageClass?: S3StorageClass[];
1705
+ }
1706
+ /**
1707
+ * @public
1708
+ * <p>Configuration for the use of SSE-KMS to encrypt generated manifest objects.</p>
1709
+ */
1710
+ export interface SSEKMSEncryption {
1177
1711
  /**
1178
1712
  * @public
1179
1713
  * <p>Specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric encryption
@@ -1669,23 +2203,6 @@ export declare const S3ObjectLockMode: {
1669
2203
  * @public
1670
2204
  */
1671
2205
  export type S3ObjectLockMode = (typeof S3ObjectLockMode)[keyof typeof S3ObjectLockMode];
1672
- /**
1673
- * @public
1674
- * @enum
1675
- */
1676
- export declare const S3StorageClass: {
1677
- readonly DEEP_ARCHIVE: "DEEP_ARCHIVE";
1678
- readonly GLACIER: "GLACIER";
1679
- readonly GLACIER_IR: "GLACIER_IR";
1680
- readonly INTELLIGENT_TIERING: "INTELLIGENT_TIERING";
1681
- readonly ONEZONE_IA: "ONEZONE_IA";
1682
- readonly STANDARD: "STANDARD";
1683
- readonly STANDARD_IA: "STANDARD_IA";
1684
- };
1685
- /**
1686
- * @public
1687
- */
1688
- export type S3StorageClass = (typeof S3StorageClass)[keyof typeof S3StorageClass];
1689
2206
  /**
1690
2207
  * @public
1691
2208
  * <p>Contains
@@ -1812,7 +2329,8 @@ export interface S3CopyObjectOperation {
1812
2329
  * that
1813
2330
  * you want Amazon S3 to use to create the checksum. For more
1814
2331
  * information,
1815
- * see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
2332
+ * see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html"> Checking object
2333
+ * integrity</a> in the <i>Amazon S3 User Guide</i>.</p>
1816
2334
  */
1817
2335
  ChecksumAlgorithm?: S3ChecksumAlgorithm;
1818
2336
  }
@@ -2426,31 +2944,6 @@ export interface StorageLensGroup {
2426
2944
  */
2427
2945
  StorageLensGroupArn?: string;
2428
2946
  }
2429
- /**
2430
- * @public
2431
- * <p>
2432
- * An Amazon Web Services resource tag that's associated with your S3 resource. You can add tags to new objects when you upload them, or you can add object tags to existing objects.
2433
- * </p>
2434
- * <note>
2435
- * <p>This data type is only supported for <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage-lens-groups.html">S3 Storage Lens groups</a>.</p>
2436
- * </note>
2437
- */
2438
- export interface Tag {
2439
- /**
2440
- * @public
2441
- * <p> The tag key for your Amazon Web Services resource. A tag key can be up to 128 Unicode characters in
2442
- * length and is case-sensitive. System created tags that begin with <code>aws:</code> aren’t supported.
2443
- * </p>
2444
- */
2445
- Key: string | undefined;
2446
- /**
2447
- * @public
2448
- * <p>
2449
- * The tag value for your Amazon Web Services resource. A tag value can be up to 256 Unicode characters in length and is case-sensitive.
2450
- * </p>
2451
- */
2452
- Value: string | undefined;
2453
- }
2454
2947
  /**
2455
2948
  * @public
2456
2949
  */
@@ -2477,6 +2970,56 @@ export interface CreateStorageLensGroupRequest {
2477
2970
  */
2478
2971
  Tags?: Tag[];
2479
2972
  }
2973
+ /**
2974
+ * @public
2975
+ */
2976
+ export interface DeleteAccessGrantRequest {
2977
+ /**
2978
+ * @public
2979
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
2980
+ */
2981
+ AccountId?: string;
2982
+ /**
2983
+ * @public
2984
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
2985
+ */
2986
+ AccessGrantId: string | undefined;
2987
+ }
2988
+ /**
2989
+ * @public
2990
+ */
2991
+ export interface DeleteAccessGrantsInstanceRequest {
2992
+ /**
2993
+ * @public
2994
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
2995
+ */
2996
+ AccountId?: string;
2997
+ }
2998
+ /**
2999
+ * @public
3000
+ */
3001
+ export interface DeleteAccessGrantsInstanceResourcePolicyRequest {
3002
+ /**
3003
+ * @public
3004
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3005
+ */
3006
+ AccountId?: string;
3007
+ }
3008
+ /**
3009
+ * @public
3010
+ */
3011
+ export interface DeleteAccessGrantsLocationRequest {
3012
+ /**
3013
+ * @public
3014
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3015
+ */
3016
+ AccountId?: string;
3017
+ /**
3018
+ * @public
3019
+ * <p>The ID of the registered location that you are deregistering from your S3 Access Grants instance. S3 Access Grants assigned this ID when you registered the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
3020
+ */
3021
+ AccessGrantsLocationId: string | undefined;
3022
+ }
2480
3023
  /**
2481
3024
  * @public
2482
3025
  */
@@ -3019,6 +3562,235 @@ export interface DescribeMultiRegionAccessPointOperationResult {
3019
3562
  */
3020
3563
  AsyncOperation?: AsyncOperation;
3021
3564
  }
3565
+ /**
3566
+ * @public
3567
+ */
3568
+ export interface DissociateAccessGrantsIdentityCenterRequest {
3569
+ /**
3570
+ * @public
3571
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3572
+ */
3573
+ AccountId?: string;
3574
+ }
3575
+ /**
3576
+ * @public
3577
+ */
3578
+ export interface GetAccessGrantRequest {
3579
+ /**
3580
+ * @public
3581
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3582
+ */
3583
+ AccountId?: string;
3584
+ /**
3585
+ * @public
3586
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
3587
+ */
3588
+ AccessGrantId: string | undefined;
3589
+ }
3590
+ /**
3591
+ * @public
3592
+ */
3593
+ export interface GetAccessGrantResult {
3594
+ /**
3595
+ * @public
3596
+ * <p>The date and time when you created the access grant. </p>
3597
+ */
3598
+ CreatedAt?: Date;
3599
+ /**
3600
+ * @public
3601
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
3602
+ */
3603
+ AccessGrantId?: string;
3604
+ /**
3605
+ * @public
3606
+ * <p>The Amazon Resource Name (ARN) of the access grant. </p>
3607
+ */
3608
+ AccessGrantArn?: string;
3609
+ /**
3610
+ * @public
3611
+ * <p>The user, group, or role to which you are granting access. You can grant access to an IAM user or role. If you have added a corporate directory to Amazon Web Services IAM Identity Center and associated this Identity Center instance with the S3 Access Grants instance, the grantee can also be a corporate directory user or group.</p>
3612
+ */
3613
+ Grantee?: Grantee;
3614
+ /**
3615
+ * @public
3616
+ * <p>The type of permission that was granted in the access grant. Can be one of the following values:</p>
3617
+ * <ul>
3618
+ * <li>
3619
+ * <p>
3620
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
3621
+ * </li>
3622
+ * <li>
3623
+ * <p>
3624
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
3625
+ * </li>
3626
+ * <li>
3627
+ * <p>
3628
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
3629
+ * </li>
3630
+ * </ul>
3631
+ */
3632
+ Permission?: Permission;
3633
+ /**
3634
+ * @public
3635
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
3636
+ */
3637
+ AccessGrantsLocationId?: string;
3638
+ /**
3639
+ * @public
3640
+ * <p>The configuration options of the grant location. The grant location is the S3 path to the data to which you are granting access. </p>
3641
+ */
3642
+ AccessGrantsLocationConfiguration?: AccessGrantsLocationConfiguration;
3643
+ /**
3644
+ * @public
3645
+ * <p>The S3 path of the data to which you are granting access. It is the result of appending the <code>Subprefix</code> to the location scope.</p>
3646
+ */
3647
+ GrantScope?: string;
3648
+ /**
3649
+ * @public
3650
+ * <p>The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application. </p>
3651
+ */
3652
+ ApplicationArn?: string;
3653
+ }
3654
+ /**
3655
+ * @public
3656
+ */
3657
+ export interface GetAccessGrantsInstanceRequest {
3658
+ /**
3659
+ * @public
3660
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3661
+ */
3662
+ AccountId?: string;
3663
+ }
3664
+ /**
3665
+ * @public
3666
+ */
3667
+ export interface GetAccessGrantsInstanceResult {
3668
+ /**
3669
+ * @public
3670
+ * <p>The Amazon Resource Name (ARN) of the S3 Access Grants instance. </p>
3671
+ */
3672
+ AccessGrantsInstanceArn?: string;
3673
+ /**
3674
+ * @public
3675
+ * <p>The ID of the S3 Access Grants instance. The ID is <code>default</code>. You can have one S3 Access Grants instance per Region per account. </p>
3676
+ */
3677
+ AccessGrantsInstanceId?: string;
3678
+ /**
3679
+ * @public
3680
+ * <p>If you associated your S3 Access Grants instance with an Amazon Web Services IAM Identity Center instance, this field returns the Amazon Resource Name (ARN) of the Amazon Web Services IAM Identity Center instance application; a subresource of the original Identity Center instance. S3 Access Grants creates this Identity Center application for the specific S3 Access Grants instance. </p>
3681
+ */
3682
+ IdentityCenterArn?: string;
3683
+ /**
3684
+ * @public
3685
+ * <p>The date and time when you created the S3 Access Grants instance. </p>
3686
+ */
3687
+ CreatedAt?: Date;
3688
+ }
3689
+ /**
3690
+ * @public
3691
+ */
3692
+ export interface GetAccessGrantsInstanceForPrefixRequest {
3693
+ /**
3694
+ * @public
3695
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3696
+ */
3697
+ AccountId?: string;
3698
+ /**
3699
+ * @public
3700
+ * <p>The S3 prefix of the access grants that you would like to retrieve.</p>
3701
+ */
3702
+ S3Prefix: string | undefined;
3703
+ }
3704
+ /**
3705
+ * @public
3706
+ */
3707
+ export interface GetAccessGrantsInstanceForPrefixResult {
3708
+ /**
3709
+ * @public
3710
+ * <p>The Amazon Resource Name (ARN) of the S3 Access Grants instance. </p>
3711
+ */
3712
+ AccessGrantsInstanceArn?: string;
3713
+ /**
3714
+ * @public
3715
+ * <p>The ID of the S3 Access Grants instance. The ID is <code>default</code>. You can have one S3 Access Grants instance per Region per account. </p>
3716
+ */
3717
+ AccessGrantsInstanceId?: string;
3718
+ }
3719
+ /**
3720
+ * @public
3721
+ */
3722
+ export interface GetAccessGrantsInstanceResourcePolicyRequest {
3723
+ /**
3724
+ * @public
3725
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3726
+ */
3727
+ AccountId?: string;
3728
+ }
3729
+ /**
3730
+ * @public
3731
+ */
3732
+ export interface GetAccessGrantsInstanceResourcePolicyResult {
3733
+ /**
3734
+ * @public
3735
+ * <p>The resource policy of the S3 Access Grants instance.</p>
3736
+ */
3737
+ Policy?: string;
3738
+ /**
3739
+ * @public
3740
+ * <p>The Organization of the resource policy of the S3 Access Grants instance.</p>
3741
+ */
3742
+ Organization?: string;
3743
+ /**
3744
+ * @public
3745
+ * <p>The date and time when you created the S3 Access Grants instance resource policy. </p>
3746
+ */
3747
+ CreatedAt?: Date;
3748
+ }
3749
+ /**
3750
+ * @public
3751
+ */
3752
+ export interface GetAccessGrantsLocationRequest {
3753
+ /**
3754
+ * @public
3755
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
3756
+ */
3757
+ AccountId?: string;
3758
+ /**
3759
+ * @public
3760
+ * <p>The ID of the registered location that you are retrieving. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
3761
+ */
3762
+ AccessGrantsLocationId: string | undefined;
3763
+ }
3764
+ /**
3765
+ * @public
3766
+ */
3767
+ export interface GetAccessGrantsLocationResult {
3768
+ /**
3769
+ * @public
3770
+ * <p>The date and time when you registered the location. </p>
3771
+ */
3772
+ CreatedAt?: Date;
3773
+ /**
3774
+ * @public
3775
+ * <p>The ID of the registered location to which you are granting access. S3 Access Grants assigns this ID when you register the location. S3 Access Grants assigns the ID <code>default</code> to the default location <code>s3://</code> and assigns an auto-generated ID to other locations that you register. </p>
3776
+ */
3777
+ AccessGrantsLocationId?: string;
3778
+ /**
3779
+ * @public
3780
+ * <p>The Amazon Resource Name (ARN) of the registered location. </p>
3781
+ */
3782
+ AccessGrantsLocationArn?: string;
3783
+ /**
3784
+ * @public
3785
+ * <p>The S3 URI path to the registered location. The location scope can be the default S3 location <code>s3://</code>, the S3 path to a bucket, or the S3 path to a bucket and prefix. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the <code>engineering/</code> prefix or object key names that start with the <code>marketing/campaigns/</code> prefix.</p>
3786
+ */
3787
+ LocationScope?: string;
3788
+ /**
3789
+ * @public
3790
+ * <p>The Amazon Resource Name (ARN) of the IAM role for the registered location. S3 Access Grants assumes this role to manage access to the registered location. </p>
3791
+ */
3792
+ IAMRoleArn?: string;
3793
+ }
3022
3794
  /**
3023
3795
  * @public
3024
3796
  */
@@ -3578,8 +4350,8 @@ export interface LifecycleRule {
3578
4350
  * @public
3579
4351
  * <p>Specifies the days since the initiation of an incomplete multipart upload that Amazon S3
3580
4352
  * waits before permanently removing all parts of the upload. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config">
3581
- * Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a> in the
3582
- * <i>Amazon S3 User Guide</i>.</p>
4353
+ * Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration</a> in
4354
+ * the <i>Amazon S3 User Guide</i>.</p>
3583
4355
  */
3584
4356
  AbortIncompleteMultipartUpload?: AbortIncompleteMultipartUpload;
3585
4357
  }
@@ -3657,7 +4429,8 @@ export type DeleteMarkerReplicationStatus = (typeof DeleteMarkerReplicationStatu
3657
4429
  * <code>Tag</code> element, the <code>DeleteMarkerReplication</code> element's
3658
4430
  * <code>Status</code> child element must be set to <code>Disabled</code>, because
3659
4431
  * S3 on Outposts does not support replicating delete markers for tag-based rules.</p>
3660
- * <p>For more information about delete marker replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated">How delete operations affect replication</a> in the <i>Amazon S3 User Guide</i>. </p>
4432
+ * <p>For more information about delete marker replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated">How delete operations affect replication</a> in the
4433
+ * <i>Amazon S3 User Guide</i>. </p>
3661
4434
  */
3662
4435
  export interface DeleteMarkerReplication {
3663
4436
  /**
@@ -3847,7 +4620,8 @@ export interface Destination {
3847
4620
  * are stored in the <code>OUTPOSTS</code> storage class. S3 on Outposts uses the
3848
4621
  * <code>OUTPOSTS</code> storage class to create the object replicas. </p>
3849
4622
  * <note>
3850
- * <p>Values other than <code>OUTPOSTS</code> are not supported by Amazon S3 on Outposts. </p>
4623
+ * <p>Values other than <code>OUTPOSTS</code> are not supported by Amazon S3 on Outposts.
4624
+ * </p>
3851
4625
  * </note>
3852
4626
  */
3853
4627
  StorageClass?: ReplicationStorageClass;
@@ -4061,7 +4835,8 @@ export declare const ReplicationRuleStatus: {
4061
4835
  export type ReplicationRuleStatus = (typeof ReplicationRuleStatus)[keyof typeof ReplicationRuleStatus];
4062
4836
  /**
4063
4837
  * @public
4064
- * <p>Specifies which S3 on Outposts objects to replicate and where to store the replicas.</p>
4838
+ * <p>Specifies which S3 on Outposts objects to replicate and where to store the
4839
+ * replicas.</p>
4065
4840
  */
4066
4841
  export interface ReplicationRule {
4067
4842
  /**
@@ -4073,11 +4848,11 @@ export interface ReplicationRule {
4073
4848
  * @public
4074
4849
  * <p>The priority indicates which rule has precedence whenever two or more replication rules
4075
4850
  * conflict. S3 on Outposts attempts to replicate objects according to all replication rules.
4076
- * However, if there are two or more rules with the same destination Outposts bucket, then objects will
4077
- * be replicated according to the rule with the highest priority. The higher the number, the
4078
- * higher the priority. </p>
4079
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-between-outposts.html">Creating replication rules on Outposts</a> in the
4080
- * <i>Amazon S3 User Guide</i>.</p>
4851
+ * However, if there are two or more rules with the same destination Outposts bucket, then
4852
+ * objects will be replicated according to the rule with the highest priority. The higher the
4853
+ * number, the higher the priority. </p>
4854
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication-between-outposts.html">Creating replication
4855
+ * rules on Outposts</a> in the <i>Amazon S3 User Guide</i>.</p>
4081
4856
  */
4082
4857
  Priority?: number;
4083
4858
  /**
@@ -4109,9 +4884,9 @@ export interface ReplicationRule {
4109
4884
  Status: ReplicationRuleStatus | undefined;
4110
4885
  /**
4111
4886
  * @public
4112
- * <p>A container that describes additional filters for identifying the source Outposts objects that
4113
- * you want to replicate. You can choose to enable or disable the replication of these
4114
- * objects.</p>
4887
+ * <p>A container that describes additional filters for identifying the source Outposts
4888
+ * objects that you want to replicate. You can choose to enable or disable the replication of
4889
+ * these objects.</p>
4115
4890
  */
4116
4891
  SourceSelectionCriteria?: SourceSelectionCriteria;
4117
4892
  /**
@@ -4124,7 +4899,8 @@ export interface ReplicationRule {
4124
4899
  ExistingObjectReplication?: ExistingObjectReplication;
4125
4900
  /**
4126
4901
  * @public
4127
- * <p>A container for information about the replication destination and its configurations.</p>
4902
+ * <p>A container for information about the replication destination and its
4903
+ * configurations.</p>
4128
4904
  */
4129
4905
  Destination: Destination | undefined;
4130
4906
  /**
@@ -4135,7 +4911,8 @@ export interface ReplicationRule {
4135
4911
  * <code>Tag</code> element, the <code>DeleteMarkerReplication</code> element's
4136
4912
  * <code>Status</code> child element must be set to <code>Disabled</code>, because
4137
4913
  * S3 on Outposts doesn't support replicating delete markers for tag-based rules.</p>
4138
- * <p>For more information about delete marker replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated">How delete operations affect replication</a> in the <i>Amazon S3 User Guide</i>. </p>
4914
+ * <p>For more information about delete marker replication, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3OutpostsReplication.html#outposts-replication-what-is-replicated">How delete operations affect replication</a> in the
4915
+ * <i>Amazon S3 User Guide</i>. </p>
4139
4916
  */
4140
4917
  DeleteMarkerReplication?: DeleteMarkerReplication;
4141
4918
  /**
@@ -4147,8 +4924,9 @@ export interface ReplicationRule {
4147
4924
  }
4148
4925
  /**
4149
4926
  * @public
4150
- * <p>A container for one or more replication rules. A replication configuration must have at least one rule and you can add up to 100 rules. The maximum size of a
4151
- * replication configuration is 128 KB.</p>
4927
+ * <p>A container for one or more replication rules. A replication configuration must have at
4928
+ * least one rule and you can add up to 100 rules. The maximum size of a replication
4929
+ * configuration is 128 KB.</p>
4152
4930
  */
4153
4931
  export interface ReplicationConfiguration {
4154
4932
  /**
@@ -4172,8 +4950,9 @@ export interface ReplicationConfiguration {
4172
4950
  export interface GetBucketReplicationResult {
4173
4951
  /**
4174
4952
  * @public
4175
- * <p>A container for one or more replication rules. A replication configuration must have at least one rule and you can add up to 100 rules. The maximum size of a
4176
- * replication configuration is 128 KB.</p>
4953
+ * <p>A container for one or more replication rules. A replication configuration must have at
4954
+ * least one rule and you can add up to 100 rules. The maximum size of a replication
4955
+ * configuration is 128 KB.</p>
4177
4956
  */
4178
4957
  ReplicationConfiguration?: ReplicationConfiguration;
4179
4958
  }
@@ -4260,6 +5039,118 @@ export interface GetBucketVersioningResult {
4260
5039
  */
4261
5040
  MFADelete?: MFADeleteStatus;
4262
5041
  }
5042
+ /**
5043
+ * @public
5044
+ * @enum
5045
+ */
5046
+ export declare const Privilege: {
5047
+ readonly Default: "Default";
5048
+ readonly Minimal: "Minimal";
5049
+ };
5050
+ /**
5051
+ * @public
5052
+ */
5053
+ export type Privilege = (typeof Privilege)[keyof typeof Privilege];
5054
+ /**
5055
+ * @public
5056
+ */
5057
+ export interface GetDataAccessRequest {
5058
+ /**
5059
+ * @public
5060
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
5061
+ */
5062
+ AccountId?: string;
5063
+ /**
5064
+ * @public
5065
+ * <p>The S3 URI path of the data to which you are requesting temporary access credentials. If the requesting account has an access grant for this data, S3 Access Grants vends temporary access credentials in the response.</p>
5066
+ */
5067
+ Target: string | undefined;
5068
+ /**
5069
+ * @public
5070
+ * <p>The type of permission granted to your S3 data, which can be set to one of the following values:</p>
5071
+ * <ul>
5072
+ * <li>
5073
+ * <p>
5074
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
5075
+ * </li>
5076
+ * <li>
5077
+ * <p>
5078
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
5079
+ * </li>
5080
+ * <li>
5081
+ * <p>
5082
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
5083
+ * </li>
5084
+ * </ul>
5085
+ */
5086
+ Permission: Permission | undefined;
5087
+ /**
5088
+ * @public
5089
+ * <p>The session duration, in seconds, of the temporary access credential that S3 Access Grants vends to the grantee or client application. The default value is 1 hour, but the grantee can specify a range from 900 seconds (15 minutes) up to 43200 seconds (12 hours). If the grantee requests a value higher than this maximum, the operation fails. </p>
5090
+ */
5091
+ DurationSeconds?: number;
5092
+ /**
5093
+ * @public
5094
+ * <p>The scope of the temporary access credential that S3 Access Grants vends to the grantee or client application. </p>
5095
+ * <ul>
5096
+ * <li>
5097
+ * <p>
5098
+ * <code>Default</code> – The scope of the returned temporary access token is the scope of the grant that is closest to the target scope.</p>
5099
+ * </li>
5100
+ * <li>
5101
+ * <p>
5102
+ * <code>Minimal</code> – The scope of the returned temporary access token is the same as the requested target scope as long as the requested scope is the same as or a subset of the grant scope. </p>
5103
+ * </li>
5104
+ * </ul>
5105
+ */
5106
+ Privilege?: Privilege;
5107
+ /**
5108
+ * @public
5109
+ * <p>The type of <code>Target</code>. The only possible value is <code>Object</code>. Pass this value if the target data that you would like to access is a path to an object. Do not pass this value if the target data is a bucket or a bucket and a prefix. </p>
5110
+ */
5111
+ TargetType?: S3PrefixType;
5112
+ }
5113
+ /**
5114
+ * @public
5115
+ * <p>The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client applications. </p>
5116
+ */
5117
+ export interface Credentials {
5118
+ /**
5119
+ * @public
5120
+ * <p>The unique access key ID of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
5121
+ */
5122
+ AccessKeyId?: string;
5123
+ /**
5124
+ * @public
5125
+ * <p>The secret access key of the Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
5126
+ */
5127
+ SecretAccessKey?: string;
5128
+ /**
5129
+ * @public
5130
+ * <p>The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
5131
+ */
5132
+ SessionToken?: string;
5133
+ /**
5134
+ * @public
5135
+ * <p>The expiration date and time of the temporary credential that S3 Access Grants vends to grantees and client applications. </p>
5136
+ */
5137
+ Expiration?: Date;
5138
+ }
5139
+ /**
5140
+ * @public
5141
+ */
5142
+ export interface GetDataAccessResult {
5143
+ /**
5144
+ * @public
5145
+ * <p>The temporary credential token that S3 Access Grants vends.</p>
5146
+ */
5147
+ Credentials?: Credentials;
5148
+ /**
5149
+ * @public
5150
+ * <p>The S3 URI path of the data to which you are being granted temporary access credentials. </p>
5151
+ */
5152
+ MatchedGrantTarget?: string;
5153
+ }
4263
5154
  /**
4264
5155
  * @public
4265
5156
  */
@@ -4945,6 +5836,169 @@ export interface GetStorageLensGroupResult {
4945
5836
  */
4946
5837
  StorageLensGroup?: StorageLensGroup;
4947
5838
  }
5839
+ /**
5840
+ * @public
5841
+ */
5842
+ export interface ListAccessGrantsRequest {
5843
+ /**
5844
+ * @public
5845
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
5846
+ */
5847
+ AccountId?: string;
5848
+ /**
5849
+ * @public
5850
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants</code> request in order to retrieve the next page of results.</p>
5851
+ */
5852
+ NextToken?: string;
5853
+ /**
5854
+ * @public
5855
+ * <p>The maximum number of access grants that you would like returned in the <code>List Access Grants</code> response. If the results include the pagination token <code>NextToken</code>, make another call using the <code>NextToken</code> to determine if there are more results.</p>
5856
+ */
5857
+ MaxResults?: number;
5858
+ /**
5859
+ * @public
5860
+ * <p>The type of the grantee to which access has been granted. It can be one of the following values:</p>
5861
+ * <ul>
5862
+ * <li>
5863
+ * <p>
5864
+ * <code>IAM</code> - An IAM user or role.</p>
5865
+ * </li>
5866
+ * <li>
5867
+ * <p>
5868
+ * <code>DIRECTORY_USER</code> - Your corporate directory user. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.</p>
5869
+ * </li>
5870
+ * <li>
5871
+ * <p>
5872
+ * <code>DIRECTORY_GROUP</code> - Your corporate directory group. You can use this option if you have added your corporate identity directory to IAM Identity Center and associated the IAM Identity Center instance with your S3 Access Grants instance.</p>
5873
+ * </li>
5874
+ * </ul>
5875
+ */
5876
+ GranteeType?: GranteeType;
5877
+ /**
5878
+ * @public
5879
+ * <p>The unique identifer of the <code>Grantee</code>. If the grantee type is <code>IAM</code>, the identifier is the IAM Amazon Resource Name (ARN) of the user or role. If the grantee type is a directory user or group, the identifier is 128-bit universally unique identifier (UUID) in the format <code>a1b2c3d4-5678-90ab-cdef-EXAMPLE11111</code>. You can obtain this UUID from your Amazon Web Services IAM Identity Center instance.</p>
5880
+ */
5881
+ GranteeIdentifier?: string;
5882
+ /**
5883
+ * @public
5884
+ * <p>The type of permission granted to your S3 data, which can be set to one of the following values:</p>
5885
+ * <ul>
5886
+ * <li>
5887
+ * <p>
5888
+ * <code>READ</code> – Grant read-only access to the S3 data.</p>
5889
+ * </li>
5890
+ * <li>
5891
+ * <p>
5892
+ * <code>WRITE</code> – Grant write-only access to the S3 data.</p>
5893
+ * </li>
5894
+ * <li>
5895
+ * <p>
5896
+ * <code>READWRITE</code> – Grant both read and write access to the S3 data.</p>
5897
+ * </li>
5898
+ * </ul>
5899
+ */
5900
+ Permission?: Permission;
5901
+ /**
5902
+ * @public
5903
+ * <p>The S3 path of the data to which you are granting access. It is the result of appending the <code>Subprefix</code> to the location scope.</p>
5904
+ */
5905
+ GrantScope?: string;
5906
+ /**
5907
+ * @public
5908
+ * <p>The Amazon Resource Name (ARN) of an Amazon Web Services IAM Identity Center application associated with your Identity Center instance. If the grant includes an application ARN, the grantee can only access the S3 data through this application. </p>
5909
+ */
5910
+ ApplicationArn?: string;
5911
+ }
5912
+ /**
5913
+ * @public
5914
+ */
5915
+ export interface ListAccessGrantsResult {
5916
+ /**
5917
+ * @public
5918
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants</code> request in order to retrieve the next page of results.</p>
5919
+ */
5920
+ NextToken?: string;
5921
+ /**
5922
+ * @public
5923
+ * <p>A container for a list of grants in an S3 Access Grants instance.</p>
5924
+ */
5925
+ AccessGrantsList?: ListAccessGrantEntry[];
5926
+ }
5927
+ /**
5928
+ * @public
5929
+ */
5930
+ export interface ListAccessGrantsInstancesRequest {
5931
+ /**
5932
+ * @public
5933
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
5934
+ */
5935
+ AccountId?: string;
5936
+ /**
5937
+ * @public
5938
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants Instances</code> request in order to retrieve the next page of results.</p>
5939
+ */
5940
+ NextToken?: string;
5941
+ /**
5942
+ * @public
5943
+ * <p>The maximum number of access grants that you would like returned in the <code>List Access Grants</code> response. If the results include the pagination token <code>NextToken</code>, make another call using the <code>NextToken</code> to determine if there are more results.</p>
5944
+ */
5945
+ MaxResults?: number;
5946
+ }
5947
+ /**
5948
+ * @public
5949
+ */
5950
+ export interface ListAccessGrantsInstancesResult {
5951
+ /**
5952
+ * @public
5953
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants Instances</code> request in order to retrieve the next page of results.</p>
5954
+ */
5955
+ NextToken?: string;
5956
+ /**
5957
+ * @public
5958
+ * <p>A container for a list of S3 Access Grants instances.</p>
5959
+ */
5960
+ AccessGrantsInstancesList?: ListAccessGrantsInstanceEntry[];
5961
+ }
5962
+ /**
5963
+ * @public
5964
+ */
5965
+ export interface ListAccessGrantsLocationsRequest {
5966
+ /**
5967
+ * @public
5968
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
5969
+ */
5970
+ AccountId?: string;
5971
+ /**
5972
+ * @public
5973
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants Locations</code> request in order to retrieve the next page of results.</p>
5974
+ */
5975
+ NextToken?: string;
5976
+ /**
5977
+ * @public
5978
+ * <p>The maximum number of access grants that you would like returned in the <code>List Access Grants</code> response. If the results include the pagination token <code>NextToken</code>, make another call using the <code>NextToken</code> to determine if there are more results.</p>
5979
+ */
5980
+ MaxResults?: number;
5981
+ /**
5982
+ * @public
5983
+ * <p>The S3 path to the location that you are registering. The location scope can be the default S3 location <code>s3://</code>, the S3 path to a bucket <code>s3://<bucket></code>, or the S3 path to a bucket and prefix <code>s3://<bucket>/<prefix></code>. A prefix in S3 is a string of characters at the beginning of an object key name used to organize the objects that you store in your S3 buckets. For example, object key names that start with the <code>engineering/</code> prefix or object key names that start with the <code>marketing/campaigns/</code> prefix.</p>
5984
+ */
5985
+ LocationScope?: string;
5986
+ }
5987
+ /**
5988
+ * @public
5989
+ */
5990
+ export interface ListAccessGrantsLocationsResult {
5991
+ /**
5992
+ * @public
5993
+ * <p>A pagination token to request the next page of results. Pass this value into a subsequent <code>List Access Grants Locations</code> request in order to retrieve the next page of results.</p>
5994
+ */
5995
+ NextToken?: string;
5996
+ /**
5997
+ * @public
5998
+ * <p>A container for a list of registered locations in an S3 Access Grants instance.</p>
5999
+ */
6000
+ AccessGrantsLocationsList?: ListAccessGrantsLocationsEntry[];
6001
+ }
4948
6002
  /**
4949
6003
  * @public
4950
6004
  */
@@ -5399,684 +6453,10 @@ export interface ListStorageLensGroupsRequest {
5399
6453
  NextToken?: string;
5400
6454
  }
5401
6455
  /**
5402
- * @public
5403
- * <p>
5404
- * Each entry contains a Storage Lens group that exists in the specified home Region.
5405
- * </p>
5406
- */
5407
- export interface ListStorageLensGroupEntry {
5408
- /**
5409
- * @public
5410
- * <p>
5411
- * Contains the name of the Storage Lens group that exists in the specified home Region.
5412
- * </p>
5413
- */
5414
- Name: string | undefined;
5415
- /**
5416
- * @public
5417
- * <p>
5418
- * Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.
5419
- * </p>
5420
- */
5421
- StorageLensGroupArn: string | undefined;
5422
- /**
5423
- * @public
5424
- * <p>
5425
- * Contains the Amazon Web Services Region where the Storage Lens group was created.
5426
- * </p>
5427
- */
5428
- HomeRegion: string | undefined;
5429
- }
5430
- /**
5431
- * @public
5432
- */
5433
- export interface ListStorageLensGroupsResult {
5434
- /**
5435
- * @public
5436
- * <p>
5437
- * If <code>NextToken</code> is returned, there are more Storage Lens groups results available. The value of <code>NextToken</code> is a
5438
- * unique pagination token for each page. Make the call again using the returned token to
5439
- * retrieve the next page. Keep all other arguments unchanged. Each pagination token expires
5440
- * after 24 hours.
5441
- * </p>
5442
- */
5443
- NextToken?: string;
5444
- /**
5445
- * @public
5446
- * <p>
5447
- * The list of Storage Lens groups that exist in the specified home Region.
5448
- * </p>
5449
- */
5450
- StorageLensGroupList?: ListStorageLensGroupEntry[];
5451
- }
5452
- /**
5453
- * @public
6456
+ * @internal
5454
6457
  */
5455
- export interface ListTagsForResourceRequest {
5456
- /**
5457
- * @public
5458
- * <p>
5459
- * The Amazon Web Services account ID of the resource owner.
5460
- * </p>
5461
- */
5462
- AccountId?: string;
5463
- /**
5464
- * @public
5465
- * <p>
5466
- * The Amazon Resource Name (ARN) of the S3 resource that you want to list the tags for.
5467
- * </p>
5468
- */
5469
- ResourceArn: string | undefined;
5470
- }
6458
+ export declare const CredentialsFilterSensitiveLog: (obj: Credentials) => any;
5471
6459
  /**
5472
- * @public
6460
+ * @internal
5473
6461
  */
5474
- export interface ListTagsForResourceResult {
5475
- /**
5476
- * @public
5477
- * <p>
5478
- * The Amazon Web Services resource tags that are associated with the resource.
5479
- * </p>
5480
- */
5481
- Tags?: Tag[];
5482
- }
5483
- /**
5484
- * @public
5485
- */
5486
- export interface PutAccessPointConfigurationForObjectLambdaRequest {
5487
- /**
5488
- * @public
5489
- * <p>The account ID for the account that owns the specified Object Lambda Access Point.</p>
5490
- */
5491
- AccountId?: string;
5492
- /**
5493
- * @public
5494
- * <p>The name of the Object Lambda Access Point.</p>
5495
- */
5496
- Name: string | undefined;
5497
- /**
5498
- * @public
5499
- * <p>Object Lambda Access Point configuration document.</p>
5500
- */
5501
- Configuration: ObjectLambdaConfiguration | undefined;
5502
- }
5503
- /**
5504
- * @public
5505
- */
5506
- export interface PutAccessPointPolicyRequest {
5507
- /**
5508
- * @public
5509
- * <p>The Amazon Web Services account ID for owner of the bucket associated with the specified access point.</p>
5510
- */
5511
- AccountId?: string;
5512
- /**
5513
- * @public
5514
- * <p>The name of the access point that you want to associate with the specified policy.</p>
5515
- * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
5516
- * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the access point accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/accesspoint/<my-accesspoint-name></code>. For example, to access the access point <code>reports-ap</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/accesspoint/reports-ap</code>. The value must be URL encoded. </p>
5517
- */
5518
- Name: string | undefined;
5519
- /**
5520
- * @public
5521
- * <p>The policy that you want to apply to the specified access point. For more information about access point
5522
- * policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">Managing data access with Amazon S3
5523
- * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
5524
- */
5525
- Policy: string | undefined;
5526
- }
5527
- /**
5528
- * @public
5529
- */
5530
- export interface PutAccessPointPolicyForObjectLambdaRequest {
5531
- /**
5532
- * @public
5533
- * <p>The account ID for the account that owns the specified Object Lambda Access Point.</p>
5534
- */
5535
- AccountId?: string;
5536
- /**
5537
- * @public
5538
- * <p>The name of the Object Lambda Access Point.</p>
5539
- */
5540
- Name: string | undefined;
5541
- /**
5542
- * @public
5543
- * <p>Object Lambda Access Point resource policy document.</p>
5544
- */
5545
- Policy: string | undefined;
5546
- }
5547
- /**
5548
- * @public
5549
- * <p>The container for the Outposts bucket lifecycle configuration.</p>
5550
- */
5551
- export interface LifecycleConfiguration {
5552
- /**
5553
- * @public
5554
- * <p>A lifecycle rule for individual objects in an Outposts bucket. </p>
5555
- */
5556
- Rules?: LifecycleRule[];
5557
- }
5558
- /**
5559
- * @public
5560
- */
5561
- export interface PutBucketLifecycleConfigurationRequest {
5562
- /**
5563
- * @public
5564
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5565
- */
5566
- AccountId?: string;
5567
- /**
5568
- * @public
5569
- * <p>The name of the bucket for which to set the configuration.</p>
5570
- */
5571
- Bucket: string | undefined;
5572
- /**
5573
- * @public
5574
- * <p>Container for lifecycle rules. You can add as many as 1,000 rules.</p>
5575
- */
5576
- LifecycleConfiguration?: LifecycleConfiguration;
5577
- }
5578
- /**
5579
- * @public
5580
- */
5581
- export interface PutBucketPolicyRequest {
5582
- /**
5583
- * @public
5584
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5585
- */
5586
- AccountId?: string;
5587
- /**
5588
- * @public
5589
- * <p>Specifies the bucket.</p>
5590
- * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
5591
- * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name></code>. For example, to access the bucket <code>reports</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports</code>. The value must be URL encoded. </p>
5592
- */
5593
- Bucket: string | undefined;
5594
- /**
5595
- * @public
5596
- * <p>Set this parameter to true to confirm that you want to remove your permissions to change
5597
- * this bucket policy in the future.</p>
5598
- * <note>
5599
- * <p>This is not supported by Amazon S3 on Outposts buckets.</p>
5600
- * </note>
5601
- */
5602
- ConfirmRemoveSelfBucketAccess?: boolean;
5603
- /**
5604
- * @public
5605
- * <p>The bucket policy as a JSON document.</p>
5606
- */
5607
- Policy: string | undefined;
5608
- }
5609
- /**
5610
- * @public
5611
- */
5612
- export interface PutBucketReplicationRequest {
5613
- /**
5614
- * @public
5615
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5616
- */
5617
- AccountId?: string;
5618
- /**
5619
- * @public
5620
- * <p>Specifies the S3 on Outposts bucket to set the configuration for.</p>
5621
- * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
5622
- * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name></code>. For example, to access the bucket <code>reports</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports</code>. The value must be URL encoded. </p>
5623
- */
5624
- Bucket: string | undefined;
5625
- /**
5626
- * @public
5627
- * <p></p>
5628
- */
5629
- ReplicationConfiguration: ReplicationConfiguration | undefined;
5630
- }
5631
- /**
5632
- * @public
5633
- * <p></p>
5634
- */
5635
- export interface Tagging {
5636
- /**
5637
- * @public
5638
- * <p>A collection for a set of tags.</p>
5639
- */
5640
- TagSet: S3Tag[] | undefined;
5641
- }
5642
- /**
5643
- * @public
5644
- */
5645
- export interface PutBucketTaggingRequest {
5646
- /**
5647
- * @public
5648
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5649
- */
5650
- AccountId?: string;
5651
- /**
5652
- * @public
5653
- * <p>The Amazon Resource Name (ARN) of the bucket.</p>
5654
- * <p>For using this parameter with Amazon S3 on Outposts with the REST API, you must specify the name and the x-amz-outpost-id as well.</p>
5655
- * <p>For using this parameter with S3 on Outposts with the Amazon Web Services SDK and CLI, you must specify the ARN of the bucket accessed in the format <code>arn:aws:s3-outposts:<Region>:<account-id>:outpost/<outpost-id>/bucket/<my-bucket-name></code>. For example, to access the bucket <code>reports</code> through Outpost <code>my-outpost</code> owned by account <code>123456789012</code> in Region <code>us-west-2</code>, use the URL encoding of <code>arn:aws:s3-outposts:us-west-2:123456789012:outpost/my-outpost/bucket/reports</code>. The value must be URL encoded. </p>
5656
- */
5657
- Bucket: string | undefined;
5658
- /**
5659
- * @public
5660
- * <p></p>
5661
- */
5662
- Tagging: Tagging | undefined;
5663
- }
5664
- /**
5665
- * @public
5666
- * @enum
5667
- */
5668
- export declare const MFADelete: {
5669
- readonly Disabled: "Disabled";
5670
- readonly Enabled: "Enabled";
5671
- };
5672
- /**
5673
- * @public
5674
- */
5675
- export type MFADelete = (typeof MFADelete)[keyof typeof MFADelete];
5676
- /**
5677
- * @public
5678
- * <p>Describes the versioning state of an Amazon S3 on Outposts bucket. For more information, see
5679
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html">PutBucketVersioning</a>.</p>
5680
- */
5681
- export interface VersioningConfiguration {
5682
- /**
5683
- * @public
5684
- * <p>Specifies whether MFA delete is enabled or disabled in the bucket versioning
5685
- * configuration for the S3 on Outposts bucket.</p>
5686
- */
5687
- MFADelete?: MFADelete;
5688
- /**
5689
- * @public
5690
- * <p>Sets the versioning state of the S3 on Outposts bucket.</p>
5691
- */
5692
- Status?: BucketVersioningStatus;
5693
- }
5694
- /**
5695
- * @public
5696
- */
5697
- export interface PutBucketVersioningRequest {
5698
- /**
5699
- * @public
5700
- * <p>The Amazon Web Services account ID of the S3 on Outposts bucket.</p>
5701
- */
5702
- AccountId?: string;
5703
- /**
5704
- * @public
5705
- * <p>The S3 on Outposts bucket to set the versioning state for.</p>
5706
- */
5707
- Bucket: string | undefined;
5708
- /**
5709
- * @public
5710
- * <p>The concatenation of the authentication device's serial number, a space, and the value
5711
- * that is displayed on your authentication device.</p>
5712
- */
5713
- MFA?: string;
5714
- /**
5715
- * @public
5716
- * <p>The root-level tag for the <code>VersioningConfiguration</code> parameters.</p>
5717
- */
5718
- VersioningConfiguration: VersioningConfiguration | undefined;
5719
- }
5720
- /**
5721
- * @public
5722
- */
5723
- export interface PutJobTaggingRequest {
5724
- /**
5725
- * @public
5726
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5727
- */
5728
- AccountId?: string;
5729
- /**
5730
- * @public
5731
- * <p>The ID for the S3 Batch Operations job whose tags you want to replace.</p>
5732
- */
5733
- JobId: string | undefined;
5734
- /**
5735
- * @public
5736
- * <p>The set of tags to associate with the S3 Batch Operations job.</p>
5737
- */
5738
- Tags: S3Tag[] | undefined;
5739
- }
5740
- /**
5741
- * @public
5742
- */
5743
- export interface PutJobTaggingResult {
5744
- }
5745
- /**
5746
- * @public
5747
- * <p>Amazon S3 throws this exception if you have too many tags in your tag set.</p>
5748
- */
5749
- export declare class TooManyTagsException extends __BaseException {
5750
- readonly name: "TooManyTagsException";
5751
- readonly $fault: "client";
5752
- Message?: string;
5753
- /**
5754
- * @internal
5755
- */
5756
- constructor(opts: __ExceptionOptionType<TooManyTagsException, __BaseException>);
5757
- }
5758
- /**
5759
- * @public
5760
- */
5761
- export interface PutMultiRegionAccessPointPolicyRequest {
5762
- /**
5763
- * @public
5764
- * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
5765
- */
5766
- AccountId?: string;
5767
- /**
5768
- * @public
5769
- * <p>An idempotency token used to identify the request and guarantee that requests are
5770
- * unique.</p>
5771
- */
5772
- ClientToken?: string;
5773
- /**
5774
- * @public
5775
- * <p>A container element containing the details of the policy for the Multi-Region Access Point.</p>
5776
- */
5777
- Details: PutMultiRegionAccessPointPolicyInput | undefined;
5778
- }
5779
- /**
5780
- * @public
5781
- */
5782
- export interface PutMultiRegionAccessPointPolicyResult {
5783
- /**
5784
- * @public
5785
- * <p>The request token associated with the request. You can use this token with <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_DescribeMultiRegionAccessPointOperation.html">DescribeMultiRegionAccessPointOperation</a> to determine the status of asynchronous
5786
- * requests.</p>
5787
- */
5788
- RequestTokenARN?: string;
5789
- }
5790
- /**
5791
- * @public
5792
- */
5793
- export interface PutPublicAccessBlockRequest {
5794
- /**
5795
- * @public
5796
- * <p>The <code>PublicAccessBlock</code> configuration that you want to apply to the specified
5797
- * Amazon Web Services account.</p>
5798
- */
5799
- PublicAccessBlockConfiguration: PublicAccessBlockConfiguration | undefined;
5800
- /**
5801
- * @public
5802
- * <p>The account ID for the Amazon Web Services account whose <code>PublicAccessBlock</code> configuration
5803
- * you want to set.</p>
5804
- */
5805
- AccountId?: string;
5806
- }
5807
- /**
5808
- * @public
5809
- */
5810
- export interface PutStorageLensConfigurationRequest {
5811
- /**
5812
- * @public
5813
- * <p>The ID of the S3 Storage Lens configuration.</p>
5814
- */
5815
- ConfigId: string | undefined;
5816
- /**
5817
- * @public
5818
- * <p>The account ID of the requester.</p>
5819
- */
5820
- AccountId?: string;
5821
- /**
5822
- * @public
5823
- * <p>The S3 Storage Lens configuration.</p>
5824
- */
5825
- StorageLensConfiguration: StorageLensConfiguration | undefined;
5826
- /**
5827
- * @public
5828
- * <p>The tag set of the S3 Storage Lens configuration.</p>
5829
- * <note>
5830
- * <p>You can set up to a maximum of 50 tags.</p>
5831
- * </note>
5832
- */
5833
- Tags?: StorageLensTag[];
5834
- }
5835
- /**
5836
- * @public
5837
- */
5838
- export interface PutStorageLensConfigurationTaggingRequest {
5839
- /**
5840
- * @public
5841
- * <p>The ID of the S3 Storage Lens configuration.</p>
5842
- */
5843
- ConfigId: string | undefined;
5844
- /**
5845
- * @public
5846
- * <p>The account ID of the requester.</p>
5847
- */
5848
- AccountId?: string;
5849
- /**
5850
- * @public
5851
- * <p>The tag set of the S3 Storage Lens configuration.</p>
5852
- * <note>
5853
- * <p>You can set up to a maximum of 50 tags.</p>
5854
- * </note>
5855
- */
5856
- Tags: StorageLensTag[] | undefined;
5857
- }
5858
- /**
5859
- * @public
5860
- */
5861
- export interface PutStorageLensConfigurationTaggingResult {
5862
- }
5863
- /**
5864
- * @public
5865
- */
5866
- export interface SubmitMultiRegionAccessPointRoutesRequest {
5867
- /**
5868
- * @public
5869
- * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
5870
- */
5871
- AccountId?: string;
5872
- /**
5873
- * @public
5874
- * <p>The Multi-Region Access Point ARN.</p>
5875
- */
5876
- Mrap: string | undefined;
5877
- /**
5878
- * @public
5879
- * <p>The different routes that make up the new route configuration. Active routes return a
5880
- * value of <code>100</code>, and passive routes return a value of <code>0</code>.</p>
5881
- */
5882
- RouteUpdates: MultiRegionAccessPointRoute[] | undefined;
5883
- }
5884
- /**
5885
- * @public
5886
- */
5887
- export interface SubmitMultiRegionAccessPointRoutesResult {
5888
- }
5889
- /**
5890
- * @public
5891
- */
5892
- export interface TagResourceRequest {
5893
- /**
5894
- * @public
5895
- * <p>
5896
- * The Amazon Web Services account ID that created the S3 resource that you're trying to add tags to.
5897
- * </p>
5898
- */
5899
- AccountId?: string;
5900
- /**
5901
- * @public
5902
- * <p>
5903
- * The Amazon Resource Name (ARN) of the S3 resource that you're trying to add tags to.
5904
- * </p>
5905
- */
5906
- ResourceArn: string | undefined;
5907
- /**
5908
- * @public
5909
- * <p>
5910
- * The Amazon Web Services resource tags that you want to add to the specified S3 resource.
5911
- * </p>
5912
- */
5913
- Tags: Tag[] | undefined;
5914
- }
5915
- /**
5916
- * @public
5917
- */
5918
- export interface TagResourceResult {
5919
- }
5920
- /**
5921
- * @public
5922
- */
5923
- export interface UntagResourceRequest {
5924
- /**
5925
- * @public
5926
- * <p>
5927
- * The Amazon Web Services account ID that owns the resource that you're trying to remove the tags from.
5928
- * </p>
5929
- */
5930
- AccountId?: string;
5931
- /**
5932
- * @public
5933
- * <p>
5934
- * The Amazon Resource Name (ARN) of the S3 resource that you want to remove the resource tags from.
5935
- * </p>
5936
- */
5937
- ResourceArn: string | undefined;
5938
- /**
5939
- * @public
5940
- * <p>
5941
- * The tag key pair of the S3 resource tag that you're trying to remove.
5942
- * </p>
5943
- */
5944
- TagKeys: string[] | undefined;
5945
- }
5946
- /**
5947
- * @public
5948
- */
5949
- export interface UntagResourceResult {
5950
- }
5951
- /**
5952
- * @public
5953
- */
5954
- export interface UpdateJobPriorityRequest {
5955
- /**
5956
- * @public
5957
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5958
- */
5959
- AccountId?: string;
5960
- /**
5961
- * @public
5962
- * <p>The ID for the job whose priority you want to update.</p>
5963
- */
5964
- JobId: string | undefined;
5965
- /**
5966
- * @public
5967
- * <p>The priority you want to assign to this job.</p>
5968
- */
5969
- Priority: number | undefined;
5970
- }
5971
- /**
5972
- * @public
5973
- */
5974
- export interface UpdateJobPriorityResult {
5975
- /**
5976
- * @public
5977
- * <p>The ID for the job whose priority Amazon S3 updated.</p>
5978
- */
5979
- JobId: string | undefined;
5980
- /**
5981
- * @public
5982
- * <p>The new priority assigned to the specified job.</p>
5983
- */
5984
- Priority: number | undefined;
5985
- }
5986
- /**
5987
- * @public
5988
- * <p></p>
5989
- */
5990
- export declare class JobStatusException extends __BaseException {
5991
- readonly name: "JobStatusException";
5992
- readonly $fault: "client";
5993
- Message?: string;
5994
- /**
5995
- * @internal
5996
- */
5997
- constructor(opts: __ExceptionOptionType<JobStatusException, __BaseException>);
5998
- }
5999
- /**
6000
- * @public
6001
- * @enum
6002
- */
6003
- export declare const RequestedJobStatus: {
6004
- readonly Cancelled: "Cancelled";
6005
- readonly Ready: "Ready";
6006
- };
6007
- /**
6008
- * @public
6009
- */
6010
- export type RequestedJobStatus = (typeof RequestedJobStatus)[keyof typeof RequestedJobStatus];
6011
- /**
6012
- * @public
6013
- */
6014
- export interface UpdateJobStatusRequest {
6015
- /**
6016
- * @public
6017
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
6018
- */
6019
- AccountId?: string;
6020
- /**
6021
- * @public
6022
- * <p>The ID of the job whose status you want to update.</p>
6023
- */
6024
- JobId: string | undefined;
6025
- /**
6026
- * @public
6027
- * <p>The status that you want to move the specified job to.</p>
6028
- */
6029
- RequestedJobStatus: RequestedJobStatus | undefined;
6030
- /**
6031
- * @public
6032
- * <p>A description of the reason why you want to change the specified job's status. This
6033
- * field can be any string up to the maximum length.</p>
6034
- */
6035
- StatusUpdateReason?: string;
6036
- }
6037
- /**
6038
- * @public
6039
- */
6040
- export interface UpdateJobStatusResult {
6041
- /**
6042
- * @public
6043
- * <p>The ID for the job whose status was updated.</p>
6044
- */
6045
- JobId?: string;
6046
- /**
6047
- * @public
6048
- * <p>The current status for the specified job.</p>
6049
- */
6050
- Status?: JobStatus;
6051
- /**
6052
- * @public
6053
- * <p>The reason that the specified job's status was updated.</p>
6054
- */
6055
- StatusUpdateReason?: string;
6056
- }
6057
- /**
6058
- * @public
6059
- */
6060
- export interface UpdateStorageLensGroupRequest {
6061
- /**
6062
- * @public
6063
- * <p>
6064
- * The name of the Storage Lens group that you want to update.
6065
- * </p>
6066
- */
6067
- Name: string | undefined;
6068
- /**
6069
- * @public
6070
- * <p>
6071
- * The Amazon Web Services account ID of the Storage Lens group owner.
6072
- * </p>
6073
- */
6074
- AccountId?: string;
6075
- /**
6076
- * @public
6077
- * <p>
6078
- * The JSON file that contains the Storage Lens group configuration.
6079
- * </p>
6080
- */
6081
- StorageLensGroup: StorageLensGroup | undefined;
6082
- }
6462
+ export declare const GetDataAccessResultFilterSensitiveLog: (obj: GetDataAccessResult) => any;