import { loadOptionsEnv } from "../config";
import type { TOptions, TPoolConnected, TPoolCusterConnected } from "../types";
export declare class PoolConnection {
    private OPTIONS;
    private POOL;
    private CLUSTER;
    get instance(): TPoolConnected | null;
    /**
     *
     * @Init a options connection pool
     */
    constructor(options?: TOptions);
    connect(configs?: Record<string, any>): TPoolConnected;
    disconnect(): void;
    clusterConnect(): TPoolCusterConnected;
    private _defaultOptions;
    private _loadOptions;
    private _convertStringToObject;
    private _covertKeyTypeToCorrectType;
    private _driver;
}
/**
 *
 * Connection to database when service is started
 *
 * @returns   {Connection} Connection
 * @property  {Function} Connection.query
 * @property  {Function} Connection.connection
 */
declare const pool: PoolConnection;
export { loadOptionsEnv };
export { pool as Pool };
export default pool;
