import { GhanttTimelineProps, GhanttTimelineScale } from './types'; import { GhanttTimelineSlot } from './ganttTimeline'; export interface GhanttWheelZoomAnchor { anchorMs: number; anchorContentPx: number; /** Fracción 0..1 sobre el ancho de contenido de la rejilla (no lineal viewStart–viewEnd). */ anchorFraction: number; anchorSource: 'grid' | 'linear'; } /** * Instant bajo el puntero y fracción de ancla coherentes con la rejilla de slots actual. * Evita `anchorFraction: 1` cuando el scroll está al inicio pero `logicalContentWidth` está desfasado. */ export declare function ghanttResolveWheelZoomAnchor(timeline: GhanttTimelineProps, scrollLeft: number, xInViewport: number): GhanttWheelZoomAnchor; /** * Posición horizontal en px sobre el contenido scrollable (origen = inicio del primer slot), * alineada a la misma rejilla que `GhanttSlotStrip` / cabecera. */ export declare function ghanttContentPixelToAnchorMs(slots: readonly GhanttTimelineSlot[], scale: GhanttTimelineScale, slotWidthPx: number, contentPixel: number): number | null; export declare function ghanttAnchorMsToContentPixel(slots: readonly GhanttTimelineSlot[], scale: GhanttTimelineScale, slotWidthPx: number, anchorMs: number): number | null; //# sourceMappingURL=ghanttZoomAnchor.d.ts.map