@aws-sdk/client-s3tables 3.939.0 → 3.943.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 (65) hide show
  1. package/README.md +104 -0
  2. package/dist-cjs/index.js +755 -20
  3. package/dist-es/S3Tables.js +26 -0
  4. package/dist-es/commands/DeleteTableBucketReplicationCommand.js +16 -0
  5. package/dist-es/commands/DeleteTableReplicationCommand.js +16 -0
  6. package/dist-es/commands/GetTableBucketReplicationCommand.js +16 -0
  7. package/dist-es/commands/GetTableBucketStorageClassCommand.js +16 -0
  8. package/dist-es/commands/GetTableRecordExpirationConfigurationCommand.js +16 -0
  9. package/dist-es/commands/GetTableRecordExpirationJobStatusCommand.js +16 -0
  10. package/dist-es/commands/GetTableReplicationCommand.js +16 -0
  11. package/dist-es/commands/GetTableReplicationStatusCommand.js +16 -0
  12. package/dist-es/commands/GetTableStorageClassCommand.js +16 -0
  13. package/dist-es/commands/PutTableBucketReplicationCommand.js +16 -0
  14. package/dist-es/commands/PutTableBucketStorageClassCommand.js +16 -0
  15. package/dist-es/commands/PutTableRecordExpirationConfigurationCommand.js +16 -0
  16. package/dist-es/commands/PutTableReplicationCommand.js +16 -0
  17. package/dist-es/commands/index.js +13 -0
  18. package/dist-es/models/enums.js +19 -0
  19. package/dist-es/models/errors.js +12 -0
  20. package/dist-es/schemas/schemas_0.js +539 -21
  21. package/dist-types/S3Tables.d.ts +91 -0
  22. package/dist-types/S3TablesClient.d.ts +15 -2
  23. package/dist-types/commands/CreateTableBucketCommand.d.ts +4 -1
  24. package/dist-types/commands/CreateTableCommand.d.ts +7 -1
  25. package/dist-types/commands/DeleteTableBucketReplicationCommand.d.ts +94 -0
  26. package/dist-types/commands/DeleteTableReplicationCommand.d.ts +94 -0
  27. package/dist-types/commands/GetTableBucketReplicationCommand.d.ts +107 -0
  28. package/dist-types/commands/GetTableBucketStorageClassCommand.d.ts +94 -0
  29. package/dist-types/commands/GetTableCommand.d.ts +5 -0
  30. package/dist-types/commands/GetTableRecordExpirationConfigurationCommand.d.ts +97 -0
  31. package/dist-types/commands/GetTableRecordExpirationJobStatusCommand.d.ts +99 -0
  32. package/dist-types/commands/GetTableReplicationCommand.d.ts +107 -0
  33. package/dist-types/commands/GetTableReplicationStatusCommand.d.ts +104 -0
  34. package/dist-types/commands/GetTableStorageClassCommand.d.ts +96 -0
  35. package/dist-types/commands/ListTablesCommand.d.ts +1 -0
  36. package/dist-types/commands/PutTableBucketReplicationCommand.d.ts +109 -0
  37. package/dist-types/commands/PutTableBucketStorageClassCommand.d.ts +93 -0
  38. package/dist-types/commands/PutTableRecordExpirationConfigurationCommand.d.ts +96 -0
  39. package/dist-types/commands/PutTableReplicationCommand.d.ts +109 -0
  40. package/dist-types/commands/index.d.ts +13 -0
  41. package/dist-types/models/enums.d.ts +51 -0
  42. package/dist-types/models/errors.d.ts +12 -0
  43. package/dist-types/models/models_0.d.ts +530 -2
  44. package/dist-types/schemas/schemas_0.d.ts +54 -0
  45. package/dist-types/ts3.4/S3Tables.d.ts +239 -0
  46. package/dist-types/ts3.4/S3TablesClient.d.ts +78 -0
  47. package/dist-types/ts3.4/commands/DeleteTableBucketReplicationCommand.d.ts +47 -0
  48. package/dist-types/ts3.4/commands/DeleteTableReplicationCommand.d.ts +46 -0
  49. package/dist-types/ts3.4/commands/GetTableBucketReplicationCommand.d.ts +51 -0
  50. package/dist-types/ts3.4/commands/GetTableBucketStorageClassCommand.d.ts +51 -0
  51. package/dist-types/ts3.4/commands/GetTableRecordExpirationConfigurationCommand.d.ts +51 -0
  52. package/dist-types/ts3.4/commands/GetTableRecordExpirationJobStatusCommand.d.ts +51 -0
  53. package/dist-types/ts3.4/commands/GetTableReplicationCommand.d.ts +51 -0
  54. package/dist-types/ts3.4/commands/GetTableReplicationStatusCommand.d.ts +51 -0
  55. package/dist-types/ts3.4/commands/GetTableStorageClassCommand.d.ts +51 -0
  56. package/dist-types/ts3.4/commands/PutTableBucketReplicationCommand.d.ts +51 -0
  57. package/dist-types/ts3.4/commands/PutTableBucketStorageClassCommand.d.ts +47 -0
  58. package/dist-types/ts3.4/commands/PutTableRecordExpirationConfigurationCommand.d.ts +47 -0
  59. package/dist-types/ts3.4/commands/PutTableReplicationCommand.d.ts +51 -0
  60. package/dist-types/ts3.4/commands/index.d.ts +13 -0
  61. package/dist-types/ts3.4/models/enums.d.ts +26 -0
  62. package/dist-types/ts3.4/models/errors.d.ts +7 -0
  63. package/dist-types/ts3.4/models/models_0.d.ts +142 -0
  64. package/dist-types/ts3.4/schemas/schemas_0.d.ts +54 -0
  65. package/package.json +5 -5
