/** * Two-way state sync across browser tabs. * - Without callback: returns [value, setter] (like useState but synced). * - With callback: calls your handler when any tab updates this key. * * While the socket is null the setter updates local state only; it broadcasts * once the socket is ready. * * @example * const [cart, setCart] = useSocketSync('cart', { items: [] }); */ export declare function useSocketSync(key: string, initialValue: T, callback?: (value: T) => void): [T, (value: T) => void];