import type { MetadataBearer as __MetadataBearer } from "@smithy/types"; import type { CreateTableRequest, CreateTableResponse } from "../models/models_0"; /** * @public */ export type { __MetadataBearer }; /** * @public * * The input for {@link CreateTableCommand}. */ export interface CreateTableCommandInput extends CreateTableRequest { } /** * @public * * The output of {@link CreateTableCommand}. */ export interface CreateTableCommandOutput extends CreateTableResponse, __MetadataBearer { } declare const CreateTableCommand_base: { new (input: CreateTableCommandInput): import("@smithy/core/client").CommandImpl; new (input: CreateTableCommandInput): import("@smithy/core/client").CommandImpl; getEndpointParameterInstructions(): import("@smithy/types").EndpointParameterInstructions; }; /** *

The CreateTable operation adds a new table to the specified keyspace. Within a keyspace, table names must be unique.

CreateTable is an asynchronous operation. When the request is received, the status of the table is set to CREATING. You can monitor the creation status of the new table by using the GetTable operation, which returns the current status of the table. You can start using a table when the status is ACTIVE.

For more information, see Create a table in the Amazon Keyspaces Developer Guide.

* @example * Use a bare-bones client and the command you need to make an API call. * ```javascript * import { KeyspacesClient, CreateTableCommand } from "@aws-sdk/client-keyspaces"; // ES Modules import * // const { KeyspacesClient, CreateTableCommand } = require("@aws-sdk/client-keyspaces"); // CommonJS import * // import type { KeyspacesClientConfig } from "@aws-sdk/client-keyspaces"; * const config = {}; // type is KeyspacesClientConfig * const client = new KeyspacesClient(config); * const input = { // CreateTableRequest * keyspaceName: "STRING_VALUE", // required * tableName: "STRING_VALUE", // required * schemaDefinition: { // SchemaDefinition * allColumns: [ // ColumnDefinitionList // required * { // ColumnDefinition * name: "STRING_VALUE", // required * type: "STRING_VALUE", // required * }, * ], * partitionKeys: [ // PartitionKeyList // required * { // PartitionKey * name: "STRING_VALUE", // required * }, * ], * clusteringKeys: [ // ClusteringKeyList * { // ClusteringKey * name: "STRING_VALUE", // required * orderBy: "STRING_VALUE", // required * }, * ], * staticColumns: [ // StaticColumnList * { // StaticColumn * name: "STRING_VALUE", // required * }, * ], * }, * comment: { // Comment * message: "STRING_VALUE", // required * }, * capacitySpecification: { // CapacitySpecification * throughputMode: "STRING_VALUE", // required * readCapacityUnits: Number("long"), * writeCapacityUnits: Number("long"), * }, * encryptionSpecification: { // EncryptionSpecification * type: "STRING_VALUE", // required * kmsKeyIdentifier: "STRING_VALUE", * }, * pointInTimeRecovery: { // PointInTimeRecovery * status: "STRING_VALUE", // required * }, * ttl: { // TimeToLive * status: "STRING_VALUE", // required * }, * defaultTimeToLive: Number("int"), * tags: [ // TagList * { // Tag * key: "STRING_VALUE", // required * value: "STRING_VALUE", // required * }, * ], * clientSideTimestamps: { // ClientSideTimestamps * status: "STRING_VALUE", // required * }, * autoScalingSpecification: { // AutoScalingSpecification * writeCapacityAutoScaling: { // AutoScalingSettings * autoScalingDisabled: true || false, * minimumUnits: Number("long"), * maximumUnits: Number("long"), * scalingPolicy: { // AutoScalingPolicy * targetTrackingScalingPolicyConfiguration: { // TargetTrackingScalingPolicyConfiguration * disableScaleIn: true || false, * scaleInCooldown: Number("int"), * scaleOutCooldown: Number("int"), * targetValue: Number("double"), // required * }, * }, * }, * readCapacityAutoScaling: { * autoScalingDisabled: true || false, * minimumUnits: Number("long"), * maximumUnits: Number("long"), * scalingPolicy: { * targetTrackingScalingPolicyConfiguration: { * disableScaleIn: true || false, * scaleInCooldown: Number("int"), * scaleOutCooldown: Number("int"), * targetValue: Number("double"), // required * }, * }, * }, * }, * replicaSpecifications: [ // ReplicaSpecificationList * { // ReplicaSpecification * region: "STRING_VALUE", // required * readCapacityUnits: Number("long"), * readCapacityAutoScaling: { * autoScalingDisabled: true || false, * minimumUnits: Number("long"), * maximumUnits: Number("long"), * scalingPolicy: { * targetTrackingScalingPolicyConfiguration: { * disableScaleIn: true || false, * scaleInCooldown: Number("int"), * scaleOutCooldown: Number("int"), * targetValue: Number("double"), // required * }, * }, * }, * }, * ], * cdcSpecification: { // CdcSpecification * status: "STRING_VALUE", // required * viewType: "STRING_VALUE", * tags: [ * { * key: "STRING_VALUE", // required * value: "STRING_VALUE", // required * }, * ], * propagateTags: "STRING_VALUE", * }, * warmThroughputSpecification: { // WarmThroughputSpecification * readUnitsPerSecond: Number("long"), * writeUnitsPerSecond: Number("long"), * }, * }; * const command = new CreateTableCommand(input); * const response = await client.send(command); * // { // CreateTableResponse * // resourceArn: "STRING_VALUE", // required * // }; * * ``` * * @param CreateTableCommandInput - {@link CreateTableCommandInput} * @returns {@link CreateTableCommandOutput} * @see {@link CreateTableCommandInput} for command's `input` shape. * @see {@link CreateTableCommandOutput} for command's `response` shape. * @see {@link KeyspacesClientResolvedConfig | config} for KeyspacesClient's `config` shape. * * @throws {@link AccessDeniedException} (client fault) *

You don't have sufficient access permissions to perform this action.

* * @throws {@link ConflictException} (client fault) *

Amazon Keyspaces couldn't complete the requested action. This error may occur if you try to perform an action and the same or a different action is already in progress, or if you try to create a resource that already exists.

* * @throws {@link InternalServerException} (server fault) *

Amazon Keyspaces was unable to fully process this request because of an internal server error.

* * @throws {@link ResourceNotFoundException} (client fault) *

The operation tried to access a keyspace, table, or type that doesn't exist. The resource might not be specified correctly, or its status might not be ACTIVE.

* * @throws {@link ServiceQuotaExceededException} (client fault) *

The operation exceeded the service quota for this resource. For more information on service quotas, see Quotas in the Amazon Keyspaces Developer Guide.

* * @throws {@link ValidationException} (client fault) *

The operation failed due to an invalid or malformed request.

* * @throws {@link KeyspacesServiceException} *

Base exception class for all service exceptions from Keyspaces service.

* * * @public */ export declare class CreateTableCommand extends CreateTableCommand_base { /** @internal type navigation helper, not in runtime. */ protected static __types: { api: { input: CreateTableRequest; output: CreateTableResponse; }; sdk: { input: CreateTableCommandInput; output: CreateTableCommandOutput; }; }; }