type UseIntersectionObserverOptions = {
    threshold?: number;
    onChange?: (isIntersecting: boolean, entry: IntersectionObserverEntry) => void;
    root?: Element | Document | null;
    rootMargin?: string;
};
type IntersectionReturnType = {
    ref: (node?: Element | null) => void;
    isIntersecting: boolean;
    entry?: IntersectionObserverEntry;
};
declare function useIntersectionObserver({ threshold, root, rootMargin, onChange, }?: UseIntersectionObserverOptions): IntersectionReturnType;

export { useIntersectionObserver };
