import { default as React } from 'react';
import { default as Holder } from './components/holder/Holder';
import { ITimelineContext } from './hooks/TimelineContext';
import { DateType } from './utils/enums/dateType';
import { IRange } from './utils/models/IRange';
import { Draggable } from './components/draggable/Draggable';
import { default as dayjs } from 'dayjs';

interface IProps {
    onDragEnd?: (range: IRange) => void;
    children: JSX.Element;
    holderWidth?: number;
    header?: ITimelineContext.IHeader;
    size?: Partial<Record<DateType, number>>;
    onResize?: (props: {
        size: Partial<Record<DateType, number>>;
    }) => void;
    startDate?: dayjs.Dayjs;
    dependencies?: boolean;
}
declare const Timeline: {
    (props: IProps): React.ReactNode;
    OutsideDraggable: typeof Draggable;
    Holder: typeof Holder;
};
export default Timeline;
