///
import { EventEmitter } from 'events';
export interface ConnectionOptions {
trace?: boolean | ((id: string, message: string) => void);
proxy?: string;
proxyAuthorization?: string;
authorization?: string;
trustedCertificates?: string[];
key?: string;
passphrase?: string;
certificate?: string;
timeout: number;
connectionTimeout: number;
}
export declare type ConnectionUserOptions = Partial;
export declare class Connection extends EventEmitter {
private _url;
private _ws;
private _reconnectTimeoutID;
private _heartbeatIntervalID;
private _retryConnectionBackoff;
private _trace;
private _config;
private _ledger;
private _requestManager;
private _connectionManager;
constructor(url?: string, options?: ConnectionUserOptions);
private _onMessage;
private get _state();
private get _shouldBeConnected();
private _clearHeartbeatInterval;
private _startHeartbeatInterval;
private _heartbeat;
private _waitForReady;
private _subscribeToLedger;
private _onConnectionFailed;
isConnected(): boolean;
connect(): Promise;
disconnect(): Promise;
reconnect(): Promise;
getFeeBase(): Promise;
getFeeRef(): Promise;
getLedgerVersion(): Promise;
getReserveBase(): Promise;
hasLedgerVersions(lowLedgerVersion: number, highLedgerVersion: number | undefined): Promise;
hasLedgerVersion(ledgerVersion: number): Promise;
request(request: any, timeout?: number): Promise;
getUrl(): string;
}
//# sourceMappingURL=connection.d.ts.map