@@ -1,4 +1,4 @@
1
- import { IcebergCompactionStrategy, JobStatus, MaintenanceStatus, OpenTableFormat, SSEAlgorithm, TableBucketMaintenanceType, TableBucketType, TableMaintenanceJobType, TableMaintenanceType, TableType } from "./enums";
1
+ import { IcebergCompactionStrategy, JobStatus, MaintenanceStatus, OpenTableFormat, ReplicationStatus, SSEAlgorithm, StorageClass, TableBucketMaintenanceType, TableBucketType, TableMaintenanceJobType, TableMaintenanceType, TableRecordExpirationJobStatus, TableRecordExpirationStatus, TableType } from "./enums";
2
2
  /**
3
3
  * @public
4
4
  */
@@ -87,6 +87,11 @@ export interface IcebergMetadata {
87
87
  * @public
88
88
  */
89
89
  schema: IcebergSchema | undefined;
90
+ /**
91
+ * <p>Contains configuration properties for an Iceberg table.</p>
92
+ * @public
93
+ */
94
+ properties?: Record<string, string> | undefined;
90
95
  }
91
96
  /**
92
97
  * <p>Contains details about the table metadata.</p>
@@ -121,6 +126,17 @@ export declare namespace TableMetadata {
121
126
  _: (name: string, value: any) => T;
122
127
  }
123
128
  }
129
+ /**
130
+ * <p>The configuration details for the storage class of tables or table buckets. This allows you to optimize storage costs by selecting the appropriate storage class based on your access patterns and performance requirements.</p>
131
+ * @public
132
+ */
133
+ export interface StorageClassConfiguration {
134
+ /**
135
+ * <p>The storage class for the table or table bucket. Valid values include storage classes optimized for different access patterns and cost profiles.</p>
136
+ * @public
137
+ */
138
+ storageClass: StorageClass | undefined;
139
+ }
124
140
  /**
125
141
  * @public
126
142
  */
@@ -155,6 +171,11 @@ export interface CreateTableRequest {
155
171
  * @public
156
172
  */
157
173
  encryptionConfiguration?: EncryptionConfiguration | undefined;
174
+ /**
175
+ * <p>The storage class configuration for the table. If not specified, the table inherits the storage class configuration from its table bucket. Specify this parameter to override the bucket's default storage class for this table.</p>
176
+ * @public
177
+ */
178
+ storageClassConfiguration?: StorageClassConfiguration | undefined;
158
179
  /**
159
180
  * <p>A map of user-defined tags that you would like to apply to the table that you are creating. A tag is a key-value pair that you apply to your resources. Tags can help you organize, track costs for, and control access to resources. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html">Tagging for cost allocation or attribute-based access control (ABAC)</a>.</p> <note> <p>You must have the <code>s3tables:TagResource</code> permission in addition to <code>s3tables:CreateTable</code> permission to create a table with tags.</p> </note>
160
181
  * @public
@@ -190,6 +211,11 @@ export interface CreateTableBucketRequest {
190
211
  * @public
191
212
  */
192
213
  encryptionConfiguration?: EncryptionConfiguration | undefined;
214
+ /**
215
+ * <p>The default storage class configuration for the table bucket. This configuration will be applied to all new tables created in this bucket unless overridden at the table level. If not specified, the service default storage class will be used.</p>
216
+ * @public
217
+ */
218
+ storageClassConfiguration?: StorageClassConfiguration | undefined;
193
219
  /**
194
220
  * <p>A map of user-defined tags that you would like to apply to the table bucket that you are creating. A tag is a key-value pair that you apply to your resources. Tags can help you organize and control access to resources. For more information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html">Tagging for cost allocation or attribute-based access control (ABAC)</a>.</p> <note> <p>You must have the <code>s3tables:TagResource</code> permission in addition to <code>s3tables:CreateTableBucket</code> permisson to create a table bucket with tags.</p> </note>
195
221
  * @public
@@ -286,6 +312,21 @@ export interface DeleteTableBucketPolicyRequest {
286
312
  */
287
313
  tableBucketARN: string | undefined;
288
314
  }
