import { SignedAuthToken } from '@socket-mesh/auth'; import { ChannelMap } from '@socket-mesh/channels'; import { AuthenticateEvent, AuthStateChangeEvent, BadAuthTokenEvent, BaseSocket, CloseEvent, ConnectEvent, ConnectingEvent, DeauthenticateEvent, DisconnectEvent, ErrorEvent, FunctionReturnType, InvokeMethodOptions, InvokeServiceOptions, MessageEvent, PingEvent, PongEvent, PrivateMethodMap, PublicMethodMap, RemoveAuthTokenEvent, RequestEvent, ResponseEvent, ServiceMap, ServiceMethodName, ServiceName, Socket, TypedRequestEvent, TypedResponseEvent, TypedSocketEvent } from '@socket-mesh/core'; import { DemuxedConsumableStream, StreamEvent } from '@socket-mesh/stream-demux'; import { ClientChannels } from './client-channels.js'; import { AutoReconnectOptions, ClientSocketOptions, ConnectOptions } from './client-socket-options.js'; import { ClientPrivateMap } from './maps/client-map.js'; import { ServerPrivateMap } from './maps/server-map.js'; export declare class ClientSocket extends BaseSocket implements Socket { private readonly _clientTransport; readonly channels: ClientChannels; constructor(address: string | URL); constructor(options: ClientSocketOptions); authenticate(signedAuthToken: SignedAuthToken): Promise; get autoReconnect(): AutoReconnectOptions | false; set autoReconnect(value: boolean | Partial); connect(options?: ConnectOptions): void; get connectTimeoutMs(): number; set connectTimeoutMs(timeoutMs: number); deauthenticate(): Promise; emit(event: 'request', data: TypedRequestEvent): void; emit(event: 'response', data: TypedResponseEvent): void; emit(event: 'authStateChange', data: AuthStateChangeEvent): void; emit(event: 'authenticate', data: AuthenticateEvent): void; emit(event: 'badAuthToken', data: BadAuthTokenEvent): void; emit(event: 'close', data: CloseEvent): void; emit(event: 'connect', data: ConnectEvent): void; emit(event: 'connectAbort', data: DisconnectEvent): void; emit(event: 'connecting', data: ConnectingEvent): void; emit(event: 'deauthenticate', data: DeauthenticateEvent): void; emit(event: 'disconnect', data: DisconnectEvent): void; emit(event: 'end'): void; emit(event: 'error', data: ErrorEvent): void; emit(event: 'message', data: MessageEvent): void; emit(event: 'ping', data: PingEvent): void; emit(event: 'pong', data: PongEvent): void; emit(event: 'removeAuthToken', data: RemoveAuthTokenEvent): void; emit(event: 'request', data: RequestEvent): void; emit(event: 'response', data: ResponseEvent): void; invoke(method: TMethod, arg?: Parameters[0]): Promise>; invoke, TMethod extends ServiceMethodName>(options: [TServiceName, TMethod, (false | number)?], arg?: Parameters[0]): Promise>; invoke, TMethod extends ServiceMethodName>(options: InvokeServiceOptions, arg?: Parameters[0]): Promise>; invoke(options: InvokeMethodOptions, arg?: Parameters[0]): Promise>; get isPingTimeoutDisabled(): boolean; set isPingTimeoutDisabled(isDisabled: boolean); listen(): DemuxedConsumableStream>>; listen(event: 'authStateChange'): DemuxedConsumableStream; listen(event: 'authenticate'): DemuxedConsumableStream; listen(event: 'badAuthToken'): DemuxedConsumableStream; listen(event: 'close'): DemuxedConsumableStream; listen(event: 'connect'): DemuxedConsumableStream; listen(event: 'connectAbort'): DemuxedConsumableStream; listen(event: 'connecting'): DemuxedConsumableStream; listen(event: 'deauthenticate'): DemuxedConsumableStream; listen(event: 'disconnect'): DemuxedConsumableStream; listen(event: 'end'): DemuxedConsumableStream; listen(event: 'error'): DemuxedConsumableStream; listen(event: 'message'): DemuxedConsumableStream; listen(event: 'ping'): DemuxedConsumableStream; listen(event: 'pong'): DemuxedConsumableStream; listen(event: 'removeAuthToken'): DemuxedConsumableStream; listen(event: 'request'): DemuxedConsumableStream>; listen(event: 'response'): DemuxedConsumableStream>; listen, V = U>(event: string): DemuxedConsumableStream; get pingTimeoutMs(): number; set pingTimeoutMs(timeoutMs: number); reconnect(code?: number, reason?: string): void; transmit(method: TMethod, arg?: Parameters[0]): Promise; transmit, TMethod extends ServiceMethodName>(options: [TServiceName, TMethod], arg?: Parameters[0]): Promise; get type(): 'client'; get uri(): URL; }