import type { DatabaseType } from "./QueryRunner";
import type { Connection, TediousType } from 'tedious';
import { PromiseBasedQueryRunner } from "./PromiseBasedQueryRunner";
/**
 * @deprecated Use mssql instead with MssqlPoolQueryRunner or MssqlPoolQueryRunner
 */
export declare class TediousQueryRunner extends PromiseBasedQueryRunner {
    readonly database: DatabaseType;
    readonly connection: Connection;
    private transactionLevel;
    constructor(connection: Connection);
    useDatabase(database: DatabaseType): void;
    getNativeRunner(): Connection;
    getCurrentNativeTransaction(): undefined;
    execute<RESULT>(fn: (connection: unknown, transaction?: unknown) => Promise<RESULT>): Promise<RESULT>;
    protected executeQueryReturning(query: string, params: any[]): Promise<any[]>;
    protected executeMutation(query: string, params: any[]): Promise<number>;
    executeBeginTransaction(): Promise<void>;
    executeCommit(): Promise<void>;
    executeRollback(): Promise<void>;
    isTransactionActive(): boolean;
    addParam(params: any[], value: any): string;
    protected predefinedTypes: {
        [type: string]: TediousType | undefined;
    };
    protected getType(params: any[], index: number): TediousType;
    protected inferType(value: any): TediousType;
}
