/**
 * TODO: 国际化
 */
import React from 'react';
import { CalendarEventList } from './type';
import { DateDescList } from './utils';
export interface SingleMonthProps {
    date: Date;
    showOutOfMonthDay?: boolean;
    showLunar?: boolean;
    showHoliday?: boolean;
    showGetEventError?: boolean;
    currentSelect?: Date;
    onSelect?: (date: Date) => void;
    onSuppressError?: () => void;
    onGetEventsForMonth?: (date: Date) => Promise<void>;
    events?: {
        [date: string]: any[] | undefined;
    };
    legalHolidayEvents?: CalendarEventList;
    style?: React.CSSProperties;
}
interface State {
    dateList: DateDescList;
    error?: Error;
}
export default class SingleMonth extends React.Component<SingleMonthProps, State> {
    static defaultProps: {
        showLunar: boolean;
        showHoliday: boolean;
        showGetEventError: boolean;
    };
    state: State;
    componentDidMount(): void;
    shouldComponentUpdate(nextProps: SingleMonthProps, nextState: State): boolean;
    componentDidUpdate(prevProps: SingleMonthProps): void;
    render(): JSX.Element;
    private renderDays;
    private renderLegalHoliday;
    private initialEvents;
    private handleSelect;
}
export {};
