aboutsummaryrefslogtreecommitdiff
path: root/websocket_client.d.ts
diff options
context:
space:
mode:
Diffstat (limited to 'websocket_client.d.ts')
-rw-r--r--websocket_client.d.ts45
1 files changed, 45 insertions, 0 deletions
diff --git a/websocket_client.d.ts b/websocket_client.d.ts
new file mode 100644
index 0000000..737fb21
--- /dev/null
+++ b/websocket_client.d.ts
@@ -0,0 +1,45 @@
+import { WuiResponseInterface } from "./response.js";
+interface RequestQueue {
+ req: WuiWebSocketRequest;
+ cbSuccess: (res: WuiWebSocketResponse) => void;
+ cbFail: (err: string) => void;
+}
+export interface WuiWebSocketOptions {
+ address: string;
+ insecure: boolean;
+ auto_reconnect: boolean;
+ auto_reconnect_interval: number;
+ onBroadcast: (res: WuiWebSocketResponse) => void;
+ onConnected: () => void;
+ onDisconnected: () => void;
+ onError: () => void;
+}
+export interface WuiWebSocketRequest {
+ id: number;
+ method: string;
+ target: string;
+ body?: string;
+}
+export interface WuiWebSocketResponse {
+ id: number;
+ code: number;
+ message: string;
+ body: string;
+}
+export declare class WuiWebSocketClient {
+ opts: WuiWebSocketOptions;
+ address: string;
+ conn: WebSocket;
+ requestQueue: RequestQueue[];
+ reconnect_id: number;
+ isOpen: boolean;
+ error: string;
+ constructor(opts: WuiWebSocketOptions);
+ Send(req: WuiWebSocketRequest): Promise<WuiResponseInterface>;
+ connect(): void;
+ onClose(ev: CloseEvent): void;
+ onError(ev: Event): void;
+ onMessage(ev: MessageEvent): void;
+ onOpen(ev: Event): void;
+}
+export {};