import type { Moment } from "moment-timezone";
import { Component } from "react";
export type SelectAll = "after" | "before";
export type CalendarProps = {
    initial?: Moment;
    selected?: Moment;
    selectedEnd?: Moment;
    selectAll?: SelectAll | null;
    onChange?: (start: string, end: string | null, startMoment: Moment, endMoment?: Moment | null) => void;
    onChangeDate?: (date: string, dateMoment: Moment) => void;
    isRangePicker?: boolean;
    noContext?: boolean;
};
type State = {
    current?: Moment;
};
export default class Calendar extends Component<CalendarProps, State> {
    constructor(props: CalendarProps);
    static defaultProps: {
        isRangePicker: boolean;
        noContext: boolean;
    };
    UNSAFE_componentWillReceiveProps(nextProps: CalendarProps): void;
    onClickDay: (date: Moment) => void;
    previous: () => void;
    next: () => void;
    renderMonthHeader(current?: Moment, side?: "left" | "right"): import("react/jsx-runtime").JSX.Element;
    renderDayNames(): import("react/jsx-runtime").JSX.Element;
    renderWeeks(current?: Moment): import("react/jsx-runtime").JSX.Element;
    renderCalendar(current?: Moment, side?: "left" | "right"): import("react/jsx-runtime").JSX.Element;
    render(): import("react/jsx-runtime").JSX.Element;
}
export {};
