typed-aws
Version:
Helps you write AWS CloudFormation in TypeScript
289 lines (288 loc) • 11.7 kB
TypeScript
import { CfnResource, Resolvable } from '../../base';
export declare type Table_Type = 'AWS::DynamoDB::Table';
export declare const Table_Type = "AWS::DynamoDB::Table";
/**
* Resource Type definition for AWS::DynamoDB::Table {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html}
*/
export default function Table(props: Table_Properties): CfnResource<Table_Properties>;
/**
* Resource Type definition for AWS::DynamoDB::Table {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html}
*/
export declare type Table_Properties = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-ssespecification}
*/
SSESpecification?: SSESpecification;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-kinesisstreamspecification}
*/
KinesisStreamSpecification?: KinesisStreamSpecification;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-contributorinsightsspecification-enabled}
*/
ContributorInsightsSpecification?: ContributorInsightsSpecification;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-streamspecification}
*/
StreamSpecification?: StreamSpecification;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-pointintimerecoveryspecification}
*/
PointInTimeRecoverySpecification?: PointInTimeRecoverySpecification;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-provisionedthroughput}
*/
ProvisionedThroughput?: ProvisionedThroughput;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tablename}
*/
TableName?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-attributedef}
*/
AttributeDefinitions?: AttributeDefinition[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-billingmode}
*/
BillingMode?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-gsi}
*/
GlobalSecondaryIndexes?: GlobalSecondaryIndex[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-keyschema}
*/
KeySchema: KeySchema[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-lsi}
*/
LocalSecondaryIndexes?: LocalSecondaryIndex[];
Id?: Resolvable<string>;
Arn?: Resolvable<string>;
StreamArn?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-tags}
*/
Tags?: Tag[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-timetolivespecification}
*/
TimeToLiveSpecification?: TimeToLiveSpecification;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html}
*/
export declare type LocalSecondaryIndex = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-indexname}
*/
IndexName: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-projection}
*/
Projection: Projection;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-lsi.html#cfn-dynamodb-lsi-keyschema}
*/
KeySchema: KeySchema[];
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html}
*/
export declare type SSESpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-kmsmasterkeyid}
*/
KMSMasterKeyId?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-sseenabled}
*/
SSEEnabled: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-ssespecification.html#cfn-dynamodb-table-ssespecification-ssetype}
*/
SSEType?: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html}
*/
export declare type KinesisStreamSpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-kinesisstreamspecification.html#cfn-dynamodb-kinesisstreamspecification-streamarn}
*/
StreamArn: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html}
*/
export declare type StreamSpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-streamspecification.html#cfn-dynamodb-streamspecification-streamviewtype}
*/
StreamViewType: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-contributorinsightsspecification.html}
*/
export declare type ContributorInsightsSpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-contributorinsightsspecification.html#cfn-dynamodb-contributorinsightsspecification-enabled}
*/
Enabled: Resolvable<boolean>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html}
*/
export declare type AttributeDefinition = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename-attributetype}
*/
AttributeType: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-attributedef.html#cfn-dynamodb-attributedef-attributename}
*/
AttributeName: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html}
*/
export declare type Projection = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-projtype}
*/
ProjectionType?: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-projectionobject.html#cfn-dynamodb-projectionobj-nonkeyatt}
*/
NonKeyAttributes?: Resolvable<string>[];
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html}
*/
export declare type PointInTimeRecoverySpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-pointintimerecoveryspecification.html#cfn-dynamodb-table-pointintimerecoveryspecification-pointintimerecoveryenabled}
*/
PointInTimeRecoveryEnabled?: Resolvable<boolean>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html}
*/
export declare type ProvisionedThroughput = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-writecapacityunits}
*/
WriteCapacityUnits: Resolvable<number>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-provisionedthroughput.html#cfn-dynamodb-provisionedthroughput-readcapacityunits}
*/
ReadCapacityUnits: Resolvable<number>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html}
*/
export declare type GlobalSecondaryIndex = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-indexname}
*/
IndexName: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-projection}
*/
Projection: Projection;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-provisionedthroughput}
*/
ProvisionedThroughput?: ProvisionedThroughput;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-gsi-keyschema}
*/
KeySchema: KeySchema[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-gsi.html#cfn-dynamodb-contributorinsightsspecification-enabled}
*/
ContributorInsightsSpecification?: ContributorInsightsSpecification;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html}
*/
export declare type KeySchema = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-keytype}
*/
KeyType: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html#aws-properties-dynamodb-keyschema-attributename}
*/
AttributeName: Resolvable<string>;
};
export declare type Tag = {
Value: Resolvable<string>;
Key: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html}
*/
export declare type TimeToLiveSpecification = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-enabled}
*/
Enabled: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-timetolivespecification.html#cfn-dynamodb-timetolivespecification-attributename}
*/
AttributeName: Resolvable<string>;
};