///
interface UseInfiniteScrollParams {
/** When false, no observer is attached. */
enabled: boolean;
/** Sentinel element observed near the end of the list. */
sentinelRef: React.RefObject;
/** Scroll container used as the IntersectionObserver root. */
scrollRef: React.RefObject;
/** Suppresses the trigger while a previous fetch is in flight. */
isLoading?: boolean;
/** Fires when the sentinel intersects the root viewport. */
onLoadMore?: () => void;
/**
* Distance past the bottom edge that still counts as "near the end". The
* sentinel fires once the user scrolls within this many pixels of it.
* Default 200.
*/
rootMargin?: number;
}
/**
* Single sentinel-based load-more. Used by both virtualized and non-virtualized
* renderers so behaviour stays identical regardless of the row model.
*
* The sentinel itself is a sibling rendered after the rows by the caller; this
* hook only attaches the observer. `isLoading` and `onLoadMore` are tracked
* through refs so the observer doesn't re-attach on every render.
*/
export declare function useInfiniteScroll({ enabled, sentinelRef, scrollRef, isLoading, onLoadMore, rootMargin }: UseInfiniteScrollParams): void;
export {};
//# sourceMappingURL=useInfiniteScroll.d.ts.map