@aws-solutions-constructs/core
Version:
Core CDK Construct for patterns library
80 lines (79 loc) • 3.22 kB
TypeScript
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
* with the License. A copy of the License is located at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
* OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
import * as dynamodb from 'aws-cdk-lib/aws-dynamodb';
import { Construct } from 'constructs';
export interface BuildDynamoDBTableProps {
/**
* Optional user provided props to override the default props
*
* @default - Default props are used
*/
readonly dynamoTableProps?: dynamodb.TableProps;
/**
* Existing instance of dynamodb table object.
* Providing both this and `dynamoTableProps` will cause an error.
*
* @default - None
*/
readonly existingTableObj?: dynamodb.Table;
/**
* Existing instance of dynamodb interface.
* Providing both this and `dynamoTableProps` will cause an error.
*
* @default - None
*/
readonly existingTableInterface?: dynamodb.ITable;
}
export interface BuildDynamoDBTableWithStreamProps {
/**
* Optional user provided props to override the default props
*
* @default - Default props are used
*/
readonly dynamoTableProps?: dynamodb.TableProps;
/**
* Existing instance of dynamodb table object.
* Providing both this and `dynamoTableProps` will cause an error.
*
* @default - None
*/
readonly existingTableInterface?: dynamodb.ITable;
}
export interface BuildDynamoDBTableResponse {
readonly tableInterface: dynamodb.ITable;
readonly tableObject?: dynamodb.Table;
}
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function buildDynamoDBTable(scope: Construct, props: BuildDynamoDBTableProps): BuildDynamoDBTableResponse;
export interface BuildDynamoDBTableWithStreamResponse {
readonly tableInterface: dynamodb.ITable;
readonly tableObject?: dynamodb.Table;
}
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function buildDynamoDBTableWithStream(scope: Construct, props: BuildDynamoDBTableWithStreamProps): BuildDynamoDBTableWithStreamResponse;
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function getPartitionKeyNameFromTable(table: dynamodb.Table): string;
export interface DynamoDBProps {
readonly dynamoTableProps?: dynamodb.TableProps;
readonly existingTableObj?: dynamodb.Table;
readonly existingTableInterface?: dynamodb.ITable;
readonly pointInTimeRecoverySpecification?: dynamodb.PointInTimeRecoverySpecification;
readonly pointInTimeRecovery?: boolean;
}
export declare function CheckDynamoDBProps(propsObject: DynamoDBProps | any): void;