import { type RefObject } from "react"; export interface UseIntersectionObserverOptions extends IntersectionObserverInit { /** Freeze state once visible (useful for one-time animations or lazy loading) */ freezeOnceVisible?: boolean; } /** * Hook to observe the visibility of a DOM element within the viewport using IntersectionObserver. * * @example * const ref = useRef(null); * const entry = useIntersectionObserver(ref, { threshold: 0.5 }); * const isVisible = !!entry?.isIntersecting; * * @param ref The target React RefObject to observe. * @param options IntersectionObserver options. * @returns The latest IntersectionObserverEntry or null. */ export declare function useIntersectionObserver(ref: RefObject, options?: UseIntersectionObserverOptions): IntersectionObserverEntry | null;