/** Scroll direction: 'up', 'down', or null if not yet determined */ export type ScrollDirection = 'up' | 'down' | null; /** Return type for the useScrollPosition hook */ export interface ScrollPosition { /** Horizontal scroll offset in pixels */ x: number; /** Vertical scroll offset in pixels */ y: number; /** Current vertical scroll direction */ direction: ScrollDirection; } /** Options for useScrollPosition */ export interface UseScrollPositionOptions { /** Throttle interval in ms. Default: `0` (every frame via rAF) */ throttleMs?: number; /** Custom scrollable element ref. Defaults to window. */ element?: React.RefObject; } /** * Tracks the current scroll position and vertical direction. * * @param {UseScrollPositionOptions} [options] - Throttle and element options * @returns {ScrollPosition} Current x, y offsets and scroll direction * * @example * const { y, direction } = useScrollPosition({ throttleMs: 100 }); * const showNav = direction === 'up' || y < 100; */ export declare function useScrollPosition(options?: UseScrollPositionOptions): ScrollPosition;