import { EventEmitter } from "eventemitter3"; import { IJSONRpcProvider, IJSONRpcConnection } from "../../types"; import { JsonRpcRequest, JsonRpcPayload, RequestArguments } from "@okxconnect/core"; export declare class JsonRpcProvider extends IJSONRpcProvider { events: EventEmitter; connection: IJSONRpcConnection; connected: boolean; connecting: boolean; private hasRegisteredEventListeners; constructor(connection: IJSONRpcConnection); connect(connection?: string | IJSONRpcConnection): Promise; disconnect(): Promise; on(event: string, listener: any): void; once(event: string, listener: any): void; off(event: string, listener: any): void; removeListener(event: string, listener: any): void; request(request: RequestArguments, context?: any): Promise; protected requestStrict(request: JsonRpcRequest, context?: any): Promise; protected setConnection(connection?: IJSONRpcConnection): IJSONRpcConnection; protected onPayload(payload: JsonRpcPayload): void; protected onClose(event?: CloseEvent): void; protected open(connection?: string | IJSONRpcConnection): Promise; protected close(): Promise; private registerEventListeners; }