/// import { AriaButtonProps } from "@react-types/button"; import { CalendarState, CalendarStateOptions, RangeCalendarState, RangeCalendarStateOptions } from "@react-stately/calendar"; import { CalendarDate } from "@internationalized/date"; import { VariantProps } from "../theme"; import { CalendarContainer } from "./calendar.styles"; export declare type Partial = { [P in keyof T]?: T[P]; }; export declare type CalendarStates = CalendarState & RangeCalendarState; declare type TTooltipElement = { singular: string; plural: string; }; declare type TTooltip = { day?: TTooltipElement; night?: TTooltipElement; }; export declare type TGetTooltipLabels = TTooltip & { numberOfDays: number; }; declare type TUnavailableStyle = "disabled" | "dot"; export declare type TCustomCalendarProps = { rounded: VariantProps["rounded"]; withSelectors: boolean; tooltip: TTooltip | false; dateUnavailableStyle: TUnavailableStyle; as: "single" | "double" | "infinite" | "horizontal"; showHorizontalTitle?: boolean; monthDateFormat: { month: "numeric" | "short" | "2-digit" | "long" | "narrow" | undefined; year: "numeric" | "2-digit" | undefined; }; colorScheme: VariantProps["colorScheme"]; size: VariantProps["size"]; }; export declare type TCalendarProps = Partial & Partial & { prevIcon?: JSX.Element; nextIcon?: JSX.Element; }; export declare type TRangeCalendarProps = Partial & Partial> & { as?: "single" | "double" | "infinite"; } & { prevIcon?: JSX.Element; nextIcon?: JSX.Element; }; export declare type TSelector = Pick & { state: CalendarStates; }; export declare type TCalendarHeader = { state: CalendarStates; calendarProps: React.HTMLAttributes; prevButtonProps: AriaButtonProps<"button">; nextButtonProps: AriaButtonProps<"button">; prevIcon?: JSX.Element; nextIcon?: JSX.Element; index: number; }; export declare type TCalendarGrid = { state: CalendarStates; offset?: { months?: number; }; }; export declare type TCalendarCell = { state: CalendarStates; date: CalendarDate; currentMonth: CalendarDate; numberOfDays?: number; }; export declare type TManualStyles = { isRoundedLeft: boolean; isSelected: boolean; isSelectionStart: boolean; isSelectionEnd: boolean; isFocusVisible: boolean; isUnavailable: boolean; isDisabled: boolean; } & Pick; export declare type TTooltipWrapper = { children: JSX.Element; hoverStartSelection: boolean; hoverEndSelection: boolean; numberOfDays?: number; tooltip: TTooltip | false; }; export {};