import { AuthToken } from '@socket-mesh/auth'; import { BaseSocketTransport, InvokeMethodOptions, InvokeServiceOptions, SocketStatus, SocketTransport } from '@socket-mesh/core'; import ws from 'isomorphic-ws'; import { ClientAuthEngine } from './client-auth-engine.js'; import { AutoReconnectOptions, ClientSocketOptions, ConnectOptions } from './client-socket-options.js'; export declare class ClientTransport extends BaseSocketTransport implements SocketTransport<{}, {}, TState> { private _autoReconnect; private _connectAttempts; private _connectTimeoutRef; private _pendingReconnectTimeout; private _pingTimeoutMs; private _uri; private _wsOptions; readonly authEngine: ClientAuthEngine; connectTimeoutMs: number; isPingTimeoutDisabled: boolean; type: 'client'; constructor(options: ClientSocketOptions); get autoReconnect(): AutoReconnectOptions | false; set autoReconnect(value: boolean | Partial); connect(options?: ConnectOptions): void; get connectAttempts(): number; disconnect(code?: number, reason?: string): void; private handshake; invoke(methodOptions: [string, string, (false | number)?] | InvokeMethodOptions | InvokeServiceOptions | string, arg?: unknown): [Promise, () => void]; protected onClose(code: number, reason?: Buffer): void; protected onOpen(): void; protected onPingPong(): void; get pendingReconnect(): boolean; get pingTimeoutMs(): number; set pingTimeoutMs(value: number); private resetReconnect; send(data: Buffer | string): Promise; setAuthorization(signedAuthToken: string, authToken?: AuthToken): Promise; get status(): SocketStatus; transmit(serviceAndMethod: [string, string] | string, arg?: unknown): Promise; private tryReconnect; get uri(): URL; protected get webSocket(): null | ws.WebSocket; protected set webSocket(value: null | ws.WebSocket); }