import React from 'react';
import { OnesyDate } from '@onesy/date';
import { ILine } from '../Line/Line';
import { IPropsAny } from '../types';
import { ICalendarViewsView } from '../CalendarViews/CalendarViews';
export declare type TCalendarMonthValue = OnesyDate | [OnesyDate, OnesyDate];
export declare type TCalendarMonthCalendar = OnesyDate;
export declare type ICalendarMonthValuesValue = {
    day: string;
    month: string;
    year: string;
    inputModal: string;
    input: string;
    selected: OnesyDate;
    date: OnesyDate;
    previous: OnesyDate;
    move: 'previous' | 'next';
};
export declare type TCalendarMonthValues = [ICalendarMonthValuesValue, ICalendarMonthValuesValue];
export declare type ICalenarDays = Omit<ILine, 'onChange'> & {
    value?: TCalendarMonthValue;
    valueDefault?: TCalendarMonthValue;
    onChange?: (value: TCalendarMonthValue) => any;
    calendar?: TCalendarMonthCalendar;
    calendarDefault?: TCalendarMonthCalendar;
    onChangeCalendar?: (value: TCalendarMonthCalendar) => any;
    onTimeClick?: (date: OnesyDate, view: ICalendarViewsView, event: MouseEvent) => any;
    now?: boolean;
    outside?: boolean;
    range?: boolean;
    weekStartDay?: 'Monday' | 'Sunday';
    noTransition?: boolean;
    offset?: number;
    min?: OnesyDate;
    max?: OnesyDate;
    validate?: (value: OnesyDate) => boolean;
    labels?: boolean;
    dayNamesFull?: boolean;
    valid?: (value: OnesyDate, version: 'day' | 'month' | 'year') => boolean;
    renderDay?: (value: OnesyDate, props: any, day: any, outside: boolean) => React.ReactNode;
    renderDayName?: (order: number) => any;
    DayNameProps?: IPropsAny;
    PaginationItemProps?: IPropsAny;
    TransitionProps?: IPropsAny;
    TransitionsProps?: IPropsAny;
};
declare const CalendarMonth: React.FC<ICalenarDays>;
export default CalendarMonth;