315
+ /**
316
+ * @public
317
+ */
318
+ export interface DeleteTableBucketReplicationRequest {
319
+ /**
320
+ * <p>The Amazon Resource Name (ARN) of the table bucket.</p>
321
+ * @public
322
+ */
323
+ tableBucketARN: string | undefined;
324
+ /**
325
+ * <p>A version token from a previous GetTableBucketReplication call. Use this token to ensure you're deleting the expected version of the configuration.</p>
326
+ * @public
327
+ */
328
+ versionToken?: string | undefined;
329
+ }
289
330
  /**
290
331
  * @public
291
332
  */
@@ -306,6 +347,21 @@ export interface DeleteTablePolicyRequest {
306
347
  */
307
348
  name: string | undefined;
308
349
  }
350
+ /**
351
+ * @public
352
+ */
353
+ export interface DeleteTableReplicationRequest {
354
+ /**
355
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
356
+ * @public
357
+ */
358
+ tableArn: string | undefined;
359
+ /**
360
+ * <p>A version token from a previous GetTableReplication call. Use this token to ensure you're deleting the expected version of the configuration.</p>
361
+ * @public
362
+ */
363
+ versionToken: string | undefined;
364
+ }
309
365
  /**
310
366
  * @public
311
367
  */
@@ -381,6 +437,28 @@ export interface GetTableRequest {
381
437
  */
382
438
  tableArn?: string | undefined;
383
439
  }
440
+ /**
441
+ * <p>Contains information about the source of a replicated table.</p>
442
+ * @public
443
+ */
444
+ export interface ReplicationInformation {
445
+ /**
446
+ * <p>The Amazon Resource Name (ARN) of the source table from which this table is replicated.</p>
447
+ * @public
448
+ */
449
+ sourceTableARN: string | undefined;
450
+ }
451
+ /**
452
+ * <p>Contains information about tables that are managed by S3 Tables, including replication information for replica tables.</p>
453
+ * @public
454
+ */
455
+ export interface ManagedTableInformation {
456
+ /**
457
+ * <p>If this table is a replica, contains information about the source table from which it is replicated.</p>
458
+ * @public
459
+ */
460
+ replicationInformation?: ReplicationInformation | undefined;
461
+ }
384
462
  /**
385
463
  * @public
386
464
  */
@@ -465,6 +543,11 @@ export interface GetTableResponse {
465
543
  * @public
466
544
  */
467
545
  tableBucketId?: string | undefined;
546
+ /**
547
+ * <p>If this table is managed by S3 Tables, contains additional information such as replication details.</p>
548
+ * @public
549
+ */
550
+ managedTableInformation?: ManagedTableInformation | undefined;
468
551
  }
469
552
  /**
470
553
  * @public
@@ -666,6 +749,89 @@ export interface GetTableBucketPolicyResponse {
666
749
  */
667
750
  resourcePolicy: string | undefined;
668
751
  }
