/
voting
/
frontend
Обзор
Документация
Войти
/
voting
/
frontend
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
main
src/hooks/types.ts
28 строк
870 B
TimPulin
012-sse-module
17 июл 2026, 21:04
17 июл 2026, 21:04
533371e
Код
Авторство
О чём код?
export type SSEStatus = 'connecting' | 'connected' | 'disconnected' | 'error' export interface UseSSEOptions { /** Max reconnect attempts after a drop. Default: 5. `0` = no reconnect. */ reconnectAttempts?: number /** Delay between reconnect attempts in ms. Default: 3000. */ reconnectDelay?: number /** Open connection on mount when `url` is non-empty. Default: true. */ autoConnect?: boolean } export interface SSELastEvent<T = unknown> { type: string data: T raw: MessageEvent } export interface UseSSEReturn<EventMap extends Record<string, unknown> = Record<string, unknown>> { connect: () => void disconnect: () => void subscribe: <K extends keyof EventMap & string>( event: K, handler: (data: EventMap[K], raw: MessageEvent) => void ) => () => void lastEvent: SSELastEvent | null isConnected: boolean status: SSEStatus }