import { Connection, FieldInfo, Pool } from 'mysql'; import Migration from "./Migration"; export interface QueryResult { readonly results: any[]; readonly fields: FieldInfo[]; readonly other?: any; foundRows?: number; } export declare function query(queryString: string, values?: any, connection?: Connection): Promise; export default class MysqlConnectionManager { private static currentPool?; private static databaseReady; private static readonly migrations; static registerMigration(migration: (version: number) => Migration): void; static prepare(): Promise; static get pool(): Pool; private static createPool; static endPool(): Promise; static query(queryString: string, values?: any, connection?: Connection): Promise; static wrapTransaction(transaction: (connection: Connection) => Promise): Promise; private static rejectAndRollback; private static handleMigrations; }