/// import { FlexProps } from 'theme-ui'; import { CalendarDotProps } from './CalendarDot'; export interface GetCellColorContext { disableFuture: boolean | Date; disablePast: boolean | Date; fadeOtherMonths: boolean; isSelected: boolean; isDisabled: boolean; isFuture: boolean; isPast: boolean; isInAnotherMonth: boolean; } export interface CalendarDotItemProps { date: Date; color: CalendarDotProps['color']; } export interface CalendarProps extends Omit { /** Visual annotations of specific cells indicating specific data at specific dates */ dots?: CalendarDotItemProps[]; /** * Wether past dates selection and months navigation should be disabled (if true, consider "today", if set as date, consider that date, otherwise all past dates are enabled) * * @example disablePast={true} * @example disablePast={startOfMonth()} */ disablePast?: boolean | Date; /** * Wether future dates selection and months navigation should be disabled (if true, consider "today", if set as date, consider that date, otherwise all past dates are enabled) * * @example disableFuture={true} * @example disableFuture={addWeeks(new Date(), 2)} */ disableFuture?: boolean | Date; /** * Wether days of other months should be displayed "faded" */ fadeOtherMonths?: boolean; /** Callback used to define a given cell text color */ getCellColor?: (day: Date, context: GetCellColorContext) => string; /** * Wether days of other months should be hidden */ hideOtherMonths?: boolean; /** Array of dates to display (usually the result of "useDateIntervalFromMonth()") */ interval: Date[]; /** Callback invoked when a date is selected in the calendar */ onDateSelected?: (day: Date) => void; /** Callback invoked when clicking on previous/next months buttons */ onMonthChange(inc: boolean): void; selectedDay: Date; } declare const Calendar: import("react").ForwardRefExoticComponent>; export default Calendar;