@pompeii-labs/svelte-obsidian
Version:
Svelte providers for Magma chat integration
25 lines (24 loc) • 721 B
TypeScript
export type WSMessage = {
type: string;
data: unknown;
};
export type WebSocketParams = {
url: string;
onOpen: (ev: Event, ws: WebSocket) => void;
onMessage: (message: MessageEvent, ws: WebSocket) => void;
onError: (error: Event, ws: WebSocket) => void;
onClose: (ev: CloseEvent, ws: WebSocket) => void;
};
type SocketContext = {
socketRef: {
current: WebSocket | undefined;
};
initializeSocket: (params: WebSocketParams) => void;
socketState: {
current: WebSocket['readyState'];
};
closeSocket: () => void;
};
export declare function getSocketContext(): SocketContext;
export declare function setSocketContext(context: SocketContext): void;
export {};