/// <reference types="node" />
import { UltipaConfig } from "../types/types";
import { ConnectionFinal } from "./connection.final";
/** Ultipa connection pool */
export declare class ConnectionPool {
    hosts: string[];
    username: string;
    password: string;
    crt?: Buffer;
    defaultConfig: UltipaConfig;
    currentIndex: number;
    private connectionCache;
    constructor(hosts: string[], username: string, password: string, crt?: Buffer, defaultConfig?: UltipaConfig);
    private getOrCreateConnection;
    /** Get active client */
    getActive(hosts?: string[]): Promise<ConnectionFinal>;
    private _getActive;
    _testActiveMaybeSlow(noBalanced?: boolean): Promise<ConnectionFinal>;
    test(): Promise<boolean>;
    setGraph(graphName: string): void;
}
