///
import { QueryRunner } from "../../query-runner/QueryRunner";
import { TableColumn } from "../../schema-builder/table/TableColumn";
import { Table } from "../../schema-builder/table/Table";
import { TableForeignKey } from "../../schema-builder/table/TableForeignKey";
import { TableIndex } from "../../schema-builder/table/TableIndex";
import { SqlServerDriver } from "./SqlServerDriver";
import { ReadStream } from "../../platform/PlatformTools";
import { MssqlParameter } from "./MssqlParameter";
import { TableUnique } from "../../schema-builder/table/TableUnique";
import { TableCheck } from "../../schema-builder/table/TableCheck";
import { BaseQueryRunner } from "../../query-runner/BaseQueryRunner";
export declare class SqlServerQueryRunner extends BaseQueryRunner implements QueryRunner {
driver: SqlServerDriver;
/**
* @see https://github.com/patriksimek/node-mssql/issues/491
*/
protected queryResponsibilityChain: Promise[];
constructor(driver: SqlServerDriver, mode?: "master" | "slave");
connect(): Promise;
release(): Promise;
startTransaction(): Promise;
commitTransaction(): Promise;
rollbackTransaction(): Promise;
query(query: string, parameters?: any[]): Promise;
stream(query: string, parameters?: any[], onEnd?: Function, onError?: Function): Promise;
getDatabases(): Promise;
getSchemas(database?: string): Promise;
hasDatabase(database: string): Promise;
hasSchema(schema: string): Promise;
hasTable(tableOrName: Table | string): Promise;
hasColumn(tableOrName: Table | string, columnName: string): Promise;
createDatabase(database: string, ifNotExist?: boolean): Promise;
dropDatabase(database: string, ifExist?: boolean): Promise;
createSchema(schemaPath: string, ifNotExist?: boolean): Promise;
dropSchema(schemaPath: string, ifExist?: boolean): Promise;
createTable(table: Table, ifNotExist?: boolean, createForeignKeys?: boolean, createIndices?: boolean): Promise;
dropTable(tableOrName: Table | string, ifExist?: boolean, dropForeignKeys?: boolean, dropIndices?: boolean): Promise;
renameTable(oldTableOrName: Table | string, newTableName: string): Promise;
addColumn(tableOrName: Table | string, column: TableColumn): Promise;
addColumns(tableOrName: Table | string, columns: TableColumn[]): Promise;
renameColumn(tableOrName: Table | string, oldTableColumnOrName: TableColumn | string, newTableColumnOrName: TableColumn | string): Promise;
changeColumn(tableOrName: Table | string, oldTableColumnOrName: TableColumn | string, newColumn: TableColumn): Promise;
changeColumns(tableOrName: Table | string, changedColumns: {
newColumn: TableColumn;
oldColumn: TableColumn;
}[]): Promise;
dropColumn(tableOrName: Table | string, columnOrName: TableColumn | string): Promise;
dropColumns(tableOrName: Table | string, columns: TableColumn[]): Promise;
createPrimaryKey(tableOrName: Table | string, columnNames: string[]): Promise;
updatePrimaryKeys(tableOrName: Table | string, columns: TableColumn[]): Promise;
dropPrimaryKey(tableOrName: Table | string): Promise;
createUniqueConstraint(tableOrName: Table | string, uniqueConstraint: TableUnique): Promise;
createUniqueConstraints(tableOrName: Table | string, uniqueConstraints: TableUnique[]): Promise;
dropUniqueConstraint(tableOrName: Table | string, uniqueOrName: TableUnique | string): Promise;
dropUniqueConstraints(tableOrName: Table | string, uniqueConstraints: TableUnique[]): Promise;
createCheckConstraint(tableOrName: Table | string, checkConstraint: TableCheck): Promise;
createCheckConstraints(tableOrName: Table | string, checkConstraints: TableCheck[]): Promise;
dropCheckConstraint(tableOrName: Table | string, checkOrName: TableCheck | string): Promise;
dropCheckConstraints(tableOrName: Table | string, checkConstraints: TableCheck[]): Promise;
createForeignKey(tableOrName: Table | string, foreignKey: TableForeignKey): Promise;
createForeignKeys(tableOrName: Table | string, foreignKeys: TableForeignKey[]): Promise;
dropForeignKey(tableOrName: Table | string, foreignKeyOrName: TableForeignKey | string): Promise;
dropForeignKeys(tableOrName: Table | string, foreignKeys: TableForeignKey[]): Promise;
createIndex(tableOrName: Table | string, index: TableIndex): Promise;
createIndices(tableOrName: Table | string, indices: TableIndex[]): Promise;
dropIndex(tableOrName: Table | string, indexOrName: TableIndex | string): Promise;
dropIndices(tableOrName: Table | string, indices: TableIndex[]): Promise;
clearTable(tablePath: string): Promise;
clearDatabase(database?: string): Promise;
protected getCurrentDatabase(): Promise;
protected getCurrentSchema(): Promise;
protected loadTables(tableNames: string[]): Promise;
protected createTableSql(table: Table, createForeignKeys?: boolean): string;
protected dropTableSql(tableOrName: Table | string, ifExist?: boolean): string;
protected createIndexSql(table: Table, index: TableIndex): string;
protected dropIndexSql(table: Table, indexOrName: TableIndex | string): string;
protected createPrimaryKeySql(table: Table, columnNames: string[]): string;
protected dropPrimaryKeySql(table: Table): string;
protected createUniqueConstraintSql(table: Table, uniqueConstraint: TableUnique): string;
protected dropUniqueConstraintSql(table: Table, uniqueOrName: TableUnique | string): string;
protected createCheckConstraintSql(table: Table, checkConstraint: TableCheck): string;
protected dropCheckConstraintSql(table: Table, checkOrName: TableCheck | string): string;
protected createForeignKeySql(table: Table, foreignKey: TableForeignKey): string;
protected dropForeignKeySql(table: Table, foreignKeyOrName: TableForeignKey | string): string;
protected escapeTableName(tableOrName: Table | string, disableEscape?: boolean): string;
protected parseTableName(target: Table | string): {
database: string | undefined;
schema: string;
tableName: string;
};
protected buildForeignKeyName(fkName: string, schemaName: string | undefined, dbName: string | undefined): string;
protected removeParenthesisFromDefault(defaultValue: any): any;
protected buildCreateColumnSql(table: Table, column: TableColumn, skipIdentity: boolean, createDefault: boolean): string;
protected mssqlParameterToNativeParameter(parameter: MssqlParameter): any;
}