import { MutableRefObject, UIEventHandler, WheelEventHandler } from 'react'; /** * Scroll horizontal compartido: el **viewport** es el de la cabecera; el cuerpo registra nodos * que reciben `transform` **en el mismo tick** que el `scroll` (sin esperar a React), para evitar * desfase visual entre cabecera y filas. */ export interface GhanttHorizontalScroll { headerViewportRef: MutableRefObject; /** Aplica posición con clamp según `scrollWidth` del viewport de cabecera y sincroniza el cuerpo. */ setScrollLeft: (x: number) => void; /** Conectar al `onScroll` del contenedor `overflow-x-auto` de la cabecera. */ onHeaderViewportScroll: UIEventHandler; /** * Rueda horizontal / Shift+rueda vertical sobre la pista Gantt (cuerpo y cabecera). * Con `timeline.modifierWheelZoom`, **Cmd/Ctrl + rueda** prioriza el cambio de escala (se hace `preventDefault`). */ onBodyWheel: WheelEventHandler; /** Nodo cuya `transform` debe seguir al scroll (pista temporal de cada fila). */ registerBodyTimeline: (el: HTMLElement | null) => () => void; } //# sourceMappingURL=ghanttHorizontalScroll.d.ts.map