@aws-sdk/client-s3-control 3.457.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 (168) 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 +32 -38
  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 +1697 -156
  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 +28 -34
  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 +1733 -233
  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/DeleteAccessGrantCommand.d.ts +78 -0
  69. package/dist-types/commands/DeleteAccessGrantsInstanceCommand.d.ts +77 -0
  70. package/dist-types/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +77 -0
  71. package/dist-types/commands/DeleteAccessGrantsLocationCommand.d.ts +78 -0
  72. package/dist-types/commands/DeleteStorageLensGroupCommand.d.ts +5 -4
  73. package/dist-types/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +81 -0
  74. package/dist-types/commands/GetAccessGrantCommand.d.ts +93 -0
  75. package/dist-types/commands/GetAccessGrantsInstanceCommand.d.ts +82 -0
  76. package/dist-types/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +85 -0
  77. package/dist-types/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +81 -0
  78. package/dist-types/commands/GetAccessGrantsLocationCommand.d.ts +84 -0
  79. package/dist-types/commands/GetDataAccessCommand.d.ts +94 -0
  80. package/dist-types/commands/GetStorageLensGroupCommand.d.ts +5 -4
  81. package/dist-types/commands/ListAccessGrantsCommand.d.ts +104 -0
  82. package/dist-types/commands/ListAccessGrantsInstancesCommand.d.ts +89 -0
  83. package/dist-types/commands/ListAccessGrantsLocationsCommand.d.ts +91 -0
  84. package/dist-types/commands/ListStorageLensGroupsCommand.d.ts +8 -5
  85. package/dist-types/commands/ListTagsForResourceCommand.d.ts +12 -10
  86. package/dist-types/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +83 -0
  87. package/dist-types/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  88. package/dist-types/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  89. package/dist-types/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  90. package/dist-types/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  91. package/dist-types/commands/PutBucketPolicyCommand.d.ts +1 -1
  92. package/dist-types/commands/PutBucketReplicationCommand.d.ts +1 -1
  93. package/dist-types/commands/PutBucketTaggingCommand.d.ts +1 -1
  94. package/dist-types/commands/PutBucketVersioningCommand.d.ts +1 -1
  95. package/dist-types/commands/PutJobTaggingCommand.d.ts +1 -1
  96. package/dist-types/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  97. package/dist-types/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  98. package/dist-types/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  99. package/dist-types/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  100. package/dist-types/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +1 -1
  101. package/dist-types/commands/TagResourceCommand.d.ts +12 -10
  102. package/dist-types/commands/UntagResourceCommand.d.ts +12 -8
  103. package/dist-types/commands/UpdateAccessGrantsLocationCommand.d.ts +90 -0
  104. package/dist-types/commands/UpdateJobPriorityCommand.d.ts +1 -1
  105. package/dist-types/commands/UpdateJobStatusCommand.d.ts +1 -1
  106. package/dist-types/commands/UpdateStorageLensGroupCommand.d.ts +6 -5
  107. package/dist-types/commands/index.d.ts +20 -0
  108. package/dist-types/models/index.d.ts +1 -0
  109. package/dist-types/models/models_0.d.ts +1246 -854
  110. package/dist-types/models/models_1.d.ts +775 -0
  111. package/dist-types/pagination/ListAccessGrantsInstancesPaginator.d.ts +7 -0
  112. package/dist-types/pagination/ListAccessGrantsLocationsPaginator.d.ts +7 -0
  113. package/dist-types/pagination/ListAccessGrantsPaginator.d.ts +7 -0
  114. package/dist-types/pagination/index.d.ts +3 -0
  115. package/dist-types/protocols/Aws_restXml.d.ts +180 -0
  116. package/dist-types/ts3.4/S3Control.d.ts +370 -0
  117. package/dist-types/ts3.4/S3ControlClient.d.ts +120 -0
  118. package/dist-types/ts3.4/commands/AssociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  119. package/dist-types/ts3.4/commands/CreateAccessGrantCommand.d.ts +39 -0
  120. package/dist-types/ts3.4/commands/CreateAccessGrantsInstanceCommand.d.ts +42 -0
  121. package/dist-types/ts3.4/commands/CreateAccessGrantsLocationCommand.d.ts +42 -0
  122. package/dist-types/ts3.4/commands/DeleteAccessGrantCommand.d.ts +34 -0
  123. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceCommand.d.ts +38 -0
  124. package/dist-types/ts3.4/commands/DeleteAccessGrantsInstanceResourcePolicyCommand.d.ts +38 -0
  125. package/dist-types/ts3.4/commands/DeleteAccessGrantsLocationCommand.d.ts +38 -0
  126. package/dist-types/ts3.4/commands/DissociateAccessGrantsIdentityCenterCommand.d.ts +38 -0
  127. package/dist-types/ts3.4/commands/GetAccessGrantCommand.d.ts +38 -0
  128. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceCommand.d.ts +42 -0
  129. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceForPrefixCommand.d.ts +42 -0
  130. package/dist-types/ts3.4/commands/GetAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  131. package/dist-types/ts3.4/commands/GetAccessGrantsLocationCommand.d.ts +42 -0
  132. package/dist-types/ts3.4/commands/GetDataAccessCommand.d.ts +35 -0
  133. package/dist-types/ts3.4/commands/ListAccessGrantsCommand.d.ts +38 -0
  134. package/dist-types/ts3.4/commands/ListAccessGrantsInstancesCommand.d.ts +42 -0
  135. package/dist-types/ts3.4/commands/ListAccessGrantsLocationsCommand.d.ts +42 -0
  136. package/dist-types/ts3.4/commands/ListStorageLensGroupsCommand.d.ts +2 -4
  137. package/dist-types/ts3.4/commands/ListTagsForResourceCommand.d.ts +1 -1
  138. package/dist-types/ts3.4/commands/PutAccessGrantsInstanceResourcePolicyCommand.d.ts +42 -0
  139. package/dist-types/ts3.4/commands/PutAccessPointConfigurationForObjectLambdaCommand.d.ts +1 -1
  140. package/dist-types/ts3.4/commands/PutAccessPointPolicyCommand.d.ts +1 -1
  141. package/dist-types/ts3.4/commands/PutAccessPointPolicyForObjectLambdaCommand.d.ts +1 -1
  142. package/dist-types/ts3.4/commands/PutBucketLifecycleConfigurationCommand.d.ts +1 -1
  143. package/dist-types/ts3.4/commands/PutBucketPolicyCommand.d.ts +1 -1
  144. package/dist-types/ts3.4/commands/PutBucketReplicationCommand.d.ts +1 -1
  145. package/dist-types/ts3.4/commands/PutBucketTaggingCommand.d.ts +1 -1
  146. package/dist-types/ts3.4/commands/PutBucketVersioningCommand.d.ts +1 -1
  147. package/dist-types/ts3.4/commands/PutJobTaggingCommand.d.ts +1 -1
  148. package/dist-types/ts3.4/commands/PutMultiRegionAccessPointPolicyCommand.d.ts +1 -1
  149. package/dist-types/ts3.4/commands/PutPublicAccessBlockCommand.d.ts +1 -1
  150. package/dist-types/ts3.4/commands/PutStorageLensConfigurationCommand.d.ts +1 -1
  151. package/dist-types/ts3.4/commands/PutStorageLensConfigurationTaggingCommand.d.ts +1 -1
  152. package/dist-types/ts3.4/commands/SubmitMultiRegionAccessPointRoutesCommand.d.ts +1 -1
  153. package/dist-types/ts3.4/commands/TagResourceCommand.d.ts +1 -1
  154. package/dist-types/ts3.4/commands/UntagResourceCommand.d.ts +1 -1
  155. package/dist-types/ts3.4/commands/UpdateAccessGrantsLocationCommand.d.ts +42 -0
  156. package/dist-types/ts3.4/commands/UpdateJobPriorityCommand.d.ts +1 -1
  157. package/dist-types/ts3.4/commands/UpdateJobStatusCommand.d.ts +1 -1
  158. package/dist-types/ts3.4/commands/UpdateStorageLensGroupCommand.d.ts +1 -1
  159. package/dist-types/ts3.4/commands/index.d.ts +20 -0
  160. package/dist-types/ts3.4/models/index.d.ts +1 -0
  161. package/dist-types/ts3.4/models/models_0.d.ts +228 -170
  162. package/dist-types/ts3.4/models/models_1.d.ts +205 -0
  163. package/dist-types/ts3.4/pagination/ListAccessGrantsInstancesPaginator.d.ts +11 -0
  164. package/dist-types/ts3.4/pagination/ListAccessGrantsLocationsPaginator.d.ts +11 -0
  165. package/dist-types/ts3.4/pagination/ListAccessGrantsPaginator.d.ts +11 -0
  166. package/dist-types/ts3.4/pagination/index.d.ts +3 -0
  167. package/dist-types/ts3.4/protocols/Aws_restXml.d.ts +240 -0
  168. 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