752
+ /**
753
+ * @public
754
+ */
755
+ export interface GetTableBucketReplicationRequest {
756
+ /**
757
+ * <p>The Amazon Resource Name (ARN) of the table bucket.</p>
758
+ * @public
759
+ */
760
+ tableBucketARN: string | undefined;
761
+ }
762
+ /**
763
+ * <p>Specifies a destination table bucket for replication.</p>
764
+ * @public
765
+ */
766
+ export interface ReplicationDestination {
767
+ /**
768
+ * <p>The Amazon Resource Name (ARN) of the destination table bucket where tables will be replicated.</p>
769
+ * @public
770
+ */
771
+ destinationTableBucketARN: string | undefined;
772
+ }
773
+ /**
774
+ * <p>Defines a rule for replicating tables from a source table bucket to one or more destination table buckets.</p>
775
+ * @public
776
+ */
777
+ export interface TableBucketReplicationRule {
778
+ /**
779
+ * <p>An array of destination table buckets where tables should be replicated.</p>
780
+ * @public
781
+ */
782
+ destinations: ReplicationDestination[] | undefined;
783
+ }
784
+ /**
785
+ * <p>The replication configuration for a table bucket. This configuration defines how tables in the source bucket are replicated to destination table buckets, including the IAM role used for replication.</p>
786
+ * @public
787
+ */
788
+ export interface TableBucketReplicationConfiguration {
789
+ /**
790
+ * <p>The Amazon Resource Name (ARN) of the IAM role that S3 Tables assumes to replicate tables on your behalf.</p>
791
+ * @public
792
+ */
793
+ role: string | undefined;
794
+ /**
795
+ * <p>An array of replication rules that define which tables to replicate and where to replicate them.</p>
796
+ * @public
797
+ */
798
+ rules: TableBucketReplicationRule[] | undefined;
799
+ }
800
+ /**
801
+ * @public
802
+ */
803
+ export interface GetTableBucketReplicationResponse {
804
+ /**
805
+ * <p>A version token that represents the current state of the replication configuration. Use this token when updating the configuration to ensure consistency.</p>
806
+ * @public
807
+ */
808
+ versionToken: string | undefined;
809
+ /**
810
+ * <p>The replication configuration for the table bucket, including the IAM role and replication rules.</p>
811
+ * @public
812
+ */
813
+ configuration: TableBucketReplicationConfiguration | undefined;
814
+ }
815
+ /**
816
+ * @public
817
+ */
818
+ export interface GetTableBucketStorageClassRequest {
819
+ /**
820
+ * <p>The Amazon Resource Name (ARN) of the table bucket.</p>
821
+ * @public
822
+ */
823
+ tableBucketARN: string | undefined;
824
+ }
825
+ /**
826
+ * @public
827
+ */
828
+ export interface GetTableBucketStorageClassResponse {
829
+ /**
830
+ * <p>The storage class configuration for the table bucket.</p>
831
+ * @public
832
+ */
833
+ storageClassConfiguration: StorageClassConfiguration | undefined;
834
+ }
669
835
  /**
670
836
  * @public
671
837
  */
@@ -794,7 +960,7 @@ export declare namespace TableMaintenanceSettings {
794
960
  }
795
961
  }
796
962
  /**
797
- * <p>Contains the values that define a maintenance configuration for a table.</p>
963
+ * <p>The values that define a maintenance configuration for a table.</p>
798
964
  * @public
799
965
  */
