import { type RefObject } from "react"; /** Position calculée d'une cellule figée, partagée par l'en-tête et le corps du tableau. */ export interface FixedColumnOffset { /** Bord du conteneur auquel la colonne est accrochée. */ side: "left" | "right"; /** Décalage en pixels par rapport à ce bord, largeur cumulée des colonnes figées qui précèdent. */ offset: number; /** Vrai pour la colonne figée la plus proche de la zone qui défile : c'est elle qui porte la séparation. */ isEdge: boolean; } /** * Mesure les colonnes figées d'un tableau et renvoie leur décalage, indexé par clé de colonne. * * Les décalages sont pris sur les cellules de l'en-tête : c'est la seule ligne dont on est sûr * qu'elle contient toutes les colonnes, et sa largeur est par construction celle de la colonne * entière. En-tête et corps partagent donc la même mesure, ce qui évite qu'un `th` reste dans le * flux pendant que le `td` correspondant est déjà accroché au bord. * * La mesure est refaite à chaque rendu — une colonne masquée, réordonnée ou redimensionnée change * les largeurs sans redimensionner le tableau lui-même, qui occupe toujours 100% de son conteneur. */ export declare function useFixedColumns(tableRef: RefObject): Record; //# sourceMappingURL=useFixedColumns.d.ts.map