cdk-iam-floyd
Version:
AWS IAM policy statement generator with fluent interface for AWS CDK
815 lines (814 loc) • 28 kB
TypeScript
import { AccessLevelList } from '../../shared/access-level';
import { PolicyStatement, Operator } from '../../shared';
import { aws_iam as iam } from "aws-cdk-lib";
/**
* Statement provider for service [s3tables](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3tables.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
export declare class S3tables extends PolicyStatement {
servicePrefix: string;
/**
* Grants permission to create a namespace
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_CreateNamespace.html
*/
toCreateNamespace(): this;
/**
* Grants permission to create a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifSSEAlgorithm()
* - .ifKMSKeyArn()
* - .ifTableBucketTag()
* - .ifAwsRequestTag()
* - .ifAwsResourceTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_CreateTable.html
*/
toCreateTable(): this;
/**
* Grants permission to create a table bucket
*
* Access Level: Write
*
* Possible conditions:
* - .ifSSEAlgorithm()
* - .ifKMSKeyArn()
* - .ifTableBucketTag()
* - .ifAwsRequestTag()
* - .ifAwsResourceTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_CreateTableBucket.html
*/
toCreateTableBucket(): this;
/**
* Grants permission to delete a namespace
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteNamespace.html
*/
toDeleteNamespace(): this;
/**
* Grants permission to delete a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTable.html
*/
toDeleteTable(): this;
/**
* Grants permission to delete a table bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableBucket.html
*/
toDeleteTableBucket(): this;
/**
* Grants permission to delete encryption configuration on a table bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableBucketEncryption.html
*/
toDeleteTableBucketEncryption(): this;
/**
* Grants permission to delete a metrics configuration on a table bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableBucketMetricsConfiguration.html
*/
toDeleteTableBucketMetricsConfiguration(): this;
/**
* Grants permission to delete a policy on a table bucket
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableBucketPolicy.html
*/
toDeleteTableBucketPolicy(): this;
/**
* Grants permission to delete table bucket replication configuration on a bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableBucketReplication.html
*/
toDeleteTableBucketReplication(): this;
/**
* Grants permission to delete a policy on a table
*
* Access Level: Permissions management
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTablePolicy.html
*/
toDeleteTablePolicy(): this;
/**
* Grants permission to delete table replication configuration on a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_DeleteTableReplication.html
*/
toDeleteTableReplication(): this;
/**
* Grants permission to get a namespace
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetNamespace.html
*/
toGetNamespace(): this;
/**
* Grants permission to retrieve a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTable.html
*/
toGetTable(): this;
/**
* Grants permission to retrieve a table bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucket.html
*/
toGetTableBucket(): this;
/**
* Grants permission to retrieve encryption configuration on a table bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketEncryption.html
*/
toGetTableBucketEncryption(): this;
/**
* Grants permission to retrieve a maintenance configuration on a table bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketMaintenanceConfiguration.html
*/
toGetTableBucketMaintenanceConfiguration(): this;
/**
* Grants permission to retrieve a metrics configuration on a bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketMetricsConfiguration.html
*/
toGetTableBucketMetricsConfiguration(): this;
/**
* Grants permission to retrieve a policy on a table bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketPolicy.html
*/
toGetTableBucketPolicy(): this;
/**
* Grants permission to retrieve a table bucket replication configuration on a bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketReplication.html
*/
toGetTableBucketReplication(): this;
/**
* Grants permission to retrieve the storage class configuration for a table bucket
*
* Access Level: Read
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableBucketStorageClass.html
*/
toGetTableBucketStorageClass(): this;
/**
* Grants permission to read metadata and data objects from a table storage endpoint using S3 APIs
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.html#s3-tables-actions
*/
toGetTableData(): this;
/**
* Grants permission to retrieve encryption configuration on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableEncryption.html
*/
toGetTableEncryption(): this;
/**
* Grants permission to retrieve a maintenance configuration on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableMaintenanceConfiguration.html
*/
toGetTableMaintenanceConfiguration(): this;
/**
* Grants permission to retrieve the status of maintenance jobs on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableMaintenanceJobStatus.html
*/
toGetTableMaintenanceJobStatus(): this;
/**
* Grants permission to retrieve the metadata location of a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableMetadataLocation.html
*/
toGetTableMetadataLocation(): this;
/**
* Grants permission to retrieve a policy on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTablePolicy.html
*/
toGetTablePolicy(): this;
/**
* Grants permission to retrieve a table maintenance configuration on a system table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableRecordExpirationConfiguration.html
*/
toGetTableRecordExpirationConfiguration(): this;
/**
* Grants permission to retrieve the status of table record expiration jobs on a system table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableRecordExpirationJobStatus.html
*/
toGetTableRecordExpirationJobStatus(): this;
/**
* Grants permission to retrieve a table replication configuration on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableReplication.html
*/
toGetTableReplication(): this;
/**
* Grants permission to retrieve a table replication status on a table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableReplicationStatus.html
*/
toGetTableReplicationStatus(): this;
/**
* Grants permission to retrieve the storage class configuration for a specific table
*
* Access Level: Read
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_GetTableStorageClass.html
*/
toGetTableStorageClass(): this;
/**
* Grants permission to list namespaces
*
* Access Level: List
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_ListNamespaces.html
*/
toListNamespaces(): this;
/**
* Grants permission to list table buckets
*
* Access Level: List
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_ListTableBuckets.html
*/
toListTableBuckets(): this;
/**
* Grants permission to list tables
*
* Access Level: List
*
* Possible conditions:
* - .ifNamespace()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_ListTables.html
*/
toListTables(): this;
/**
* Grants permission to list the tags for an S3 Tables resource
*
* Access Level: List
*
* Possible conditions:
* - .ifAwsResourceTag()
* - .ifTableBucketTag()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-tables-tagging.html
*/
toListTagsForResource(): this;
/**
* Grants permission to put or overwrite encryption configuration on a table bucket
*
* Access Level: Write
*
* Possible conditions:
* - .ifKMSKeyArn()
* - .ifSSEAlgorithm()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketEncryption.html
*/
toPutTableBucketEncryption(): this;
/**
* Grants permission to put a maintenance configuration on a table bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketMaintenanceConfiguration.html
*/
toPutTableBucketMaintenanceConfiguration(): this;
/**
* Grants permission to create or overwrite a metrics configuration on a table bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketMetricsConfiguration.html
*/
toPutTableBucketMetricsConfiguration(): this;
/**
* Grants permission to create or overwrite a policy on a table bucket
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketPolicy.html
*/
toPutTableBucketPolicy(): this;
/**
* Grants permission to put table bucket replication configuration on a bucket
*
* Access Level: Write
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketReplication.html
*/
toPutTableBucketReplication(): this;
/**
* Grants permission to set or update the storage class configuration for a table bucket
*
* Access Level: Write
*
* Possible conditions:
* - .ifStorageClass()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableBucketStorageClass.html
*/
toPutTableBucketStorageClass(): this;
/**
* Grants permission to write metadata and data objects to a table storage endpoint using S3 APIs
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.html#s3-tables-actions
*/
toPutTableData(): this;
/**
* Grants permission to put encryption configuration on a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifSSEAlgorithm()
* - .ifKMSKeyArn()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.html#s3-tables-actions
*/
toPutTableEncryption(): this;
/**
* Grants permission to put a maintenance configuration on a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableMaintenanceConfiguration.html
*/
toPutTableMaintenanceConfiguration(): this;
/**
* Grants permission to create or overwrite a policy on a table
*
* Access Level: Permissions management
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTablePolicy.html
*/
toPutTablePolicy(): this;
/**
* Grants permission to put a table record expiration configuration on a system table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableRecordExpirationConfiguration.html
*/
toPutTableRecordExpirationConfiguration(): this;
/**
* Grants permission to put table replication configuration on a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableReplication.html
*/
toPutTableReplication(): this;
/**
* Grants permission to set or update the storage class configuration for a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
* - .ifStorageClass()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_PutTableStorageClass.html
*/
toPutTableStorageClass(): this;
/**
* Grants permission to rename a table or move a table across namespaces
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_RenameTable.html
*/
toRenameTable(): this;
/**
* Grants permission to tag a S3 Tables resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
* - .ifAwsRequestTag()
* - .ifAwsResourceTag()
* - .ifTableBucketTag()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-tables-tagging.html
*/
toTagResource(): this;
/**
* Grants permission to untag a S3 Tables resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
* - .ifAwsResourceTag()
* - .ifTableBucketTag()
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-tables-tagging.html
*/
toUntagResource(): this;
/**
* Grants permission to update the metadata location of a table
*
* Access Level: Write
*
* Possible conditions:
* - .ifNamespace()
* - .ifTableName()
*
* https://docs.aws.amazon.com/AmazonS3/latest/API/API_s3Buckets_UpdateTableMetadataLocation.html
*/
toUpdateTableMetadataLocation(): this;
protected accessLevelList: AccessLevelList;
/**
* Adds a resource of type TableBucket to the statement
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-buckets.html
*
* @param tableBucketName - Identifier for the tableBucketName.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*
* Possible conditions:
* - .ifAwsResourceTag()
* - .ifTableBucketTag()
*/
onTableBucket(tableBucketName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type Table to the statement
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-tables.html
*
* @param tableBucketName - Identifier for the tableBucketName.
* @param tableID - Identifier for the tableID.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @param region - Region of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's region.
* @param partition - Partition of the AWS account [aws, aws-cn, aws-us-gov]; defaults to `aws`, unless using the CDK, where the default is the current Stack's partition.
*
* Possible conditions:
* - .ifAwsResourceTag()
* - .ifTableBucketTag()
* - .ifNamespace()
* - .ifTableName()
*/
onTable(tableBucketName: string, tableID: string, account?: string, region?: string, partition?: string): this;
/**
* Filters access by the tags that are passed in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-requesttag
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toTagResource()
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsRequestTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the tags associated with the resource
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-resourcetag
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toListTagsForResource()
* - .toTagResource()
* - .toUntagResource()
*
* Applies to resource types:
* - TableBucket
* - Table
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsResourceTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the tag keys that are passed in the request
*
* https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_condition-keys.html#condition-keys-tagkeys
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toTagResource()
* - .toUntagResource()
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifAwsTagKeys(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the AWS KMS key ARN for the key used to encrypt a table
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toPutTableBucketEncryption()
* - .toPutTableEncryption()
*
* @param value The value(s) to check
* @param operator Works with [arn operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_ARN). **Default:** `ArnLike`
*/
ifKMSKeyArn(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the server-side encryption algorithm used to encrypt a table
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toPutTableBucketEncryption()
* - .toPutTableEncryption()
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifSSEAlgorithm(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the storage class that can be set on tables under a table bucket
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toPutTableBucketStorageClass()
* - .toPutTableStorageClass()
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifStorageClass(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the tags associated with the table bucket
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toCreateTable()
* - .toCreateTableBucket()
* - .toListTagsForResource()
* - .toTagResource()
* - .toUntagResource()
*
* Applies to resource types:
* - TableBucket
* - Table
*
* @param tagKey The tag key to check
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifTableBucketTag(tagKey: string, value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the namespaces created in the table bucket
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toCreateTable()
* - .toDeleteNamespace()
* - .toDeleteTable()
* - .toDeleteTablePolicy()
* - .toDeleteTableReplication()
* - .toGetNamespace()
* - .toGetTable()
* - .toGetTableData()
* - .toGetTableEncryption()
* - .toGetTableMaintenanceConfiguration()
* - .toGetTableMaintenanceJobStatus()
* - .toGetTableMetadataLocation()
* - .toGetTablePolicy()
* - .toGetTableRecordExpirationConfiguration()
* - .toGetTableRecordExpirationJobStatus()
* - .toGetTableReplication()
* - .toGetTableReplicationStatus()
* - .toGetTableStorageClass()
* - .toListTables()
* - .toPutTableData()
* - .toPutTableEncryption()
* - .toPutTableMaintenanceConfiguration()
* - .toPutTablePolicy()
* - .toPutTableRecordExpirationConfiguration()
* - .toPutTableReplication()
* - .toPutTableStorageClass()
* - .toRenameTable()
* - .toUpdateTableMetadataLocation()
*
* Applies to resource types:
* - Table
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifNamespace(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the name of the tables in the table bucket
*
* https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-tables-setting-up.htmls3-tables-setting-up.html
*
* Applies to actions:
* - .toDeleteTable()
* - .toDeleteTablePolicy()
* - .toDeleteTableReplication()
* - .toGetTable()
* - .toGetTableData()
* - .toGetTableEncryption()
* - .toGetTableMaintenanceConfiguration()
* - .toGetTableMaintenanceJobStatus()
* - .toGetTableMetadataLocation()
* - .toGetTablePolicy()
* - .toGetTableRecordExpirationConfiguration()
* - .toGetTableRecordExpirationJobStatus()
* - .toGetTableReplication()
* - .toGetTableReplicationStatus()
* - .toGetTableStorageClass()
* - .toPutTableData()
* - .toPutTableMaintenanceConfiguration()
* - .toPutTablePolicy()
* - .toPutTableRecordExpirationConfiguration()
* - .toPutTableReplication()
* - .toPutTableStorageClass()
* - .toRenameTable()
* - .toUpdateTableMetadataLocation()
*
* Applies to resource types:
* - Table
*
* @param value The value(s) to check
* @param operator Works with [string operators](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_condition_operators.html#Conditions_String). **Default:** `StringLike`
*/
ifTableName(value: string | string[], operator?: Operator | string): this;
/**
* Statement provider for service [s3tables](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazons3tables.html).
*
*/
constructor(props?: iam.PolicyStatementProps);
}