import { TableDescription } from '../../keyword/table/table-description'; import { ForeignKeyConstraint } from '../create-table'; export declare type AlterTableSql = AlterTableAddColumnSql | AlterTableDropColumnSql | AlterTableDropConstraintSql | AlterTableAddPrimaryKeySql | AlterTableAddForeignKeySql | AlterTableAddForeignKeySql | AlterTableRenameSql; export interface AlterTableRenameSql { alterTable: TableDescription; renameTo: string; } export declare const isAlterTableRenameSql: (val: any) => val is AlterTableRenameSql; export interface AlterTableDropColumnSql { alterTable: TableDescription; drop: { column: string; }; } export declare const isAlterTableDropColumnSql: (val: any) => val is AlterTableDropColumnSql; export interface AlterTableDropConstraintSql { alterTable: TableDescription; drop: { constraint: string; }; } export declare const isAlterTableDropConstraintSql: (val: any) => val is AlterTableDropConstraintSql; export interface AlterTableAddColumnSql { alterTable: TableDescription; add: { column: string; type: string; size?: number; }; } export declare const isAlterTableAddColumnSql: (val: any) => val is AlterTableAddColumnSql; export interface AlterTableAddForeignKeySql { alterTable: TableDescription; add: { foreignKey: T; constraint?: string; references: { table: TableDescription; primaryKeys: T; }; onDelete?: ForeignKeyConstraint; onUpdate?: ForeignKeyConstraint; }; } export declare const isAlterTableAddForeignKeySql: (val: any) => val is AlterTableAddForeignKeySql; export interface AlterTableAddPrimaryKeySql { alterTable: TableDescription; add: { primaryKey: string | string[]; }; } export declare const isAlterTableAddPrimaryKeySql: (val: any) => val is AlterTableAddPrimaryKeySql;