import { MutableRefObject, UIEventHandler } from 'react';
import { ScrollAreaAxis, ScrollEdges } from '../utils/scroll-edges.js';
export interface UseScrollEdgesOptions {
    axis?: ScrollAreaAxis;
}
export interface UseScrollEdgesResult<T extends HTMLElement> {
    scrollEdges: ScrollEdges;
    scrollRef: MutableRefObject<T | null>;
    refreshScrollEdges: () => void;
    onScroll: UIEventHandler<T>;
}
/**
 * Measures a native scroll viewport and reports whether content remains at its
 * logical inline and block edges. It intentionally owns no visual treatment,
 * so native scrollers such as textareas can reuse it.
 */
export declare function useScrollEdges<T extends HTMLElement = HTMLDivElement>({ axis, }?: UseScrollEdgesOptions): UseScrollEdgesResult<T>;
