import { ScaleBand, ScaleLinear } from 'd3-scale'; import { Domain, TimelineEvent, TimelineLane } from '../model'; import { ZoomLevels } from '../shared/ZoomScale'; export declare const calcMaxDomain: >(events: readonly E[]) => Domain; interface UseTimelineProps> { width: number; height: number; events: ReadonlyArray; lanes: ReadonlyArray>; customRange?: Domain; zoomLevels: ReadonlyArray; onZoomRangeChange?: (startMillis: number, endMillis: number) => void; } export declare const useTimeline: >({ width, height, events, lanes, customRange, zoomLevels, onZoomRangeChange, }: UseTimelineProps) => { domain: Domain; setDomain: React.Dispatch>; maxDomain: Domain; maxDomainStart: number; maxDomainEnd: number; currentZoomScale: ZoomLevels; nextSmallerZoomScale: ZoomLevels; timeScale: ScaleLinear; yScale: ScaleBand; }; export {};