@nolanrigo/cloudformation
Version:
TypeScript-based imperative way to define AWS CloudFormation templates
82 lines (81 loc) • 3.16 kB
TypeScript
import { ResourceBase, ResourceTag as Inner_ResourceTag } from "../../resource";
import { Value, List } from "../../data-types";
export declare class SSESpecification {
KMSMasterKeyId?: Value<string>;
SSEEnabled: Value<boolean>;
SSEType?: Value<string>;
constructor(properties: SSESpecification);
}
export declare class LocalSecondaryIndex {
IndexName: Value<string>;
KeySchema: List<KeySchema>;
Projection: Projection;
constructor(properties: LocalSecondaryIndex);
}
export declare class GlobalSecondaryIndex {
IndexName: Value<string>;
KeySchema: List<KeySchema>;
Projection: Projection;
ProvisionedThroughput?: ProvisionedThroughput;
constructor(properties: GlobalSecondaryIndex);
}
export declare class TimeToLiveSpecification {
AttributeName: Value<string>;
Enabled: Value<boolean>;
constructor(properties: TimeToLiveSpecification);
}
export declare class AttributeDefinition {
AttributeName: Value<string>;
AttributeType: Value<string>;
constructor(properties: AttributeDefinition);
}
export declare class PointInTimeRecoverySpecification {
PointInTimeRecoveryEnabled?: Value<boolean>;
constructor(properties: PointInTimeRecoverySpecification);
}
export declare class Projection {
NonKeyAttributes?: List<Value<string>>;
ProjectionType?: Value<string>;
constructor(properties: Projection);
}
export declare class ProvisionedThroughput {
ReadCapacityUnits: Value<number>;
WriteCapacityUnits: Value<number>;
constructor(properties: ProvisionedThroughput);
}
export declare class KeySchema {
AttributeName: Value<string>;
KeyType: Value<string>;
constructor(properties: KeySchema);
}
export declare class StreamSpecification {
StreamViewType: Value<string>;
constructor(properties: StreamSpecification);
}
export interface TableProperties {
KeySchema: List<KeySchema>;
StreamSpecification?: StreamSpecification;
AttributeDefinitions?: List<AttributeDefinition>;
PointInTimeRecoverySpecification?: PointInTimeRecoverySpecification;
TimeToLiveSpecification?: TimeToLiveSpecification;
GlobalSecondaryIndexes?: List<GlobalSecondaryIndex>;
LocalSecondaryIndexes?: List<LocalSecondaryIndex>;
Tags?: List<Inner_ResourceTag>;
TableName?: Value<string>;
ProvisionedThroughput?: ProvisionedThroughput;
BillingMode?: Value<string>;
SSESpecification?: SSESpecification;
}
export default class Inner_Table extends ResourceBase<TableProperties> {
static SSESpecification: typeof SSESpecification;
static LocalSecondaryIndex: typeof LocalSecondaryIndex;
static GlobalSecondaryIndex: typeof GlobalSecondaryIndex;
static TimeToLiveSpecification: typeof TimeToLiveSpecification;
static AttributeDefinition: typeof AttributeDefinition;
static PointInTimeRecoverySpecification: typeof PointInTimeRecoverySpecification;
static Projection: typeof Projection;
static ProvisionedThroughput: typeof ProvisionedThroughput;
static KeySchema: typeof KeySchema;
static StreamSpecification: typeof StreamSpecification;
constructor(properties: TableProperties);
}