import React from 'react';
import { Interval as IntervalType, IntervalRenderer } from '../types/main';
import { Moment } from 'moment';
import { SelectUnits } from '../utility/calendar';
import { GetIntervalPropsType } from './types';
export interface CustomDateHeaderProps<Data> {
    headerContext: {
        intervals: IntervalType[];
        unit: SelectUnits;
    };
    timelineContext: {
        timelineWidth: number;
        visibleTimeStart: number;
        visibleTimeEnd: number;
        canvasTimeStart: number;
        canvasTimeEnd: number;
    };
    getRootProps: (props?: any) => any;
    getIntervalProps: GetIntervalPropsType;
    showPeriod: (start: Moment, end: Moment) => void;
    data: {
        style: React.CSSProperties;
        intervalRenderer: (props: IntervalRenderer<Data>) => React.ReactNode;
        className?: string;
        getLabelFormat: (interval: [Moment, Moment], unit: string, labelWidth: number) => string;
        unitProp?: 'primaryHeader';
        headerData?: Data;
    };
}
export declare function CustomDateHeader<Data>({ headerContext: { intervals, unit }, getRootProps, getIntervalProps, showPeriod, data: { style, intervalRenderer, className, getLabelFormat, unitProp, headerData }, }: CustomDateHeaderProps<Data>): import("react/jsx-runtime").JSX.Element;
