import { default as React, ReactNode } from 'react'; import { RealtimeContextValue } from '../contexts/RealtimeContext'; import { CacheUpdateStrategy } from './stream-to-query-cache'; /** * Realtime connection type */ export type RealtimeConnectionType = 'websocket' | 'sse'; /** * Realtime provider configuration */ export interface RealtimeProviderConfig { type: RealtimeConnectionType; url?: string; autoConnect?: boolean; cacheStrategies?: CacheUpdateStrategy[]; } /** * Realtime provider props */ export interface RealtimeProviderProps { children: ReactNode; config?: RealtimeProviderConfig; } /** * Realtime provider component * * Manages WebSocket or SSE connections for real-time data streaming. * Respects the 'real-time-updates' feature flag - when disabled, no connections are established. * * @example * ```tsx * * * * ``` */ export declare function RealtimeProvider({ children, config, }: RealtimeProviderProps): React.ReactElement; /** * Hook to access realtime context * * @example * ```tsx * function MyComponent() { * const { isConnected, subscribe, send } = useRealtimeContext(); * // ... * } * ``` */ export declare function useRealtimeContext(): RealtimeContextValue;