@@ -262,8 +452,9 @@ export interface BucketLevel {
262
452
  export interface StorageLensGroupLevelSelectionCriteria {
263
453
  /**
264
454
  * @public
265
- * <p> Indicates which Storage Lens group ARNs to include in the Storage Lens group
266
- * aggregation. </p>
455
+ * <p>
456
+ * Indicates which Storage Lens group ARNs to include in the Storage Lens group aggregation.
457
+ * </p>
267
458
  */
268
459
  Include?: string[];
269
460
  /**
@@ -275,14 +466,16 @@ export interface StorageLensGroupLevelSelectionCriteria {
275
466
  }
276
467
  /**
277
468
  * @public
278
- * <p> Specifies the Storage Lens groups to include in the Storage Lens group aggregation.
279
- * </p>
469
+ * <p>
470
+ * Specifies the Storage Lens groups to include in the Storage Lens group aggregation.
471
+ * </p>
280
472
  */
281
473
  export interface StorageLensGroupLevel {
282
474
  /**
283
475
  * @public
284
- * <p> Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group
285
- * aggregation. If this value is left null, then all Storage Lens groups are selected. </p>
476
+ * <p>
477
+ * Indicates which Storage Lens group ARNs to include or exclude in the Storage Lens group aggregation. If this value is left null, then all Storage Lens groups are selected.
478
+ * </p>
286
479
  */
287
480
  SelectionCriteria?: StorageLensGroupLevelSelectionCriteria;
288
481
  }
@@ -319,10 +512,27 @@ export interface AccountLevel {
319
512
  DetailedStatusCodesMetrics?: DetailedStatusCodesMetrics;
320
513
  /**
321
514
  * @public
322
- * <p> A container element for S3 Storage Lens groups metrics. </p>
515
+ * <p>
516
+ * A container element for S3 Storage Lens groups metrics.
517
+ * </p>
323
518
  */
324
519
  StorageLensGroupLevel?: StorageLensGroupLevel;
325
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
+ }
326
536
  /**
327
537
  * @public
328
538
  * <p>Error details for the failed asynchronous operation.</p>
@@ -613,119 +823,378 @@ export interface AwsLambdaTransformation {
613
823
  }
614
824
  /**
615
825
  * @public
826
+ * @enum
616
827
  */
617
- 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 {
618
845
  /**
619
846
  * @public
620
- * <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>
621
866
  */
622
867
  AccountId?: string;
623
868
  /**
624
869
  * @public
625
- * <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>
626
872
  */
627
- Name: string | undefined;
873
+ AccessGrantsLocationId: string | undefined;
628
874
  /**
629
875
  * @public
630
- * <p>The name of the bucket that you want to associate this access point with.</p>
631
- * <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>
632
- * <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>
633
877
  */
634
- Bucket: string | undefined;
878
+ AccessGrantsLocationConfiguration?: AccessGrantsLocationConfiguration;
635
879
  /**
636
880
  * @public
637
- * <p>If you include this field, Amazon S3 restricts access to this access point to requests from the
638
- * specified virtual private cloud (VPC).</p>
639
- * <note>
640
- * <p>This is required for creating an access point for Amazon S3 on Outposts buckets.</p>
641
- * </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>
642
882
  */
643
- VpcConfiguration?: VpcConfiguration;
883
+ Grantee: Grantee | undefined;
644
884
  /**
645
885
  * @public
646
- * <p> The <code>PublicAccessBlock</code> configuration that you want to apply to the access point.
647
- * </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>
648
901
  */
649
- PublicAccessBlockConfiguration?: PublicAccessBlockConfiguration;
902
+ Permission: Permission | undefined;
650
903
  /**
651
904
  * @public
652
- * <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>
653
906
  */
654
- BucketAccountId?: string;
655
- }
656
- /**
657
- * @public
658
- */
659
- export interface CreateAccessPointResult {
907
+ ApplicationArn?: string;
660
908
  /**
661
909
  * @public
662
- * <p>The ARN of the access point.</p>
663
- * <note>
664
- * <p>This is only supported by Amazon S3 on Outposts.</p>
665
- * </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>
666
911
  */
667
- AccessPointArn?: string;
912
+ S3PrefixType?: S3PrefixType;
668
913
  /**
669
914
  * @public
670
- * <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>
671
916
  */
672
- Alias?: string;
917
+ Tags?: Tag[];
673
918
  }
674
- /**
675
- * @public
676
- * @enum
677
- */
678
- export declare const ObjectLambdaAllowedFeature: {
679
- readonly GetObjectPartNumber: "GetObject-PartNumber";
680
- readonly GetObjectRange: "GetObject-Range";
681
- readonly HeadObjectPartNumber: "HeadObject-PartNumber";
682
- readonly HeadObjectRange: "HeadObject-Range";
683
- };
684
- /**
685
- * @public
686
- */
687
- export type ObjectLambdaAllowedFeature = (typeof ObjectLambdaAllowedFeature)[keyof typeof ObjectLambdaAllowedFeature];
688
- /**
689
- * @public
690
- * @enum
691
- */
692
- export declare const ObjectLambdaTransformationConfigurationAction: {
693
- readonly GetObject: "GetObject";
694
- readonly HeadObject: "HeadObject";
695
- readonly ListObjects: "ListObjects";
696
- readonly ListObjectsV2: "ListObjectsV2";
697
- };
698
- /**
699
- * @public
700
- */
701
- export type ObjectLambdaTransformationConfigurationAction = (typeof ObjectLambdaTransformationConfigurationAction)[keyof typeof ObjectLambdaTransformationConfigurationAction];
702
- /**
703
- * @public
704
- * <p>A container for AwsLambdaTransformation.</p>
705
- */
706
- export type ObjectLambdaContentTransformation = ObjectLambdaContentTransformation.AwsLambdaMember | ObjectLambdaContentTransformation.$UnknownMember;
707
919
  /**
708
920
  * @public
709
921
  */
710
- export declare namespace ObjectLambdaContentTransformation {
922
+ export interface CreateAccessGrantResult {
711
923
  /**
712
924
  * @public
713
- * <p>A container for an Lambda function.</p>
925
+ * <p>The date and time when you created the access grant. </p>
714
926
  */
715
- interface AwsLambdaMember {
716
- AwsLambda: AwsLambdaTransformation;
717
- $unknown?: never;
718
- }
927
+ CreatedAt?: Date;
719
928
  /**
720
929
  * @public
930
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
721
931
  */
722
- interface $UnknownMember {
723
- AwsLambda?: never;
724
- $unknown: [string, any];
725
- }
726
- interface Visitor<T> {
727
- AwsLambda: (value: AwsLambdaTransformation) => T;
728
- _: (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;
729
1198
  }
730
1199
  const visit: <T>(value: ObjectLambdaContentTransformation, visitor: Visitor<T>) => T;
731
1200
  }
@@ -2262,76 +2731,88 @@ export interface CreateMultiRegionAccessPointResult {
2262
2731
  }
2263
2732
  /**
2264
2733
  * @public
2265
- * <p> A filter condition that specifies the object age range of included objects in days.
2266
- * Only integers are supported. </p>
2734
+ * <p>
2735
+ * A filter condition that specifies the object age range of included objects in days. Only integers are supported.
2736
+ * </p>
2267
2737
  */
2268
2738
  export interface MatchObjectAge {
2269
2739
  /**
2270
2740
  * @public
2271
- * <p> Specifies the maximum object age in days. Must be a positive whole number, greater than
2272
- * the minimum object age and less than or equal to 2,147,483,647. </p>
2741
+ * <p>
2742
+ * Specifies the maximum object age in days. Must be a positive whole number, greater than the minimum object age and less than or equal to 2,147,483,647.
2743
+ * </p>
2273
2744
  */
2274
2745
  DaysGreaterThan?: number;
2275
2746
  /**
2276
2747
  * @public
2277
- * <p> Specifies the minimum object age in days. The value must be a positive whole number,
2278
- * greater than 0 and less than or equal to 2,147,483,647. </p>
2748
+ * <p>
2749
+ * Specifies the minimum object age in days. The value must be a positive whole number, greater than 0 and less than or equal to 2,147,483,647.
2750
+ * </p>
2279
2751
  */
2280
2752
  DaysLessThan?: number;
2281
2753
  }
2282
2754
  /**
2283
2755
  * @public
2284
- * <p> A filter condition that specifies the object size range of included objects in bytes.
2285
- * Only integers are supported. </p>
2756
+ * <p>
2757
+ * A filter condition that specifies the object size range of included objects in bytes. Only integers are supported.
2758
+ * </p>
2286
2759
  */
2287
2760
  export interface MatchObjectSize {
2288
2761
  /**
2289
2762
  * @public
2290
- * <p> Specifies the minimum object size in Bytes. The value must be a positive number,
2291
- * greater than 0 and less than 5 TB. </p>
2763
+ * <p>
2764
+ * Specifies the minimum object size in Bytes. The value must be a positive number, greater than 0 and less than 5 TB.
2765
+ * </p>
2292
2766
  */
2293
2767
  BytesGreaterThan?: number;
2294
2768
  /**
2295
2769
  * @public
2296
- * <p> Specifies the maximum object size in Bytes. The value must be a positive number,
2297
- * greater than the minimum object size and less than 5 TB. </p>
2770
+ * <p>
2771
+ * Specifies the maximum object size in Bytes. The value must be a positive number, greater than the minimum object size and less than 5 TB.
2772
+ * </p>
2298
2773
  */
2299
2774
  BytesLessThan?: number;
2300
2775
  }
2301
2776
  /**
2302
2777
  * @public
2303
- * <p> A logical operator that allows multiple filter conditions to be joined for more complex
2304
- * comparisons of Storage Lens group data. </p>
2778
+ * <p>
2779
+ * A logical operator that allows multiple filter conditions to be joined for more complex comparisons of Storage Lens group data.
2780
+ * </p>
2305
2781
  */
2306
2782
  export interface StorageLensGroupAndOperator {
2307
2783
  /**
2308
2784
  * @public
2309
- * <p> Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes
2310
- * are allowed. </p>
2785
+ * <p>
2786
+ * Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes are allowed.
2787
+ * </p>
2311
2788
  */
2312
2789
  MatchAnyPrefix?: string[];
2313
2790
  /**
2314
2791
  * @public
2315
- * <p> Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes
2316
- * are allowed. </p>
2792
+ * <p>
2793
+ * Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes are allowed.
2794
+ * </p>
2317
2795
  */
2318
2796
  MatchAnySuffix?: string[];
2319
2797
  /**
2320
2798
  * @public
2321
- * <p> Contains the list of object tags. At least one object tag must be specified. Up to 10
2322
- * object tags are allowed. </p>
2799
+ * <p>
2800
+ * Contains the list of object tags. At least one object tag must be specified. Up to 10 object tags are allowed.
2801
+ * </p>
2323
2802
  */
2324
2803
  MatchAnyTag?: S3Tag[];
2325
2804
  /**
2326
2805
  * @public
2327
- * <p> Contains <code>DaysGreaterThan</code> and <code>DaysLessThan</code> to define the
2328
- * object age range (minimum and maximum number of days). </p>
2806
+ * <p>
2807
+ * Contains <code>DaysGreaterThan</code> and <code>DaysLessThan</code> to define the object age range (minimum and maximum number of days).
2808
+ * </p>
2329
2809
  */
2330
2810
  MatchObjectAge?: MatchObjectAge;
2331
2811
  /**
2332
2812
  * @public
2333
- * <p> Contains <code>BytesGreaterThan</code> and <code>BytesLessThan</code> to define the
2334
- * object size range (minimum and maximum number of Bytes). </p>
2813
+ * <p>
2814
+ * Contains <code>BytesGreaterThan</code> and <code>BytesLessThan</code> to define the object size range (minimum and maximum number of Bytes).
2815
+ * </p>
2335
2816
  */
2336
2817
  MatchObjectSize?: MatchObjectSize;
2337
2818
  }
@@ -2339,8 +2820,8 @@ export interface StorageLensGroupAndOperator {
2339
2820
  * @public
2340
2821
  * <p>A container element for specifying <code>Or</code> rule conditions. The rule conditions
2341
2822
  * determine the subset of objects to which the <code>Or</code> rule applies. Objects can
2342
- * match any of the listed filter conditions, which are joined by the <code>Or</code> logical
2343
- * operator. Only one of each filter condition is allowed.</p>
2823
+ * match any of the listed filter conditions, which are joined by the <code>Or</code> logical operator.
2824
+ * Only one of each filter condition is allowed.</p>
2344
2825
  */
2345
2826
  export interface StorageLensGroupOrOperator {
2346
2827
  /**
@@ -2350,75 +2831,87 @@ export interface StorageLensGroupOrOperator {
2350
2831
  MatchAnyPrefix?: string[];
2351
2832
  /**
2352
2833
  * @public
2353
- * <p> Filters objects that match any of the specified suffixes. </p>
2834
+ * <p>
2835
+ * Filters objects that match any of the specified suffixes.
2836
+ * </p>
2354
2837
  */
2355
2838
  MatchAnySuffix?: string[];
2356
2839
  /**
2357
2840
  * @public
2358
- * <p> Filters objects that match any of the specified S3 object tags. </p>
2841
+ * <p>
2842
+ * Filters objects that match any of the specified S3 object tags.
2843
+ * </p>
2359
2844
  */
2360
2845
  MatchAnyTag?: S3Tag[];
2361
2846
  /**
2362
2847
  * @public
2363
- * <p> Filters objects that match the specified object age range. </p>
2848
+ * <p>
2849
+ * Filters objects that match the specified object age range.
2850
+ * </p>
2364
2851
  */
2365
2852
  MatchObjectAge?: MatchObjectAge;
2366
2853
  /**
2367
2854
  * @public
2368
- * <p> Filters objects that match the specified object size range. </p>
2855
+ * <p>
2856
+ * Filters objects that match the specified object size range.
2857
+ * </p>
2369
2858
  */
2370
2859
  MatchObjectSize?: MatchObjectSize;
2371
2860
  }
2372
2861
  /**
2373
2862
  * @public
2374
- * <p>The filter element sets the criteria for the Storage Lens group data that is displayed.
2375
- * For multiple filter conditions, the <code>AND</code> or <code>OR</code> logical operator is
2376
- * used.</p>
2863
+ * <p>The filter element sets the criteria for the Storage Lens group data that is displayed. For multiple filter conditions, the <code>AND</code> or <code>OR</code>
2864
+ * logical operator is used.</p>
2377
2865
  */
2378
2866
  export interface StorageLensGroupFilter {
2379
2867
  /**
2380
2868
  * @public
2381
- * <p> Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes
2382
- * are allowed. </p>
2869
+ * <p>
2870
+ * Contains a list of prefixes. At least one prefix must be specified. Up to 10 prefixes are allowed.
2871
+ * </p>
2383
2872
  */
2384
2873
  MatchAnyPrefix?: string[];
2385
2874
  /**
2386
2875
  * @public
2387
- * <p> Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes
2388
- * are allowed. </p>
2876
+ * <p>
2877
+ * Contains a list of suffixes. At least one suffix must be specified. Up to 10 suffixes are allowed.
2878
+ * </p>
2389
2879
  */
2390
2880
  MatchAnySuffix?: string[];
2391
2881
  /**
2392
2882
  * @public
2393
- * <p> Contains the list of S3 object tags. At least one object tag must be specified. Up to
2394
- * 10 object tags are allowed. </p>
2883
+ * <p>
2884
+ * Contains the list of S3 object tags. At least one object tag must be specified. Up to 10 object tags are allowed.
2885
+ * </p>
2395
2886
  */
2396
2887
  MatchAnyTag?: S3Tag[];
2397
2888
  /**
2398
2889
  * @public
2399
- * <p> Contains <code>DaysGreaterThan</code> and <code>DaysLessThan</code> to define the
2400
- * object age range (minimum and maximum number of days). </p>
2890
+ * <p>
2891
+ * Contains <code>DaysGreaterThan</code> and <code>DaysLessThan</code> to define the object age range (minimum and maximum number of days).
2892
+ * </p>
2401
2893
  */
2402
2894
  MatchObjectAge?: MatchObjectAge;
2403
2895
  /**
2404
2896
  * @public
2405
- * <p> Contains <code>BytesGreaterThan</code> and <code>BytesLessThan</code> to define the
2406
- * object size range (minimum and maximum number of Bytes). </p>
2897
+ * <p>
2898
+ * Contains <code>BytesGreaterThan</code> and <code>BytesLessThan</code> to define the object size range (minimum and maximum number of Bytes).
2899
+ * </p>
2407
2900
  */
2408
2901
  MatchObjectSize?: MatchObjectSize;
2409
2902
  /**
2410
2903
  * @public
2411
2904
  * <p>A logical operator that allows multiple filter conditions to be joined for more complex
2412
2905
  * comparisons of Storage Lens group data. Objects must match all of the listed filter
2413
- * conditions that are joined by the <code>And</code> logical operator. Only one of each
2414
- * filter condition is allowed.</p>
2906
+ * conditions that are joined by the <code>And</code> logical operator. Only one of each filter condition
2907
+ * is allowed.</p>
2415
2908
  */
2416
2909
  And?: StorageLensGroupAndOperator;
2417
2910
  /**
2418
2911
  * @public
2419
2912
  * <p>A single logical operator that allows multiple filter conditions to be joined. Objects
2420
- * can match any of the listed filter conditions, which are joined by the <code>Or</code>
2421
- * logical operator. Only one of each filter condition is allowed. </p>
2913
+ * can match any of the listed filter conditions, which are joined by the <code>Or</code> logical operator.
2914
+ * Only one of each filter condition is allowed. </p>
2422
2915
  */
2423
2916
  Or?: StorageLensGroupOrOperator;
2424
2917
  }
@@ -2432,67 +2925,100 @@ export interface StorageLensGroupFilter {
2432
2925
  export interface StorageLensGroup {
2433
2926
  /**
2434
2927
  * @public
2435
- * <p> Contains the name of the Storage Lens group. </p>
2928
+ * <p>
2929
+ * Contains the name of the Storage Lens group.
2930
+ * </p>
2436
2931
  */
2437
2932
  Name: string | undefined;
2438
2933
  /**
2439
2934
  * @public
2440
- * <p>Sets the criteria for the Storage Lens group data that is displayed. For multiple filter
2441
- * conditions, the <code>AND</code> or <code>OR</code> logical operator is used.</p>
2935
+ * <p>Sets the criteria for the Storage Lens group data that is displayed. For multiple filter conditions, the <code>AND</code> or <code>OR</code>
2936
+ * logical operator is used.</p>
2442
2937
  */
2443
2938
  Filter: StorageLensGroupFilter | undefined;
2444
2939
  /**
2445
2940
  * @public
2446
- * <p> Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is
2447
- * read-only. </p>
2941
+ * <p>
2942
+ * Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is read-only.
2943
+ * </p>
2448
2944
  */
2449
2945
  StorageLensGroupArn?: string;
2450
2946
  }
2451
2947
  /**
2452
2948
  * @public
2453
- * <p> An Amazon Web Services resource tag that's associated with your S3 resource. You can add tags to new
2454
- * objects when you upload them, or you can add object tags to existing objects. </p>
2455
- * <note>
2456
- * <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
2457
- * groups</a>.</p>
2458
- * </note>
2459
2949
  */
2460
- export interface Tag {
2950
+ export interface CreateStorageLensGroupRequest {
2461
2951
  /**
2462
2952
  * @public
2463
- * <p> The tag key for your Amazon Web Services resource. A tag key can be up to 128 Unicode characters in
2464
- * length and is case-sensitive. System created tags that begin with <code>aws:</code> aren’t
2465
- * supported. </p>
2953
+ * <p>
2954
+ * The Amazon Web Services account ID that the Storage Lens group is created from and associated with.
2955
+ * </p>
2466
2956
  */
2467
- Key: string | undefined;
2957
+ AccountId?: string;
2468
2958
  /**
2469
2959
  * @public
2470
- * <p> The tag value for your Amazon Web Services resource. A tag value can be up to 256 Unicode characters
2471
- * in length and is case-sensitive. </p>
2960
+ * <p>
2961
+ * The Storage Lens group configuration.
2962
+ * </p>
2472
2963
  */
2473
- Value: string | undefined;
2964
+ StorageLensGroup: StorageLensGroup | undefined;
2965
+ /**
2966
+ * @public
2967
+ * <p>
2968
+ * The Amazon Web Services resource tags that you're adding to your Storage Lens group. This parameter is optional.
2969
+ * </p>
2970
+ */
2971
+ Tags?: Tag[];
2474
2972
  }
2475
2973
  /**
2476
2974
  * @public
2477
2975
  */
2478
- export interface CreateStorageLensGroupRequest {
2976
+ export interface DeleteAccessGrantRequest {
2479
2977
  /**
2480
2978
  * @public
2481
- * <p> The Amazon Web Services account ID that the Storage Lens group is created from and associated with.
2482
- * </p>
2979
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
2483
2980
  */
2484
2981
  AccountId?: string;
2485
2982
  /**
2486
2983
  * @public
2487
- * <p> The Storage Lens group configuration. </p>
2984
+ * <p>The ID of the access grant. S3 Access Grants auto-generates this ID when you create the access grant.</p>
2488
2985
  */
2489
- StorageLensGroup: StorageLensGroup | undefined;
2986
+ AccessGrantId: string | undefined;
2987
+ }
2988
+ /**
2989
+ * @public
2990
+ */
2991
+ export interface DeleteAccessGrantsInstanceRequest {
2490
2992
  /**
2491
2993
  * @public
2492
- * <p> The Amazon Web Services resource tags that you're adding to your Storage Lens group. This parameter
2493
- * is optional. </p>
2994
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
2494
2995
  */
2495
- Tags?: Tag[];
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;
2496
3022
  }
2497
3023
  /**
2498
3024
  * @public
@@ -2761,13 +3287,16 @@ export interface DeleteStorageLensConfigurationTaggingResult {
2761
3287
  export interface DeleteStorageLensGroupRequest {
2762
3288
  /**
2763
3289
  * @public
2764
- * <p> The name of the Storage Lens group that you're trying to delete. </p>
3290
+ * <p>
3291
+ * The name of the Storage Lens group that you're trying to delete.
3292
+ * </p>
2765
3293
  */
2766
3294
  Name: string | undefined;
2767
3295
  /**
2768
3296
  * @public
2769
- * <p> The Amazon Web Services account ID used to create the Storage Lens group that you're trying to
2770
- * delete. </p>
3297
+ * <p>
3298
+ * The Amazon Web Services account ID used to create the Storage Lens group that you're trying to delete.
3299
+ * </p>
2771
3300
  */
2772
3301
  AccountId?: string;
2773
3302
  }
@@ -3033,6 +3562,235 @@ export interface DescribeMultiRegionAccessPointOperationResult {
3033
3562
  */
3034
3563
  AsyncOperation?: AsyncOperation;
3035
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
+ }
3036
3794
  /**
3037
3795
  * @public
3038
3796
  */
@@ -4283,74 +5041,186 @@ export interface GetBucketVersioningResult {
4283
5041
  }
4284
5042
  /**
4285
5043
  * @public
5044
+ * @enum
4286
5045
  */
4287
- export interface GetJobTaggingRequest {
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 {
4288
5058
  /**
4289
5059
  * @public
4290
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5060
+ * <p>The ID of the Amazon Web Services account that is making this request.</p>
4291
5061
  */
4292
5062
  AccountId?: string;
4293
5063
  /**
4294
5064
  * @public
4295
- * <p>The ID for the S3 Batch Operations job whose tags you want to retrieve.</p>
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>
4296
5066
  */
4297
- JobId: string | undefined;
4298
- }
4299
- /**
4300
- * @public
4301
- */
4302
- export interface GetJobTaggingResult {
5067
+ Target: string | undefined;
4303
5068
  /**
4304
5069
  * @public
4305
- * <p>The set of tags associated with the S3 Batch Operations job.</p>
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>
4306
5085
  */
4307
- Tags?: S3Tag[];
4308
- }
4309
- /**
4310
- * @public
4311
- */
4312
- export interface GetMultiRegionAccessPointRequest {
5086
+ Permission: Permission | undefined;
4313
5087
  /**
4314
5088
  * @public
4315
- * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
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>
4316
5090
  */
4317
- AccountId?: string;
5091
+ DurationSeconds?: number;
4318
5092
  /**
4319
5093
  * @public
4320
- * <p>The name of the Multi-Region Access Point whose configuration information you want to receive. The name of
4321
- * the Multi-Region Access Point is different from the alias. For more information about the distinction between
4322
- * the name and the alias of an Multi-Region Access Point, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming">Managing Multi-Region Access Points</a> in the
4323
- * <i>Amazon S3 User Guide</i>.</p>
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>
4324
5105
  */
4325
- Name: string | undefined;
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;
4326
5112
  }
4327
5113
  /**
4328
5114
  * @public
4329
- * <p>A combination of a bucket and Region that's part of a Multi-Region Access Point.</p>
5115
+ * <p>The Amazon Web Services Security Token Service temporary credential that S3 Access Grants vends to grantees and client applications. </p>
4330
5116
  */
4331
- export interface RegionReport {
5117
+ export interface Credentials {
4332
5118
  /**
4333
5119
  * @public
4334
- * <p>The name of the bucket.</p>
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>
4335
5121
  */
4336
- Bucket?: string;
5122
+ AccessKeyId?: string;
4337
5123
  /**
4338
5124
  * @public
4339
- * <p>The name of the Region.</p>
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>
4340
5126
  */
4341
- Region?: string;
5127
+ SecretAccessKey?: string;
4342
5128
  /**
4343
5129
  * @public
4344
- * <p>The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this
4345
- * Multi-Region Access Point.</p>
5130
+ * <p>The Amazon Web Services STS temporary credential that S3 Access Grants vends to grantees and client applications. </p>
4346
5131
  */
4347
- BucketAccountId?: string;
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;
4348
5138
  }
4349
5139
  /**
4350
5140
  * @public
4351
- * @enum
4352
5141
  */
4353
- export declare const MultiRegionAccessPointStatus: {
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
+ }
5154
+ /**
5155
+ * @public
5156
+ */
5157
+ export interface GetJobTaggingRequest {
5158
+ /**
5159
+ * @public
5160
+ * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5161
+ */
5162
+ AccountId?: string;
5163
+ /**
5164
+ * @public
5165
+ * <p>The ID for the S3 Batch Operations job whose tags you want to retrieve.</p>
5166
+ */
5167
+ JobId: string | undefined;
5168
+ }
5169
+ /**
5170
+ * @public
5171
+ */
5172
+ export interface GetJobTaggingResult {
5173
+ /**
5174
+ * @public
5175
+ * <p>The set of tags associated with the S3 Batch Operations job.</p>
5176
+ */
5177
+ Tags?: S3Tag[];
5178
+ }
5179
+ /**
5180
+ * @public
5181
+ */
5182
+ export interface GetMultiRegionAccessPointRequest {
5183
+ /**
5184
+ * @public
5185
+ * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
5186
+ */
5187
+ AccountId?: string;
5188
+ /**
5189
+ * @public
5190
+ * <p>The name of the Multi-Region Access Point whose configuration information you want to receive. The name of
5191
+ * the Multi-Region Access Point is different from the alias. For more information about the distinction between
5192
+ * the name and the alias of an Multi-Region Access Point, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/CreatingMultiRegionAccessPoints.html#multi-region-access-point-naming">Managing Multi-Region Access Points</a> in the
5193
+ * <i>Amazon S3 User Guide</i>.</p>
5194
+ */
5195
+ Name: string | undefined;
5196
+ }
5197
+ /**
5198
+ * @public
5199
+ * <p>A combination of a bucket and Region that's part of a Multi-Region Access Point.</p>
5200
+ */
5201
+ export interface RegionReport {
5202
+ /**
5203
+ * @public
5204
+ * <p>The name of the bucket.</p>
5205
+ */
5206
+ Bucket?: string;
5207
+ /**
5208
+ * @public
5209
+ * <p>The name of the Region.</p>
5210
+ */
5211
+ Region?: string;
5212
+ /**
5213
+ * @public
5214
+ * <p>The Amazon Web Services account ID that owns the Amazon S3 bucket that's associated with this
5215
+ * Multi-Region Access Point.</p>
5216
+ */
5217
+ BucketAccountId?: string;
5218
+ }
5219
+ /**
5220
+ * @public
5221
+ * @enum
5222
+ */
5223
+ export declare const MultiRegionAccessPointStatus: {
4354
5224
  readonly CREATING: "CREATING";
4355
5225
  readonly DELETING: "DELETING";
4356
5226
  readonly INCONSISTENT_ACROSS_REGIONS: "INCONSISTENT_ACROSS_REGIONS";
@@ -4941,14 +5811,16 @@ export interface GetStorageLensConfigurationTaggingResult {
4941
5811
  export interface GetStorageLensGroupRequest {
4942
5812
  /**
4943
5813
  * @public
4944
- * <p> The name of the Storage Lens group that you're trying to retrieve the configuration
4945
- * details for. </p>
5814
+ * <p>
5815
+ * The name of the Storage Lens group that you're trying to retrieve the configuration details for.
5816
+ * </p>
4946
5817
  */
4947
5818
  Name: string | undefined;
4948
5819
  /**
4949
5820
  * @public
4950
- * <p> The Amazon Web Services account ID associated with the Storage Lens group that you're trying to
4951
- * retrieve the details for. </p>
5821
+ * <p>
5822
+ * The Amazon Web Services account ID associated with the Storage Lens group that you're trying to retrieve the details for.
5823
+ * </p>
4952
5824
  */
4953
5825
  AccountId?: string;
4954
5826
  }
@@ -4958,11 +5830,175 @@ export interface GetStorageLensGroupRequest {
4958
5830
  export interface GetStorageLensGroupResult {
4959
5831
  /**
4960
5832
  * @public
4961
- * <p> The name of the Storage Lens group that you're trying to retrieve the configuration
4962
- * details for. </p>
5833
+ * <p>
5834
+ * The name of the Storage Lens group that you're trying to retrieve the configuration details for.
5835
+ * </p>
4963
5836
  */
4964
5837
  StorageLensGroup?: StorageLensGroup;
4965
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
+ }
4966
6002
  /**
4967
6003
  * @public
4968
6004
  */
@@ -5404,667 +6440,23 @@ export interface ListStorageLensConfigurationsResult {
5404
6440
  export interface ListStorageLensGroupsRequest {
5405
6441
  /**
5406
6442
  * @public
5407
- * <p> The Amazon Web Services account ID that owns the Storage Lens groups. </p>
6443
+ * <p>
6444
+ * The Amazon Web Services account ID that owns the Storage Lens groups.
6445
+ * </p>
5408
6446
  */
5409
6447
  AccountId?: string;
5410
6448
  /**
5411
6449
  * @public
5412
- * <p>The token for the next set of results, or <code>null</code> if there are no more
5413
- * results. </p>
5414
- */
5415
- NextToken?: string;
5416
- }
5417
- /**
5418
- * @public
5419
- * <p> Each entry contains a Storage Lens group that exists in the specified home Region.
5420
- * </p>
5421
- */
5422
- export interface ListStorageLensGroupEntry {
5423
- /**
5424
- * @public
5425
- * <p> Contains the name of the Storage Lens group that exists in the specified home Region.
5426
- * </p>
5427
- */
5428
- Name: string | undefined;
5429
- /**
5430
- * @public
5431
- * <p> Contains the Amazon Resource Name (ARN) of the Storage Lens group. This property is
5432
- * read-only. </p>
5433
- */
5434
- StorageLensGroupArn: string | undefined;
5435
- /**
5436
- * @public
5437
- * <p> Contains the Amazon Web Services Region where the Storage Lens group was created. </p>
5438
- */
5439
- HomeRegion: string | undefined;
5440
- }
5441
- /**
5442
- * @public
5443
- */
5444
- export interface ListStorageLensGroupsResult {
5445
- /**
5446
- * @public
5447
- * <p> If <code>NextToken</code> is returned, there are more Storage Lens groups results
5448
- * available. The value of <code>NextToken</code> is a unique pagination token for each page.
5449
- * Make the call again using the returned token to retrieve the next page. Keep all other
5450
- * arguments unchanged. Each pagination token expires after 24 hours. </p>
6450
+ * <p>The token for the next set of results, or <code>null</code> if there are no more results.
6451
+ * </p>
5451
6452
  */
5452
6453
  NextToken?: string;
5453
- /**
5454
- * @public
5455
- * <p> The list of Storage Lens groups that exist in the specified home Region. </p>
5456
- */
5457
- StorageLensGroupList?: ListStorageLensGroupEntry[];
5458
- }
5459
- /**
5460
- * @public
5461
- */
5462
- export interface ListTagsForResourceRequest {
5463
- /**
5464
- * @public
5465
- * <p> The Amazon Web Services account ID of the resource owner. </p>
5466
- */
5467
- AccountId?: string;
5468
- /**
5469
- * @public
5470
- * <p> The Amazon Resource Name (ARN) of the S3 resource that you want to list the tags for.
5471
- * </p>
5472
- */
5473
- ResourceArn: string | undefined;
5474
6454
  }
5475
6455
  /**
5476
- * @public
6456
+ * @internal
5477
6457
  */
5478
- export interface ListTagsForResourceResult {
5479
- /**
5480
- * @public
5481
- * <p> The Amazon Web Services resource tags that are associated with the resource. </p>
5482
- */
5483
- Tags?: Tag[];
5484
- }
6458
+ export declare const CredentialsFilterSensitiveLog: (obj: Credentials) => any;
5485
6459
  /**
5486
- * @public
6460
+ * @internal
5487
6461
  */
5488
- export interface PutAccessPointConfigurationForObjectLambdaRequest {
5489
- /**
5490
- * @public
5491
- * <p>The account ID for the account that owns the specified Object Lambda Access Point.</p>
5492
- */
5493
- AccountId?: string;
5494
- /**
5495
- * @public
5496
- * <p>The name of the Object Lambda Access Point.</p>
5497
- */
5498
- Name: string | undefined;
5499
- /**
5500
- * @public
5501
- * <p>Object Lambda Access Point configuration document.</p>
5502
- */
5503
- Configuration: ObjectLambdaConfiguration | undefined;
5504
- }
5505
- /**
5506
- * @public
5507
- */
5508
- export interface PutAccessPointPolicyRequest {
5509
- /**
5510
- * @public
5511
- * <p>The Amazon Web Services account ID for owner of the bucket associated with the specified access point.</p>
5512
- */
5513
- AccountId?: string;
5514
- /**
5515
- * @public
5516
- * <p>The name of the access point that you want to associate with the specified policy.</p>
5517
- * <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>
5518
- * <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>
5519
- */
5520
- Name: string | undefined;
5521
- /**
5522
- * @public
5523
- * <p>The policy that you want to apply to the specified access point. For more information about access point
5524
- * policies, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points.html">Managing data access with Amazon S3
5525
- * access points</a> in the <i>Amazon S3 User Guide</i>.</p>
5526
- */
5527
- Policy: string | undefined;
5528
- }
5529
- /**
5530
- * @public
5531
- */
5532
- export interface PutAccessPointPolicyForObjectLambdaRequest {
5533
- /**
5534
- * @public
5535
- * <p>The account ID for the account that owns the specified Object Lambda Access Point.</p>
5536
- */
5537
- AccountId?: string;
5538
- /**
5539
- * @public
5540
- * <p>The name of the Object Lambda Access Point.</p>
5541
- */
5542
- Name: string | undefined;
5543
- /**
5544
- * @public
5545
- * <p>Object Lambda Access Point resource policy document.</p>
5546
- */
5547
- Policy: string | undefined;
5548
- }
5549
- /**
5550
- * @public
5551
- * <p>The container for the Outposts bucket lifecycle configuration.</p>
5552
- */
5553
- export interface LifecycleConfiguration {
5554
- /**
5555
- * @public
5556
- * <p>A lifecycle rule for individual objects in an Outposts bucket. </p>
5557
- */
5558
- Rules?: LifecycleRule[];
5559
- }
5560
- /**
5561
- * @public
5562
- */
5563
- export interface PutBucketLifecycleConfigurationRequest {
5564
- /**
5565
- * @public
5566
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5567
- */
5568
- AccountId?: string;
5569
- /**
5570
- * @public
5571
- * <p>The name of the bucket for which to set the configuration.</p>
5572
- */
5573
- Bucket: string | undefined;
5574
- /**
5575
- * @public
5576
- * <p>Container for lifecycle rules. You can add as many as 1,000 rules.</p>
5577
- */
5578
- LifecycleConfiguration?: LifecycleConfiguration;
5579
- }
5580
- /**
5581
- * @public
5582
- */
5583
- export interface PutBucketPolicyRequest {
5584
- /**
5585
- * @public
5586
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5587
- */
5588
- AccountId?: string;
5589
- /**
5590
- * @public
5591
- * <p>Specifies the bucket.</p>
5592
- * <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>
5593
- * <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>
5594
- */
5595
- Bucket: string | undefined;
5596
- /**
5597
- * @public
5598
- * <p>Set this parameter to true to confirm that you want to remove your permissions to change
5599
- * this bucket policy in the future.</p>
5600
- * <note>
5601
- * <p>This is not supported by Amazon S3 on Outposts buckets.</p>
5602
- * </note>
5603
- */
5604
- ConfirmRemoveSelfBucketAccess?: boolean;
5605
- /**
5606
- * @public
5607
- * <p>The bucket policy as a JSON document.</p>
5608
- */
5609
- Policy: string | undefined;
5610
- }
5611
- /**
5612
- * @public
5613
- */
5614
- export interface PutBucketReplicationRequest {
5615
- /**
5616
- * @public
5617
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5618
- */
5619
- AccountId?: string;
5620
- /**
5621
- * @public
5622
- * <p>Specifies the S3 on Outposts bucket to set the configuration for.</p>
5623
- * <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>
5624
- * <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>
5625
- */
5626
- Bucket: string | undefined;
5627
- /**
5628
- * @public
5629
- * <p></p>
5630
- */
5631
- ReplicationConfiguration: ReplicationConfiguration | undefined;
5632
- }
5633
- /**
5634
- * @public
5635
- * <p></p>
5636
- */
5637
- export interface Tagging {
5638
- /**
5639
- * @public
5640
- * <p>A collection for a set of tags.</p>
5641
- */
5642
- TagSet: S3Tag[] | undefined;
5643
- }
5644
- /**
5645
- * @public
5646
- */
5647
- export interface PutBucketTaggingRequest {
5648
- /**
5649
- * @public
5650
- * <p>The Amazon Web Services account ID of the Outposts bucket.</p>
5651
- */
5652
- AccountId?: string;
5653
- /**
5654
- * @public
5655
- * <p>The Amazon Resource Name (ARN) of the bucket.</p>
5656
- * <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>
5657
- * <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>
5658
- */
5659
- Bucket: string | undefined;
5660
- /**
5661
- * @public
5662
- * <p></p>
5663
- */
5664
- Tagging: Tagging | undefined;
5665
- }
5666
- /**
5667
- * @public
5668
- * @enum
5669
- */
5670
- export declare const MFADelete: {
5671
- readonly Disabled: "Disabled";
5672
- readonly Enabled: "Enabled";
5673
- };
5674
- /**
5675
- * @public
5676
- */
5677
- export type MFADelete = (typeof MFADelete)[keyof typeof MFADelete];
5678
- /**
5679
- * @public
5680
- * <p>Describes the versioning state of an Amazon S3 on Outposts bucket. For more information, see
5681
- * <a href="https://docs.aws.amazon.com/AmazonS3/latest/API/API_control_PutBucketVersioning.html">PutBucketVersioning</a>.</p>
5682
- */
5683
- export interface VersioningConfiguration {
5684
- /**
5685
- * @public
5686
- * <p>Specifies whether MFA delete is enabled or disabled in the bucket versioning
5687
- * configuration for the S3 on Outposts bucket.</p>
5688
- */
5689
- MFADelete?: MFADelete;
5690
- /**
5691
- * @public
5692
- * <p>Sets the versioning state of the S3 on Outposts bucket.</p>
5693
- */
5694
- Status?: BucketVersioningStatus;
5695
- }
5696
- /**
5697
- * @public
5698
- */
5699
- export interface PutBucketVersioningRequest {
5700
- /**
5701
- * @public
5702
- * <p>The Amazon Web Services account ID of the S3 on Outposts bucket.</p>
5703
- */
5704
- AccountId?: string;
5705
- /**
5706
- * @public
5707
- * <p>The S3 on Outposts bucket to set the versioning state for.</p>
5708
- */
5709
- Bucket: string | undefined;
5710
- /**
5711
- * @public
5712
- * <p>The concatenation of the authentication device's serial number, a space, and the value
5713
- * that is displayed on your authentication device.</p>
5714
- */
5715
- MFA?: string;
5716
- /**
5717
- * @public
5718
- * <p>The root-level tag for the <code>VersioningConfiguration</code> parameters.</p>
5719
- */
5720
- VersioningConfiguration: VersioningConfiguration | undefined;
5721
- }
5722
- /**
5723
- * @public
5724
- */
5725
- export interface PutJobTaggingRequest {
5726
- /**
5727
- * @public
5728
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5729
- */
5730
- AccountId?: string;
5731
- /**
5732
- * @public
5733
- * <p>The ID for the S3 Batch Operations job whose tags you want to replace.</p>
5734
- */
5735
- JobId: string | undefined;
5736
- /**
5737
- * @public
5738
- * <p>The set of tags to associate with the S3 Batch Operations job.</p>
5739
- */
5740
- Tags: S3Tag[] | undefined;
5741
- }
5742
- /**
5743
- * @public
5744
- */
5745
- export interface PutJobTaggingResult {
5746
- }
5747
- /**
5748
- * @public
5749
- * <p>Amazon S3 throws this exception if you have too many tags in your tag set.</p>
5750
- */
5751
- export declare class TooManyTagsException extends __BaseException {
5752
- readonly name: "TooManyTagsException";
5753
- readonly $fault: "client";
5754
- Message?: string;
5755
- /**
5756
- * @internal
5757
- */
5758
- constructor(opts: __ExceptionOptionType<TooManyTagsException, __BaseException>);
5759
- }
5760
- /**
5761
- * @public
5762
- */
5763
- export interface PutMultiRegionAccessPointPolicyRequest {
5764
- /**
5765
- * @public
5766
- * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
5767
- */
5768
- AccountId?: string;
5769
- /**
5770
- * @public
5771
- * <p>An idempotency token used to identify the request and guarantee that requests are
5772
- * unique.</p>
5773
- */
5774
- ClientToken?: string;
5775
- /**
5776
- * @public
5777
- * <p>A container element containing the details of the policy for the Multi-Region Access Point.</p>
5778
- */
5779
- Details: PutMultiRegionAccessPointPolicyInput | undefined;
5780
- }
5781
- /**
5782
- * @public
5783
- */
5784
- export interface PutMultiRegionAccessPointPolicyResult {
5785
- /**
5786
- * @public
5787
- * <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
5788
- * requests.</p>
5789
- */
5790
- RequestTokenARN?: string;
5791
- }
5792
- /**
5793
- * @public
5794
- */
5795
- export interface PutPublicAccessBlockRequest {
5796
- /**
5797
- * @public
5798
- * <p>The <code>PublicAccessBlock</code> configuration that you want to apply to the specified
5799
- * Amazon Web Services account.</p>
5800
- */
5801
- PublicAccessBlockConfiguration: PublicAccessBlockConfiguration | undefined;
5802
- /**
5803
- * @public
5804
- * <p>The account ID for the Amazon Web Services account whose <code>PublicAccessBlock</code> configuration
5805
- * you want to set.</p>
5806
- */
5807
- AccountId?: string;
5808
- }
5809
- /**
5810
- * @public
5811
- */
5812
- export interface PutStorageLensConfigurationRequest {
5813
- /**
5814
- * @public
5815
- * <p>The ID of the S3 Storage Lens configuration.</p>
5816
- */
5817
- ConfigId: string | undefined;
5818
- /**
5819
- * @public
5820
- * <p>The account ID of the requester.</p>
5821
- */
5822
- AccountId?: string;
5823
- /**
5824
- * @public
5825
- * <p>The S3 Storage Lens configuration.</p>
5826
- */
5827
- StorageLensConfiguration: StorageLensConfiguration | undefined;
5828
- /**
5829
- * @public
5830
- * <p>The tag set of the S3 Storage Lens configuration.</p>
5831
- * <note>
5832
- * <p>You can set up to a maximum of 50 tags.</p>
5833
- * </note>
5834
- */
5835
- Tags?: StorageLensTag[];
5836
- }
5837
- /**
5838
- * @public
5839
- */
5840
- export interface PutStorageLensConfigurationTaggingRequest {
5841
- /**
5842
- * @public
5843
- * <p>The ID of the S3 Storage Lens configuration.</p>
5844
- */
5845
- ConfigId: string | undefined;
5846
- /**
5847
- * @public
5848
- * <p>The account ID of the requester.</p>
5849
- */
5850
- AccountId?: string;
5851
- /**
5852
- * @public
5853
- * <p>The tag set of the S3 Storage Lens configuration.</p>
5854
- * <note>
5855
- * <p>You can set up to a maximum of 50 tags.</p>
5856
- * </note>
5857
- */
5858
- Tags: StorageLensTag[] | undefined;
5859
- }
5860
- /**
5861
- * @public
5862
- */
5863
- export interface PutStorageLensConfigurationTaggingResult {
5864
- }
5865
- /**
5866
- * @public
5867
- */
5868
- export interface SubmitMultiRegionAccessPointRoutesRequest {
5869
- /**
5870
- * @public
5871
- * <p>The Amazon Web Services account ID for the owner of the Multi-Region Access Point.</p>
5872
- */
5873
- AccountId?: string;
5874
- /**
5875
- * @public
5876
- * <p>The Multi-Region Access Point ARN.</p>
5877
- */
5878
- Mrap: string | undefined;
5879
- /**
5880
- * @public
5881
- * <p>The different routes that make up the new route configuration. Active routes return a
5882
- * value of <code>100</code>, and passive routes return a value of <code>0</code>.</p>
5883
- */
5884
- RouteUpdates: MultiRegionAccessPointRoute[] | undefined;
5885
- }
5886
- /**
5887
- * @public
5888
- */
5889
- export interface SubmitMultiRegionAccessPointRoutesResult {
5890
- }
5891
- /**
5892
- * @public
5893
- */
5894
- export interface TagResourceRequest {
5895
- /**
5896
- * @public
5897
- * <p> The Amazon Web Services account ID that created the S3 resource that you're trying to add tags to.
5898
- * </p>
5899
- */
5900
- AccountId?: string;
5901
- /**
5902
- * @public
5903
- * <p> 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> The Amazon Web Services resource tags that you want to add to the specified S3 resource. </p>
5910
- */
5911
- Tags: Tag[] | undefined;
5912
- }
5913
- /**
5914
- * @public
5915
- */
5916
- export interface TagResourceResult {
5917
- }
5918
- /**
5919
- * @public
5920
- */
5921
- export interface UntagResourceRequest {
5922
- /**
5923
- * @public
5924
- * <p> The Amazon Web Services account ID that owns the resource that you're trying to remove the tags from.
5925
- * </p>
5926
- */
5927
- AccountId?: string;
5928
- /**
5929
- * @public
5930
- * <p> The Amazon Resource Name (ARN) of the S3 resource that you want to remove the resource
5931
- * tags from. </p>
5932
- */
5933
- ResourceArn: string | undefined;
5934
- /**
5935
- * @public
5936
- * <p> The tag key pair of the S3 resource tag that you're trying to remove. </p>
5937
- */
5938
- TagKeys: string[] | undefined;
5939
- }
5940
- /**
5941
- * @public
5942
- */
5943
- export interface UntagResourceResult {
5944
- }
5945
- /**
5946
- * @public
5947
- */
5948
- export interface UpdateJobPriorityRequest {
5949
- /**
5950
- * @public
5951
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
5952
- */
5953
- AccountId?: string;
5954
- /**
5955
- * @public
5956
- * <p>The ID for the job whose priority you want to update.</p>
5957
- */
5958
- JobId: string | undefined;
5959
- /**
5960
- * @public
5961
- * <p>The priority you want to assign to this job.</p>
5962
- */
5963
- Priority: number | undefined;
5964
- }
5965
- /**
5966
- * @public
5967
- */
5968
- export interface UpdateJobPriorityResult {
5969
- /**
5970
- * @public
5971
- * <p>The ID for the job whose priority Amazon S3 updated.</p>
5972
- */
5973
- JobId: string | undefined;
5974
- /**
5975
- * @public
5976
- * <p>The new priority assigned to the specified job.</p>
5977
- */
5978
- Priority: number | undefined;
5979
- }
5980
- /**
5981
- * @public
5982
- * <p></p>
5983
- */
5984
- export declare class JobStatusException extends __BaseException {
5985
- readonly name: "JobStatusException";
5986
- readonly $fault: "client";
5987
- Message?: string;
5988
- /**
5989
- * @internal
5990
- */
5991
- constructor(opts: __ExceptionOptionType<JobStatusException, __BaseException>);
5992
- }
5993
- /**
5994
- * @public
5995
- * @enum
5996
- */
5997
- export declare const RequestedJobStatus: {
5998
- readonly Cancelled: "Cancelled";
5999
- readonly Ready: "Ready";
6000
- };
6001
- /**
6002
- * @public
6003
- */
6004
- export type RequestedJobStatus = (typeof RequestedJobStatus)[keyof typeof RequestedJobStatus];
6005
- /**
6006
- * @public
6007
- */
6008
- export interface UpdateJobStatusRequest {
6009
- /**
6010
- * @public
6011
- * <p>The Amazon Web Services account ID associated with the S3 Batch Operations job.</p>
6012
- */
6013
- AccountId?: string;
6014
- /**
6015
- * @public
6016
- * <p>The ID of the job whose status you want to update.</p>
6017
- */
6018
- JobId: string | undefined;
6019
- /**
6020
- * @public
6021
- * <p>The status that you want to move the specified job to.</p>
6022
- */
6023
- RequestedJobStatus: RequestedJobStatus | undefined;
6024
- /**
6025
- * @public
6026
- * <p>A description of the reason why you want to change the specified job's status. This
6027
- * field can be any string up to the maximum length.</p>
6028
- */
6029
- StatusUpdateReason?: string;
6030
- }
6031
- /**
6032
- * @public
6033
- */
6034
- export interface UpdateJobStatusResult {
6035
- /**
6036
- * @public
6037
- * <p>The ID for the job whose status was updated.</p>
6038
- */
6039
- JobId?: string;
6040
- /**
6041
- * @public
6042
- * <p>The current status for the specified job.</p>
6043
- */
6044
- Status?: JobStatus;
6045
- /**
6046
- * @public
6047
- * <p>The reason that the specified job's status was updated.</p>
6048
- */
6049
- StatusUpdateReason?: string;
6050
- }
6051
- /**
6052
- * @public
6053
- */
6054
- export interface UpdateStorageLensGroupRequest {
6055
- /**
6056
- * @public
6057
- * <p> The name of the Storage Lens group that you want to update. </p>
6058
- */
6059
- Name: string | undefined;
6060
- /**
6061
- * @public
6062
- * <p> The Amazon Web Services account ID of the Storage Lens group owner. </p>
6063
- */
6064
- AccountId?: string;
6065
- /**
6066
- * @public
6067
- * <p> The JSON file that contains the Storage Lens group configuration. </p>
6068
- */
6069
- StorageLensGroup: StorageLensGroup | undefined;
6070
- }
6462
+ export declare const GetDataAccessResultFilterSensitiveLog: (obj: GetDataAccessResult) => any;