Files
dpu-shared/dist/sse.d.ts
2026-02-05 22:05:35 +01:00

27 lines
766 B
TypeScript

import { UUID } from "crypto";
export type SseClient = {
id: UUID;
send: (data: SseEvent) => void;
};
export type SseEvent = {
type: string;
data?: unknown;
message?: string;
};
export type SseClientChangeEvent = {
type: "add" | "remove";
clientId: string;
clientCount: number;
};
export type SseClientChangeCallback = (event: SseClientChangeEvent) => void;
export declare class SseService {
private clients;
private clientChangeCallbacks;
onClientChange(callback: SseClientChangeCallback): () => void;
private emitClientChange;
addClient(client: SseClient): void;
removeClient(clientId: string): void;
notifyClients(event: SseEvent): void;
getClientCount(): number;
}
//# sourceMappingURL=sse.d.ts.map