import { Construct } from 'constructs';
import { Stack, Tags } from 'aws-cdk-lib';
import { TableBucket, UnreferencedFileRemovalStatus, TableBucketEncryption, RequestMetricsStatus, StorageClass, Namespace, Table, Status, OpenTableFormat, IcebergTransform, SortDirection, NullOrder } from '@aws-cdk/aws-s3tables-alpha';
import * as iam from 'aws-cdk-lib/aws-iam';
import * as kms from 'aws-cdk-lib/aws-kms';

class Fixture extends Stack {
  constructor(scope: Construct, id: string) {
    super(scope, id);
    const tableBucket = new TableBucket(scope, 'ExampleTableBucket', {
      tableBucketName: 'example-bucket-1'
    });
    const namespace = new Namespace(scope, 'ExampleNamespace', {
      tableBucket: tableBucket,
      namespaceName: 'example_namespace_1',
    });
    const table = new Table(scope, 'ExampleTable', {
      tableName: 'example_table',
      namespace,
      openTableFormat: OpenTableFormat.ICEBERG,
    });

    const stack = this;
    /// here
  }
}
