///
import { GroupedData } from '../data-table.types';
interface UseStickyGroupAnchorParams {
enabled: boolean;
groupHeaderList: {
index: number;
start: number;
data: GroupedData;
}[];
scrollContainerRef: React.RefObject;
}
interface UseStickyGroupAnchorResult {
stickyGroup: GroupedData | null;
stickyGroupIndex: number | null;
recompute: () => void;
}
/**
* Tracks the active group for the virtualized sticky group anchor.
*
* Picks the latest group whose `start` offset has been scrolled past, so the
* anchor's content stays in sync with the natural section header underneath.
*
* Returns the current group's data plus the row index of its natural section
* header — the consumer hides that row in the virtualized body so the natural
* header doesn't visually slide past the anchor (matching the non-virtualized
* table where CSS sticky pins each section header at the offset).
*
* `start` is supplied by the caller (computed from row sizes) rather than read
* from the virtualizer's measurements cache, so it stays correct across data
* loads even before the virtualizer has measured shifted rows.
*/
export declare function useStickyGroupAnchor({ enabled, groupHeaderList, scrollContainerRef }: UseStickyGroupAnchorParams): UseStickyGroupAnchorResult;
export {};
//# sourceMappingURL=useStickyGroupAnchor.d.ts.map