jz-tool-lib
Version:
项目常用公共方法集合
48 lines (47 loc) • 1.31 kB
TypeScript
/**
* @description websocket
* CONNECTING:0 正在链接中
* OPEN:1 已经链接并且可以通讯
* CLOSING:2 正在关闭
* CLOSED:3 已经关闭
* */
declare abstract class StockManager {
private socket;
private isConnect;
private readonly url;
private readonly maxReconnectCount;
private readonly reconnectTime;
private reconnectCount;
private reconnectTimer;
private heartbeatTimer;
private readonly heartbeatTime;
private dispatchCenter;
protected constructor(params: {
url: string;
});
connect(): void;
openHook(callback: Function): void;
errorHook(callback: Function): void;
messageHook(callback: Function): void;
closeHook(callback: Function): void;
subscribeEvent(type: string, callback: Function): void;
dispatchEvent(type: string, data: unknown): void;
setupOpen(): void;
setupMessage(): void;
setupClose(): void;
setupError(): void;
heartbeat(): void;
sendMessage(data: unknown): void;
dispose(): void;
}
export declare class StockService extends StockManager {
static instance: StockService;
constructor(params: {
url: string;
});
static getInstance(params: {
url: string;
protocol?: string[] | string;
}): StockService;
}
export {};