800
966
  export interface TableMaintenanceConfigurationValue {
@@ -950,6 +1116,263 @@ export interface GetTablePolicyResponse {
950
1116
  */
951
1117
  resourcePolicy: string | undefined;
952
1118
  }
1119
+ /**
1120
+ * @public
1121
+ */
1122
+ export interface GetTableRecordExpirationConfigurationRequest {
1123
+ /**
1124
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
1125
+ * @public
1126
+ */
1127
+ tableArn: string | undefined;
1128
+ }
1129
+ /**
1130
+ * <p>The record expiration setting that specifies when records expire and are automatically removed from a table.</p>
1131
+ * @public
1132
+ */
1133
+ export interface TableRecordExpirationSettings {
1134
+ /**
1135
+ * <p>If you enable record expiration for a table, you can specify the number of days to retain your table records. For example, to retain your table records for one year, set this value to <code>365</code>.</p>
1136
+ * @public
1137
+ */
1138
+ days?: number | undefined;
1139
+ }
1140
+ /**
1141
+ * <p>The expiration configuration settings for records in a table, and the status of the configuration. If the status of the configuration is enabled, records expire and are automatically removed after the number of days specified in the record expiration settings for the table.</p>
1142
+ * @public
1143
+ */
1144
+ export interface TableRecordExpirationConfigurationValue {
1145
+ /**
1146
+ * <p>The status of the expiration settings for records in the table.</p>
1147
+ * @public
1148
+ */
1149
+ status?: TableRecordExpirationStatus | undefined;
1150
+ /**
1151
+ * <p>The expiration settings for records in the table.</p>
1152
+ * @public
1153
+ */
1154
+ settings?: TableRecordExpirationSettings | undefined;
1155
+ }
1156
+ /**
1157
+ * @public
1158
+ */
1159
+ export interface GetTableRecordExpirationConfigurationResponse {
1160
+ /**
1161
+ * <p>The record expiration configuration for the table, including the status and retention settings.</p>
1162
+ * @public
1163
+ */
1164
+ configuration: TableRecordExpirationConfigurationValue | undefined;
1165
+ }
1166
+ /**
1167
+ * @public
1168
+ */
1169
+ export interface GetTableRecordExpirationJobStatusRequest {
1170
+ /**
1171
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
1172
+ * @public
1173
+ */
1174
+ tableArn: string | undefined;
1175
+ }
1176
+ /**
1177
+ * <p>Provides metrics for the record expiration job that most recently ran for a table. The metrics provide insight into the amount of data that was removed when the job ran.</p>
1178
+ * @public
1179
+ */
1180
+ export interface TableRecordExpirationJobMetrics {
1181
+ /**
1182
+ * <p>The total number of data files that were removed when the job ran.</p>
1183
+ * @public
1184
+ */
1185
+ deletedDataFiles?: number | undefined;
1186
+ /**
1187
+ * <p>The total number of records that were removed when the job ran.</p>
1188
+ * @public
1189
+ */
1190
+ deletedRecords?: number | undefined;
1191
+ /**
1192
+ * <p>The total size (in bytes) of the data files that were removed when the job ran.</p>
1193
+ * @public
1194
+ */
1195
+ removedFilesSize?: number | undefined;
1196
+ }
1197
+ /**
1198
+ * @public
1199
+ */
1200
+ export interface GetTableRecordExpirationJobStatusResponse {
1201
+ /**
1202
+ * <p>The current status of the most recent expiration job.</p>
1203
+ * @public
1204
+ */
1205
+ status: TableRecordExpirationJobStatus | undefined;
1206
+ /**
1207
+ * <p>The timestamp when the expiration job was last executed.</p>
1208
+ * @public
1209
+ */
1210
+ lastRunTimestamp?: Date | undefined;
1211
+ /**
1212
+ * <p>If the job failed, this field contains an error message describing the failure reason.</p>
1213
+ * @public
1214
+ */
1215
+ failureMessage?: string | undefined;
1216
+ /**
1217
+ * <p>Metrics about the most recent expiration job execution, including the number of records and files deleted.</p>
1218
+ * @public
1219
+ */
1220
+ metrics?: TableRecordExpirationJobMetrics | undefined;
1221
+ }
1222
+ /**
1223
+ * @public
1224
+ */
1225
+ export interface GetTableReplicationRequest {
1226
+ /**
1227
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
1228
+ * @public
1229
+ */
1230
+ tableArn: string | undefined;
1231
+ }
1232
+ /**
1233
+ * <p>Defines a rule for replicating a table to one or more destination tables.</p>
1234
+ * @public
1235
+ */
1236
+ export interface TableReplicationRule {
1237
+ /**
1238
+ * <p>An array of destination table buckets where this table should be replicated.</p>
1239
+ * @public
1240
+ */
1241
+ destinations: ReplicationDestination[] | undefined;
1242
+ }
1243
+ /**
1244
+ * <p>The replication configuration for an individual table. This configuration defines how the table is replicated to destination tables.</p>
1245
+ * @public
1246
+ */
1247
+ export interface TableReplicationConfiguration {
1248
+ /**
1249
+ * <p>The Amazon Resource Name (ARN) of the IAM role that S3 Tables assumes to replicate the table on your behalf.</p>
1250
+ * @public
1251
+ */
1252
+ role: string | undefined;
1253
+ /**
1254
+ * <p>An array of replication rules that define where this table should be replicated.</p>
1255
+ * @public
1256
+ */
1257
+ rules: TableReplicationRule[] | undefined;
1258
+ }
1259
+ /**
1260
+ * @public
1261
+ */
1262
+ export interface GetTableReplicationResponse {
1263
+ /**
1264
+ * <p>A version token that represents the current state of the table's replication configuration. Use this token when updating the configuration to ensure consistency.</p>
1265
+ * @public
1266
+ */
1267
+ versionToken: string | undefined;
1268
+ /**
1269
+ * <p>The replication configuration for the table, including the IAM role and replication rules.</p>
1270
+ * @public
1271
+ */
1272
+ configuration: TableReplicationConfiguration | undefined;
1273
+ }
1274
+ /**
1275
+ * @public
1276
+ */
1277
+ export interface GetTableReplicationStatusRequest {
1278
+ /**
1279
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
1280
+ * @public
1281
+ */
1282
+ tableArn: string | undefined;
1283
+ }
1284
+ /**
1285
+ * <p>Contains information about the most recent successful replication update to a destination.</p>
1286
+ * @public
1287
+ */
1288
+ export interface LastSuccessfulReplicatedUpdate {
1289
+ /**
1290
+ * <p>The S3 location of the metadata that was successfully replicated.</p>
1291
+ * @public
1292
+ */
1293
+ metadataLocation: string | undefined;
1294
+ /**
1295
+ * <p>The timestamp when the replication update completed successfully.</p>
1296
+ * @public
1297
+ */
1298
+ timestamp: Date | undefined;
1299
+ }
1300
+ /**
1301
+ * <p>Contains status information for a replication destination, including the current replication state, last successful update, and any error messages.</p>
1302
+ * @public
1303
+ */
1304
+ export interface ReplicationDestinationStatusModel {
1305
+ /**
1306
+ * <p>The current status of replication to this destination.</p>
1307
+ * @public
1308
+ */
1309
+ replicationStatus: ReplicationStatus | undefined;
1310
+ /**
1311
+ * <p>The Amazon Resource Name (ARN) of the destination table bucket.</p>
1312
+ * @public
1313
+ */
1314
+ destinationTableBucketArn: string | undefined;
1315
+ /**
1316
+ * <p>The Amazon Resource Name (ARN) of the destination table.</p>
1317
+ * @public
1318
+ */
1319
+ destinationTableArn?: string | undefined;
1320
+ /**
1321
+ * <p>Information about the most recent successful replication update to this destination.</p>
1322
+ * @public
1323
+ */
1324
+ lastSuccessfulReplicatedUpdate?: LastSuccessfulReplicatedUpdate | undefined;
1325
+ /**
1326
+ * <p>If replication has failed, this field contains an error message describing the failure reason.</p>
1327
+ * @public
1328
+ */
1329
+ failureMessage?: string | undefined;
1330
+ }
1331
+ /**
1332
+ * @public
1333
+ */
1334
+ export interface GetTableReplicationStatusResponse {
1335
+ /**
1336
+ * <p>The Amazon Resource Name (ARN) of the source table being replicated.</p>
1337
+ * @public
1338
+ */
1339
+ sourceTableArn: string | undefined;
1340
+ /**
1341
+ * <p>An array of status information for each replication destination, including the current state, last successful update, and any error messages.</p>
1342
+ * @public
1343
+ */
1344
+ destinations: ReplicationDestinationStatusModel[] | undefined;
1345
+ }
1346
+ /**
1347
+ * @public
1348
+ */
1349
+ export interface GetTableStorageClassRequest {
1350
+ /**
1351
+ * <p>The Amazon Resource Name (ARN) of the table bucket that contains the table.</p>
1352
+ * @public
1353
+ */
1354
+ tableBucketARN: string | undefined;
1355
+ /**
1356
+ * <p>The namespace associated with the table.</p>
1357
+ * @public
1358
+ */
1359
+ namespace: string | undefined;
1360
+ /**
1361
+ * <p>The name of the table.</p>
1362
+ * @public
1363
+ */
1364
+ name: string | undefined;
1365
+ }
1366
+ /**
1367
+ * @public
1368
+ */
1369
+ export interface GetTableStorageClassResponse {
1370
+ /**
1371
+ * <p>The storage class configuration for the table.</p>
1372
+ * @public
1373
+ */
1374
+ storageClassConfiguration: StorageClassConfiguration | undefined;
1375
+ }
953
1376
  /**
954
1377
  * @public
955
1378
  */
@@ -1167,6 +1590,11 @@ export interface TableSummary {
1167
1590
  * @public
1168
1591
  */
1169
1592
  modifiedAt: Date | undefined;
1593
+ /**
1594
+ * <p>The Amazon Web Services service managing this table, if applicable. For example, a replicated table is managed by the S3 Tables replication service.</p>
1595
+ * @public
1596
+ */
1597
+ managedByService?: string | undefined;
1170
1598
  /**
1171
1599
  * <p>The unique identifier for the namespace that contains this table.</p>
1172
1600
  * @public
@@ -1273,6 +1701,56 @@ export interface PutTableBucketPolicyRequest {
1273
1701
  */
1274
1702
  resourcePolicy: string | undefined;
1275
1703
  }
1704
+ /**
1705
+ * @public
1706
+ */
1707
+ export interface PutTableBucketReplicationRequest {
1708
+ /**
1709
+ * <p>The Amazon Resource Name (ARN) of the source table bucket.</p>
1710
+ * @public
1711
+ */
1712
+ tableBucketARN: string | undefined;
1713
+ /**
1714
+ * <p>A version token from a previous GetTableBucketReplication call. Use this token to ensure you're updating the expected version of the configuration.</p>
1715
+ * @public
1716
+ */
1717
+ versionToken?: string | undefined;
1718
+ /**
1719
+ * <p>The replication configuration to apply, including the IAM role and replication rules.</p>
1720
+ * @public
1721
+ */
1722
+ configuration: TableBucketReplicationConfiguration | undefined;
1723
+ }
1724
+ /**
1725
+ * @public
1726
+ */
1727
+ export interface PutTableBucketReplicationResponse {
1728
+ /**
1729
+ * <p>A new version token representing the updated replication configuration.</p>
1730
+ * @public
1731
+ */
1732
+ versionToken: string | undefined;
1733
+ /**
1734
+ * <p>The status of the replication configuration operation.</p>
1735
+ * @public
1736
+ */
1737
+ status: string | undefined;
1738
+ }
1739
+ /**
1740
+ * @public
1741
+ */
1742
+ export interface PutTableBucketStorageClassRequest {
1743
+ /**
1744
+ * <p>The Amazon Resource Name (ARN) of the table bucket.</p>
1745
+ * @public
1746
+ */
1747
+ tableBucketARN: string | undefined;
1748
+ /**
1749
+ * <p>The storage class configuration to apply to the table bucket. This configuration will serve as the default for new tables created in this bucket.</p>
1750
+ * @public
1751
+ */
1752
+ storageClassConfiguration: StorageClassConfiguration | undefined;
1753
+ }
1276
1754
  /**
1277
1755
  * @public
1278
1756
  */
@@ -1328,6 +1806,56 @@ export interface PutTablePolicyRequest {
1328
1806
  */
1329
1807
  resourcePolicy: string | undefined;
1330
1808
  }
1809
+ /**
1810
+ * @public
1811
+ */
1812
+ export interface PutTableRecordExpirationConfigurationRequest {
1813
+ /**
1814
+ * <p>The Amazon Resource Name (ARN) of the table.</p>
1815
+ * @public
1816
+ */
1817
+ tableArn: string | undefined;
1818
+ /**
1819
+ * <p>The record expiration configuration to apply to the table, including the status (<code>enabled</code> or <code>disabled</code>) and retention period in days.</p>
1820
+ * @public
1821
+ */
1822
+ value: TableRecordExpirationConfigurationValue | undefined;
1823
+ }
1824
+ /**
1825
+ * @public
1826
+ */
1827
+ export interface PutTableReplicationRequest {
1828
+ /**
1829
+ * <p>The Amazon Resource Name (ARN) of the source table.</p>
1830
+ * @public
1831
+ */
1832
+ tableArn: string | undefined;
1833
+ /**
1834
+ * <p>A version token from a previous GetTableReplication call. Use this token to ensure you're updating the expected version of the configuration.</p>
1835
+ * @public
1836
+ */
1837
+ versionToken?: string | undefined;
1838
+ /**
1839
+ * <p>The replication configuration to apply to the table, including the IAM role and replication rules.</p>
1840
+ * @public
1841
+ */
1842
+ configuration: TableReplicationConfiguration | undefined;
1843
+ }
1844
+ /**
1845
+ * @public
1846
+ */
1847
+ export interface PutTableReplicationResponse {
1848
+ /**
1849
+ * <p>A new version token representing the updated replication configuration.</p>
1850
+ * @public
1851
+ */
1852
+ versionToken: string | undefined;
1853
+ /**
1854
+ * <p>The status of the replication configuration operation.</p>
1855
+ * @public
1856
+ */
1857
+ status: string | undefined;
1858
+ }
1331
1859
  /**
1332
1860
  * @public
1333
1861
  */