iam-floyd
Version:
AWS IAM policy statement generator with fluent interface
958 lines (957 loc) • 37 kB
TypeScript
import { AccessLevelList } from '../../shared/access-level';
import { PolicyStatement, Operator } from '../../shared';
/**
* Statement provider for service [dynamodb](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondynamodb.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
export declare class Dynamodb extends PolicyStatement {
servicePrefix: string;
/**
* Statement provider for service [dynamodb](https://docs.aws.amazon.com/service-authorization/latest/reference/list_amazondynamodb.html).
*
* @param sid [SID](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_policies_elements_sid.html) of the statement
*/
constructor(sid?: string);
/**
* Grants permission to return the attributes of one or more items from one or more tables
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifSelect()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchGetItem.html
*/
toBatchGetItem(): this;
/**
* Grants permission to put or delete multiple items in one or more tables
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_BatchWriteItem.html
*/
toBatchWriteItem(): this;
/**
* Grants permission to the ConditionCheckItem operation checks the existence of a set of attributes for the item with the given primary key
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ConditionCheck.html
*/
toConditionCheckItem(): this;
/**
* Grants permission to create a backup for an existing table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateBackup.html
*/
toCreateBackup(): this;
/**
* Grants permission to create a global table from an existing table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateGlobalTable.html
*/
toCreateGlobalTable(): this;
/**
* Grants permission to the CreateTable operation adds a new table to your account
*
* Access Level: Write
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_CreateTable.html
*/
toCreateTable(): this;
/**
* Grants permission to add a new replica table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2gt_IAM.html
*/
toCreateTableReplica(): this;
/**
* Grants permission to delete an existing backup of a table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteBackup.html
*/
toDeleteBackup(): this;
/**
* Grants permission to deletes a single item in a table by primary key
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html
*/
toDeleteItem(): this;
/**
* Grants permission to delete the resource-based policy attached to the resource
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteResourcePolicy.html
*/
toDeleteResourcePolicy(): this;
/**
* Grants permission to the DeleteTable operation which deletes a table and all of its items
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteTable.html
*/
toDeleteTable(): this;
/**
* Grants permission to delete a replica table and all of its items
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2gt_IAM.html
*/
toDeleteTableReplica(): this;
/**
* Grants permission to describe an existing backup of a table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeBackup.html
*/
toDescribeBackup(): this;
/**
* Grants permission to check the status of the backup restore settings on the specified table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeContinuousBackups.html
*/
toDescribeContinuousBackups(): this;
/**
* Grants permission to describe the contributor insights status and related details for a given table or global secondary index
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeContributorInsights.html
*/
toDescribeContributorInsights(): this;
/**
* Grants permission to return the regional endpoint information
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeEndpoints.html
*/
toDescribeEndpoints(): this;
/**
* Grants permission to describe an existing Export of a table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeExport.html
*/
toDescribeExport(): this;
/**
* Grants permission to return information about the specified global table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeGlobalTable.html
*/
toDescribeGlobalTable(): this;
/**
* Grants permission to return settings information about the specified global table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeGlobalTableSettings.html
*/
toDescribeGlobalTableSettings(): this;
/**
* Grants permission to describe an existing import
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeImport.html
*/
toDescribeImport(): this;
/**
* Grants permission to grant permission to describe the status of Kinesis streaming and related details for a given table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeKinesisStreamingDestination.html
*/
toDescribeKinesisStreamingDestination(): this;
/**
* Grants permission to return the current provisioned-capacity limits for your AWS account in a region, both for the region as a whole and for any one DynamoDB table that you create there
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeLimits.html
*/
toDescribeLimits(): this;
/**
* Grants permission to describe one or more of the Reserved Capacity purchased
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/iam-policy-prevent-purchase-reserved-capacity.html
*/
toDescribeReservedCapacity(): this;
/**
* Grants permission to describe Reserved Capacity offerings that are available for purchase
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/iam-policy-prevent-purchase-reserved-capacity.html
*/
toDescribeReservedCapacityOfferings(): this;
/**
* Grants permission to return information about a stream, including the current status of the stream, its Amazon Resource Name (ARN), the composition of its shards, and its corresponding DynamoDB table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_DescribeStream.html
*/
toDescribeStream(): this;
/**
* Grants permission to return information about the table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTable.html
*/
toDescribeTable(): this;
/**
* Grants permission to describe the auto scaling settings across all replicas of the global table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTableReplicaAutoScaling.html
*/
toDescribeTableReplicaAutoScaling(): this;
/**
* Grants permission to give a description of the Time to Live (TTL) status on the specified table
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DescribeTimeToLive.html
*/
toDescribeTimeToLive(): this;
/**
* Grants permission to grant permission to stop replication from the DynamoDB table to the Kinesis data stream
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DisableKinesisStreamingDestination.html
*/
toDisableKinesisStreamingDestination(): this;
/**
* Grants permission to grant permission to start table data replication to the specified Kinesis data stream at a timestamp chosen during the enable workflow
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_EnableKinesisStreamingDestination.html
*/
toEnableKinesisStreamingDestination(): this;
/**
* Grants permission to initiate an Export of a DynamoDB table to S3
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExportTableToPointInTime.html
*/
toExportTableToPointInTime(): this;
/**
* Grants permission to view the status of Attribute Based Access Control for the account
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/abac-enable-ddb.html
*/
toGetAbacStatus(): this;
/**
* Grants permission to the GetItem operation that returns a set of attributes for the item with the given primary key
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifSelect()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetItem.html
*/
toGetItem(): this;
/**
* Grants permission to retrieve the stream records from a given shard
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_GetRecords.html
*/
toGetRecords(): this;
/**
* Grants permission to view a resource-based policy for a resource
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_GetResourcePolicy.html
*/
toGetResourcePolicy(): this;
/**
* Grants permission to return a shard iterator
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_GetShardIterator.html
*/
toGetShardIterator(): this;
/**
* Grants permission to initiate an import from S3 to a DynamoDB table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ImportTable.html
*/
toImportTable(): this;
/**
* Grants permission to list backups associated with the account and endpoint
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListBackups.html
*/
toListBackups(): this;
/**
* Grants permission to list the ContributorInsightsSummary for all tables and global secondary indexes associated with the current account and endpoint
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListContributorInsights.html
*/
toListContributorInsights(): this;
/**
* Grants permission to list exports associated with the account and endpoint
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListExports.html
*/
toListExports(): this;
/**
* Grants permission to list all global tables that have a replica in the specified region
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListGlobalTables.html
*/
toListGlobalTables(): this;
/**
* Grants permission to list imports associated with the account and endpoint
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListImports.html
*/
toListImports(): this;
/**
* Grants permission to return an array of stream ARNs associated with the current account and endpoint
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_ListStreams.html
*/
toListStreams(): this;
/**
* Grants permission to return an array of table names associated with the current account and endpoint
*
* Access Level: List
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListTables.html
*/
toListTables(): this;
/**
* Grants permission to list all tags on an Amazon DynamoDB resource
*
* Access Level: Read
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ListTagsOfResource.html
*/
toListTagsOfResource(): this;
/**
* Grants permission to delete a single item in a table by primary key
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html
*/
toPartiQLDelete(): this;
/**
* Grants permission to create a new item, if an item with same primary key does not exist in the table
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html
*/
toPartiQLInsert(): this;
/**
* Grants permission to read a set of attributes for items from a table or index
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifFullTableScan()
* - .ifLeadingKeys()
* - .ifSelect()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html
*/
toPartiQLSelect(): this;
/**
* Grants permission to edit an existing item's attributes
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_ExecuteStatement.html
*/
toPartiQLUpdate(): this;
/**
* Grants permission to purchases reserved capacity for use with your account
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/iam-policy-prevent-purchase-reserved-capacity.html
*/
toPurchaseReservedCapacityOfferings(): this;
/**
* Grants permission to create a new item, or replace an old item with a new item
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutItem.html
*/
toPutItem(): this;
/**
* Grants permission to attach a resource-based policy to the resource
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_PutResourcePolicy.html
*/
toPutResourcePolicy(): this;
/**
* Grants permission to use the primary key of a table or a secondary index to directly access items from that table or index
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
* - .ifSelect()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Query.html
*/
toQuery(): this;
/**
* Grants permission to create a new table from recovery point on AWS Backup
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/UsageNotesAWS.html
*/
toRestoreTableFromAwsBackup(): this;
/**
* Grants permission to create a new table from an existing backup
*
* Access Level: Write
*
* Dependent actions:
* - dynamodb:BatchWriteItem
* - dynamodb:DeleteItem
* - dynamodb:GetItem
* - dynamodb:PutItem
* - dynamodb:Query
* - dynamodb:Scan
* - dynamodb:UpdateItem
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_RestoreTableFromBackup.html
*/
toRestoreTableFromBackup(): this;
/**
* Grants permission to restore a table to a point in time
*
* Access Level: Write
*
* Dependent actions:
* - dynamodb:BatchWriteItem
* - dynamodb:DeleteItem
* - dynamodb:GetItem
* - dynamodb:PutItem
* - dynamodb:Query
* - dynamodb:Scan
* - dynamodb:UpdateItem
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_RestoreTableToPointInTime.html
*/
toRestoreTableToPointInTime(): this;
/**
* Grants permission to return one or more items and item attributes by accessing every item in a table or a secondary index
*
* Access Level: Read
*
* Possible conditions:
* - .ifAttributes()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
* - .ifSelect()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_Scan.html
*/
toScan(): this;
/**
* Grants permission to create a backup on AWS Backup with advanced features enabled
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/UsageNotesAWS.html
*/
toStartAwsBackupJob(): this;
/**
* Grants permission to associate a set of tags with an Amazon DynamoDB resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsRequestTag()
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TagResource.html
*/
toTagResource(): this;
/**
* Grants permission to remove the association of tags from an Amazon DynamoDB resource
*
* Access Level: Tagging
*
* Possible conditions:
* - .ifAwsTagKeys()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UntagResource.html
*/
toUntagResource(): this;
/**
* Grants permission to update the status of Attribute Based Access Control for the account
*
* Access Level: Permissions management
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/abac-enable-ddb.html
*/
toUpdateAbacStatus(): this;
/**
* Grants permission to enable or disable continuous backups
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateContinuousBackups.html
*/
toUpdateContinuousBackups(): this;
/**
* Grants permission to update the status for contributor insights for a specific table or global secondary index
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateContributorInsights.html
*/
toUpdateContributorInsights(): this;
/**
* Grants permission to add or remove replicas in the specified global table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateGlobalTable.html
*/
toUpdateGlobalTable(): this;
/**
* Grants permission to update settings of the specified global table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateGlobalTableSettings.html
*/
toUpdateGlobalTableSettings(): this;
/**
* Grants permission to update version of the specified global table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/V2globaltables_upgrade.html
*/
toUpdateGlobalTableVersion(): this;
/**
* Grants permission to edit an existing item's attributes, or adds a new item to the table if it does not already exist
*
* Access Level: Write
*
* Possible conditions:
* - .ifAttributes()
* - .ifEnclosingOperation()
* - .ifLeadingKeys()
* - .ifReturnConsumedCapacity()
* - .ifReturnValues()
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateItem.html
*/
toUpdateItem(): this;
/**
* Grants permission to update data replication configurations for the specified Kinesis data stream
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateKinesisStreamingDestination.html
*/
toUpdateKinesisStreamingDestination(): this;
/**
* Grants permission to modify the provisioned throughput settings, global secondary indexes, or DynamoDB Streams settings for a given table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTable.html
*/
toUpdateTable(): this;
/**
* Grants permission to update auto scaling settings on your replica table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTableReplicaAutoScaling.html
*/
toUpdateTableReplicaAutoScaling(): this;
/**
* Grants permission to enable or disable TTL for the specified table
*
* Access Level: Write
*
* https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_UpdateTimeToLive.html
*/
toUpdateTimeToLive(): this;
protected accessLevelList: AccessLevelList;
/**
* Adds a resource of type index to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.CoreComponents.html#HowItWorks.CoreComponents.PrimaryKey
*
* @param tableName - Identifier for the tableName.
* @param indexName - Identifier for the indexName.
* @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()
*/
onIndex(tableName: string, indexName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type stream to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.CoreComponents.html#HowItWorks.CoreComponents.Streams
*
* @param tableName - Identifier for the tableName.
* @param streamLabel - Identifier for the streamLabel.
* @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.
*/
onStream(tableName: string, streamLabel: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type table to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.CoreComponents.html#HowItWorks.CoreComponents.TablesItemsAttributes
*
* @param tableName - Identifier for the tableName.
* @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()
*/
onTable(tableName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type backup to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/backuprestore_HowItWorks.html
*
* @param tableName - Identifier for the tableName.
* @param backupName - Identifier for the backupName.
* @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.
*/
onBackup(tableName: string, backupName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type export to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/S3DataExport.HowItWorks.html
*
* @param tableName - Identifier for the tableName.
* @param exportName - Identifier for the exportName.
* @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.
*/
onExport(tableName: string, exportName: string, account?: string, region?: string, partition?: string): this;
/**
* Adds a resource of type global-table to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/globaltables_HowItWorks.html
*
* @param globalTableName - Identifier for the globalTableName.
* @param account - Account of the resource; defaults to `*`, unless using the CDK, where the default is the current Stack's account.
* @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.
*/
onGlobalTable(globalTableName: string, account?: string, partition?: string): this;
/**
* Adds a resource of type import to the statement
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/S3DataImport.HowItWorks.html
*
* @param tableName - Identifier for the tableName.
* @param importName - Identifier for the importName.
* @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.
*/
onImport(tableName: string, importName: 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()
* - .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 resource types:
* - index
* - 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()
* - .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 attribute (field or column) names of the table
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toBatchGetItem()
* - .toBatchWriteItem()
* - .toConditionCheckItem()
* - .toDeleteItem()
* - .toGetItem()
* - .toPartiQLDelete()
* - .toPartiQLInsert()
* - .toPartiQLSelect()
* - .toPartiQLUpdate()
* - .toPutItem()
* - .toQuery()
* - .toScan()
* - .toUpdateItem()
*
* @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`
*/
ifAttributes(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by blocking Transactions APIs calls and allow the non-Transaction APIs calls and vice-versa
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toDeleteItem()
* - .toGetItem()
* - .toPartiQLDelete()
* - .toPartiQLInsert()
* - .toPartiQLSelect()
* - .toPartiQLUpdate()
* - .toPutItem()
* - .toUpdateItem()
*
* @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`
*/
ifEnclosingOperation(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by blocking full table scan
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/ql-iam.html
*
* Applies to actions:
* - .toPartiQLSelect()
*
* @param value `true` or `false`. **Default:** `true`
*/
ifFullTableScan(value?: boolean): this;
/**
* Filters access by the partition key of the table
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toBatchGetItem()
* - .toBatchWriteItem()
* - .toConditionCheckItem()
* - .toDeleteItem()
* - .toGetItem()
* - .toPartiQLDelete()
* - .toPartiQLInsert()
* - .toPartiQLSelect()
* - .toPartiQLUpdate()
* - .toPutItem()
* - .toQuery()
* - .toUpdateItem()
*
* @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`
*/
ifLeadingKeys(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the ReturnConsumedCapacity parameter of a request. Contains either "TOTAL" or "NONE"
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toBatchGetItem()
* - .toBatchWriteItem()
* - .toConditionCheckItem()
* - .toDeleteItem()
* - .toGetItem()
* - .toPutItem()
* - .toQuery()
* - .toScan()
* - .toUpdateItem()
*
* @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`
*/
ifReturnConsumedCapacity(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the ReturnValues parameter of request. Contains one of the following: "ALL_OLD", "UPDATED_OLD","ALL_NEW","UPDATED_NEW", or "NONE"
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toConditionCheckItem()
* - .toDeleteItem()
* - .toPartiQLDelete()
* - .toPartiQLUpdate()
* - .toPutItem()
* - .toQuery()
* - .toScan()
* - .toUpdateItem()
*
* @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`
*/
ifReturnValues(value: string | string[], operator?: Operator | string): this;
/**
* Filters access by the Select parameter of a Query or Scan request
*
* https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/specifying-conditions.html#FGAC_DDB.ConditionKeys
*
* Applies to actions:
* - .toBatchGetItem()
* - .toGetItem()
* - .toPartiQLSelect()
* - .toQuery()
* - .toScan()
*
* @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`
*/
ifSelect(value: string | string[], operator?: Operator | string): this;
}