UNPKG

@izhann/react-cursor-fx

Version:

Interactive cursor effects for React and Next.js applications — zero runtime dependencies

17 lines (16 loc) 650 B
/** * Module-level singleton mouse position store. * * Replaces 8+ independent window.mousemove listeners with a single shared one. * Listener is added lazily on first subscribe — safe for SSR and "sideEffects": false. * Subscribers receive raw (x, y) synchronously inside the event handler, with no * React state or re-render overhead in the hot path. */ type Listener = (x: number, y: number) => void; export declare const mouseStore: { readonly x: number; readonly y: number; /** Subscribe to every mouse position change. Returns an unsubscribe function. */ readonly subscribe: (fn: Listener) => () => void; }; export {};