import type { TabRole, SocketLifecycleHandlers } from '../../types'; /** * Reactive connection status. Reports `false`/`'follower'` while the socket is * null, then tracks the live instance once it is ready. * * @example * const { connected, tabRole } = useSocketStatus(); */ export declare function useSocketStatus(): { connected: boolean; tabRole: TabRole; isAuthenticated: boolean; }; /** * Lifecycle hooks — react to connection state changes. Wires up once the socket * is ready (no-op while null). * * @example * useSocketLifecycle({ * onConnect: () => console.log('Connected!'), * onError: (err) => reportError(err), * }); */ export declare function useSocketLifecycle(handlers: SocketLifecycleHandlers): void; /** * Reactive reconnect state with a manual `reconnect` action. Use this to * power a "Reconnect" snackbar/banner after auto-reconnect gives up. * * @example * const { hasFailed, reconnect } = useSocketReconnect(); */ export declare function useSocketReconnect(): { hasFailed: boolean; reconnect: () => void; };