/// import * as React from 'react'; import { ComponentClass } from 'react'; import { PassTroughFunction } from '../../utils/getPassThrough'; import { PickerDate, DateChecker } from './types'; import { DayType } from './Day'; export interface MonthTitleProps { viewDate: Date; } export interface WeekdayProps { children: string; weekDay: number; } export interface MonthProps { highlighted?: PickerDate; isDayBlocked: DateChecker; isDayDisabled: DateChecker; locale: string | object; onDayClick(day: Date, event: React.MouseEvent): void; onDayMouseEnter(day: Date, event: React.MouseEvent): void; onDayMouseLeave(day: Date, event: React.MouseEvent): void; selected?: PickerDate; sundayFirstDayOfWeek: boolean; viewDate: Date; } export declare type MonthNodes = 'Day' | 'DaysWeek' | 'DaysWrapper' | 'Weekday' | 'MonthTitle' | 'MonthWrapper' | 'WeekDay' | 'WeekdaysWrapper'; export interface MonthFactoryArgs { /** * Used to render each Day of the Month. */ Day: DayType; /** * Used wrap each bunch of days that compose a week. */ DaysWeek: ComponentClass; /** * Used to render a wrapper around all weeks.. */ DaysWrapper: ComponentClass; /** * Used to render the month title */ MonthTitle: ComponentClass; /** * Used as a wrapper of the whole month component. */ MonthWrapper: ComponentClass; /** * Use it to render each Weekday */ Weekday: ComponentClass; /** * Used to render a wrapper around all weekdays */ WeekdaysWrapper: ComponentClass; /** * Use it to customize how props are passed around. */ passthrough: PassTroughFunction; } export declare type MonthType = ComponentClass; export default function monthFactory({Day, DaysWeek, DaysWrapper, MonthTitle, MonthWrapper, Weekday, WeekdaysWrapper, passthrough}: MonthFactoryArgs): MonthType;