import { CdcPropagateTags, CdcStatus, ClientSideTimestampsStatus, EncryptionType, KeyspaceStatus, PointInTimeRecoveryStatus, Rs, SortOrder, TableStatus, ThroughputMode, TimeToLiveStatus, TypeStatus, ViewType, WarmThroughputStatus, } from "./enums"; export interface TargetTrackingScalingPolicyConfiguration { disableScaleIn?: boolean | undefined; scaleInCooldown?: number | undefined; scaleOutCooldown?: number | undefined; targetValue: number | undefined; } export interface AutoScalingPolicy { targetTrackingScalingPolicyConfiguration?: TargetTrackingScalingPolicyConfiguration | undefined; } export interface AutoScalingSettings { autoScalingDisabled?: boolean | undefined; minimumUnits?: number | undefined; maximumUnits?: number | undefined; scalingPolicy?: AutoScalingPolicy | undefined; } export interface AutoScalingSpecification { writeCapacityAutoScaling?: AutoScalingSettings | undefined; readCapacityAutoScaling?: AutoScalingSettings | undefined; } export interface CapacitySpecification { throughputMode: ThroughputMode | undefined; readCapacityUnits?: number | undefined; writeCapacityUnits?: number | undefined; } export interface CapacitySpecificationSummary { throughputMode: ThroughputMode | undefined; readCapacityUnits?: number | undefined; writeCapacityUnits?: number | undefined; lastUpdateToPayPerRequestTimestamp?: Date | undefined; } export interface Tag { key: string | undefined; value: string | undefined; } export interface CdcSpecification { status: CdcStatus | undefined; viewType?: ViewType | undefined; tags?: Tag[] | undefined; propagateTags?: CdcPropagateTags | undefined; } export interface CdcSpecificationSummary { status: CdcStatus | undefined; viewType?: ViewType | undefined; } export interface ClientSideTimestamps { status: ClientSideTimestampsStatus | undefined; } export interface ClusteringKey { name: string | undefined; orderBy: SortOrder | undefined; } export interface ColumnDefinition { name: string | undefined; type: string | undefined; } export interface Comment { message: string | undefined; } export interface ReplicationSpecification { replicationStrategy: Rs | undefined; regionList?: string[] | undefined; } export interface CreateKeyspaceRequest { keyspaceName: string | undefined; tags?: Tag[] | undefined; replicationSpecification?: ReplicationSpecification | undefined; } export interface CreateKeyspaceResponse { resourceArn: string | undefined; } export interface EncryptionSpecification { type: EncryptionType | undefined; kmsKeyIdentifier?: string | undefined; } export interface PointInTimeRecovery { status: PointInTimeRecoveryStatus | undefined; } export interface ReplicaSpecification { region: string | undefined; readCapacityUnits?: number | undefined; readCapacityAutoScaling?: AutoScalingSettings | undefined; } export interface PartitionKey { name: string | undefined; } export interface StaticColumn { name: string | undefined; } export interface SchemaDefinition { allColumns: ColumnDefinition[] | undefined; partitionKeys: PartitionKey[] | undefined; clusteringKeys?: ClusteringKey[] | undefined; staticColumns?: StaticColumn[] | undefined; } export interface TimeToLive { status: TimeToLiveStatus | undefined; } export interface WarmThroughputSpecification { readUnitsPerSecond?: number | undefined; writeUnitsPerSecond?: number | undefined; } export interface CreateTableRequest { keyspaceName: string | undefined; tableName: string | undefined; schemaDefinition: SchemaDefinition | undefined; comment?: Comment | undefined; capacitySpecification?: CapacitySpecification | undefined; encryptionSpecification?: EncryptionSpecification | undefined; pointInTimeRecovery?: PointInTimeRecovery | undefined; ttl?: TimeToLive | undefined; defaultTimeToLive?: number | undefined; tags?: Tag[] | undefined; clientSideTimestamps?: ClientSideTimestamps | undefined; autoScalingSpecification?: AutoScalingSpecification | undefined; replicaSpecifications?: ReplicaSpecification[] | undefined; cdcSpecification?: CdcSpecification | undefined; warmThroughputSpecification?: WarmThroughputSpecification | undefined; } export interface CreateTableResponse { resourceArn: string | undefined; } export interface FieldDefinition { name: string | undefined; type: string | undefined; } export interface CreateTypeRequest { keyspaceName: string | undefined; typeName: string | undefined; fieldDefinitions: FieldDefinition[] | undefined; } export interface CreateTypeResponse { keyspaceArn: string | undefined; typeName: string | undefined; } export interface DeleteKeyspaceRequest { keyspaceName: string | undefined; } export interface DeleteKeyspaceResponse {} export interface DeleteTableRequest { keyspaceName: string | undefined; tableName: string | undefined; } export interface DeleteTableResponse {} export interface DeleteTypeRequest { keyspaceName: string | undefined; typeName: string | undefined; } export interface DeleteTypeResponse { keyspaceArn: string | undefined; typeName: string | undefined; } export interface GetKeyspaceRequest { keyspaceName: string | undefined; } export interface ReplicationGroupStatus { region: string | undefined; keyspaceStatus: KeyspaceStatus | undefined; tablesReplicationProgress?: string | undefined; } export interface GetKeyspaceResponse { keyspaceName: string | undefined; resourceArn: string | undefined; replicationStrategy: Rs | undefined; replicationRegions?: string[] | undefined; replicationGroupStatuses?: ReplicationGroupStatus[] | undefined; } export interface GetTableRequest { keyspaceName: string | undefined; tableName: string | undefined; } export interface PointInTimeRecoverySummary { status: PointInTimeRecoveryStatus | undefined; earliestRestorableTimestamp?: Date | undefined; } export interface WarmThroughputSpecificationSummary { readUnitsPerSecond: number | undefined; writeUnitsPerSecond: number | undefined; status: WarmThroughputStatus | undefined; } export interface ReplicaSpecificationSummary { region?: string | undefined; status?: TableStatus | undefined; capacitySpecification?: CapacitySpecificationSummary | undefined; warmThroughputSpecification?: WarmThroughputSpecificationSummary | undefined; } export interface GetTableResponse { keyspaceName: string | undefined; tableName: string | undefined; resourceArn: string | undefined; creationTimestamp?: Date | undefined; status?: TableStatus | undefined; schemaDefinition?: SchemaDefinition | undefined; capacitySpecification?: CapacitySpecificationSummary | undefined; encryptionSpecification?: EncryptionSpecification | undefined; pointInTimeRecovery?: PointInTimeRecoverySummary | undefined; ttl?: TimeToLive | undefined; defaultTimeToLive?: number | undefined; comment?: Comment | undefined; clientSideTimestamps?: ClientSideTimestamps | undefined; replicaSpecifications?: ReplicaSpecificationSummary[] | undefined; latestStreamArn?: string | undefined; cdcSpecification?: CdcSpecificationSummary | undefined; warmThroughputSpecification?: WarmThroughputSpecificationSummary | undefined; } export interface GetTableAutoScalingSettingsRequest { keyspaceName: string | undefined; tableName: string | undefined; } export interface ReplicaAutoScalingSpecification { region?: string | undefined; autoScalingSpecification?: AutoScalingSpecification | undefined; } export interface GetTableAutoScalingSettingsResponse { keyspaceName: string | undefined; tableName: string | undefined; resourceArn: string | undefined; autoScalingSpecification?: AutoScalingSpecification | undefined; replicaSpecifications?: ReplicaAutoScalingSpecification[] | undefined; } export interface GetTypeRequest { keyspaceName: string | undefined; typeName: string | undefined; } export interface GetTypeResponse { keyspaceName: string | undefined; typeName: string | undefined; fieldDefinitions?: FieldDefinition[] | undefined; lastModifiedTimestamp?: Date | undefined; status?: TypeStatus | undefined; directReferringTables?: string[] | undefined; directParentTypes?: string[] | undefined; maxNestingDepth?: number | undefined; keyspaceArn: string | undefined; } export interface ListKeyspacesRequest { nextToken?: string | undefined; maxResults?: number | undefined; } export interface KeyspaceSummary { keyspaceName: string | undefined; resourceArn: string | undefined; replicationStrategy: Rs | undefined; replicationRegions?: string[] | undefined; } export interface ListKeyspacesResponse { nextToken?: string | undefined; keyspaces: KeyspaceSummary[] | undefined; } export interface ListTablesRequest { nextToken?: string | undefined; maxResults?: number | undefined; keyspaceName: string | undefined; } export interface TableSummary { keyspaceName: string | undefined; tableName: string | undefined; resourceArn: string | undefined; } export interface ListTablesResponse { nextToken?: string | undefined; tables?: TableSummary[] | undefined; } export interface ListTagsForResourceRequest { resourceArn: string | undefined; nextToken?: string | undefined; maxResults?: number | undefined; } export interface ListTagsForResourceResponse { nextToken?: string | undefined; tags?: Tag[] | undefined; } export interface ListTypesRequest { nextToken?: string | undefined; maxResults?: number | undefined; keyspaceName: string | undefined; } export interface ListTypesResponse { nextToken?: string | undefined; types: string[] | undefined; } export interface RestoreTableRequest { sourceKeyspaceName: string | undefined; sourceTableName: string | undefined; targetKeyspaceName: string | undefined; targetTableName: string | undefined; restoreTimestamp?: Date | undefined; capacitySpecificationOverride?: CapacitySpecification | undefined; encryptionSpecificationOverride?: EncryptionSpecification | undefined; pointInTimeRecoveryOverride?: PointInTimeRecovery | undefined; tagsOverride?: Tag[] | undefined; autoScalingSpecification?: AutoScalingSpecification | undefined; replicaSpecifications?: ReplicaSpecification[] | undefined; } export interface RestoreTableResponse { restoredTableARN: string | undefined; } export interface TagResourceRequest { resourceArn: string | undefined; tags: Tag[] | undefined; } export interface TagResourceResponse {} export interface UntagResourceRequest { resourceArn: string | undefined; tags: Tag[] | undefined; } export interface UntagResourceResponse {} export interface UpdateKeyspaceRequest { keyspaceName: string | undefined; replicationSpecification: ReplicationSpecification | undefined; clientSideTimestamps?: ClientSideTimestamps | undefined; } export interface UpdateKeyspaceResponse { resourceArn: string | undefined; } export interface UpdateTableRequest { keyspaceName: string | undefined; tableName: string | undefined; addColumns?: ColumnDefinition[] | undefined; capacitySpecification?: CapacitySpecification | undefined; encryptionSpecification?: EncryptionSpecification | undefined; pointInTimeRecovery?: PointInTimeRecovery | undefined; ttl?: TimeToLive | undefined; defaultTimeToLive?: number | undefined; clientSideTimestamps?: ClientSideTimestamps | undefined; autoScalingSpecification?: AutoScalingSpecification | undefined; replicaSpecifications?: ReplicaSpecification[] | undefined; cdcSpecification?: CdcSpecification | undefined; warmThroughputSpecification?: WarmThroughputSpecification | undefined; } export interface UpdateTableResponse { resourceArn: string | undefined; }