/// import { Locale } from 'date-fns'; import { IconProps, IconPropSize } from '../../icons/Icon/Icon'; import { DateRange } from '../../utils/types/Date'; import { PropsWithHTMLAttributesAndRef } from '../../utils/types/PropsWithHTMLAttributes'; import { DateTimePropView } from '../DateTimeCanary/helpers'; import { TextFieldPropForm, TextFieldPropSize, TextFieldPropStatus, TextFieldPropView, TextFieldPropWidth } from '../TextField/TextField'; export declare const datePickerPropType: readonly ["date", "date-range"]; export declare type DatePickerPropType = typeof datePickerPropType[number]; export declare const datePickerPropTypeDefault: "date"; export declare type DatePickerPropDateTimeView = DateTimePropView; export declare const datePickerErrorTypes: readonly ["outOfRange", "invalidInputAttempt", "startDateIsGreaterThanEndDate"]; export declare type DatePickerPropValue = (TYPE extends 'date' ? Date : DateRange) | null; export declare type DatePickerPropOnChange = (props: { value: DatePickerPropValue; e: React.MouseEvent | Event; }) => void; export declare const datePickerPropDropdownForm: readonly ["default", "brick", "round"]; export declare type DatePickerPropDropdownForm = typeof datePickerPropDropdownForm[number]; export declare const datePickerPropDropdownFormDefault: "default"; declare type DatePickerPropCalendarWidth = TYPE extends 'date' ? TextFieldPropWidth : never; declare type DatePickerPropCalendarInputRef = TYPE extends 'date' ? React.Ref : never; declare type DatePickerPropCalendarStartInputRef = TYPE extends 'date-range' ? React.Ref : never; declare type DatePickerPropCalendarStartLeftSide = TYPE extends 'date-range' ? string | React.FC : never; declare type DatePickerPropCalendarStartOnFocus = TYPE extends 'date-range' ? React.FocusEventHandler : never; export declare type DatePickerProps = PropsWithHTMLAttributesAndRef<{ type?: TYPE; value?: DatePickerPropValue; onChange?: DatePickerPropOnChange; minDate?: Date; maxDate?: Date; events?: Date[]; dateTimeView?: DatePickerPropDateTimeView; locale?: Locale; children?: never; onError?: DatePickerPropOnError; id?: string; name?: string; disabled?: boolean; size?: TextFieldPropSize; view?: TextFieldPropView; form?: TextFieldPropForm; status?: TextFieldPropStatus; onFocus?: React.FocusEventHandler; onBlur?: React.FocusEventHandler; autoFocus?: boolean; placeholder?: string; readOnly?: boolean; required?: boolean; tabIndex?: number; inputRef?: DatePickerPropCalendarInputRef; ariaLabel?: string; iconSize?: IconPropSize; format?: string; separator?: string; dropdownForm?: DatePickerPropDropdownForm; width?: DatePickerPropCalendarWidth; leftSide?: string | React.FC; rightSide?: string | React.FC; startFieldInputRef?: DatePickerPropCalendarStartInputRef; endFieldInputRef?: DatePickerPropCalendarStartInputRef; startFieldLeftSide?: DatePickerPropCalendarStartLeftSide; startFieldRightSide?: DatePickerPropCalendarStartLeftSide; endFieldLeftSide?: DatePickerPropCalendarStartLeftSide; endFieldRightSide?: DatePickerPropCalendarStartLeftSide; startFieldOnFocus?: DatePickerPropCalendarStartOnFocus; endFieldOnFocus?: DatePickerPropCalendarStartOnFocus; startFieldOnBlur?: DatePickerPropCalendarStartOnFocus; endFieldOnBlur?: DatePickerPropCalendarStartOnFocus; }, HTMLDivElement>; export declare type DatePickerComponent = (props: DatePickerProps) => React.ReactElement | null; export declare type DatePickerTypeDateComponent = (props: DatePickerProps<'date'>) => React.ReactElement | null; export declare type DatePickerTypeDateRangeComponent = (props: DatePickerProps<'date-range'>) => React.ReactElement | null; export declare type DatePickerPropOnError = (props: { type: typeof datePickerErrorTypes[0]; stringValue: string; dd?: string; MM?: string; yyyy?: string; date: Date; } | { type: typeof datePickerErrorTypes[1]; stringValue: string; dd?: string; MM?: string; yyyy?: string; } | { type: typeof datePickerErrorTypes[2]; date: [Date, Date]; }) => void; export declare const isDateRangeParams: (params: DatePickerProps) => params is PropsWithHTMLAttributesAndRef<{ type?: "date-range" | undefined; value?: DateRange | null | undefined; onChange?: DatePickerPropOnChange<"date-range"> | undefined; minDate?: Date | undefined; maxDate?: Date | undefined; events?: Date[] | undefined; dateTimeView?: "slider" | "classic" | "book" | undefined; locale?: globalThis.Locale | undefined; children?: undefined; onError?: DatePickerPropOnError | undefined; id?: string | undefined; name?: string | undefined; disabled?: boolean | undefined; size?: "xs" | "s" | "m" | "l" | undefined; view?: "default" | "clear" | undefined; form?: "default" | "round" | "brick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "defaultBrick" | "brickDefault" | "brickClear" | "clearBrick" | "clearClear" | "brickRound" | "roundBrick" | undefined; status?: "alert" | "success" | "warning" | undefined; onFocus?: ((event: import("react").FocusEvent) => void) | undefined; onBlur?: ((event: import("react").FocusEvent) => void) | undefined; autoFocus?: boolean | undefined; placeholder?: string | undefined; readOnly?: boolean | undefined; required?: boolean | undefined; tabIndex?: number | undefined; inputRef?: undefined; ariaLabel?: string | undefined; iconSize?: "xs" | "s" | "m" | undefined; format?: string | undefined; separator?: string | undefined; dropdownForm?: "default" | "round" | "brick" | undefined; width?: undefined; leftSide?: string | import("react").FC> | undefined; rightSide?: string | import("react").FC> | undefined; startFieldInputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject | null | undefined; endFieldInputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject | null | undefined; startFieldLeftSide?: string | import("react").FC> | undefined; startFieldRightSide?: string | import("react").FC> | undefined; endFieldLeftSide?: string | import("react").FC> | undefined; endFieldRightSide?: string | import("react").FC> | undefined; startFieldOnFocus?: ((event: import("react").FocusEvent) => void) | undefined; endFieldOnFocus?: ((event: import("react").FocusEvent) => void) | undefined; startFieldOnBlur?: ((event: import("react").FocusEvent) => void) | undefined; endFieldOnBlur?: ((event: import("react").FocusEvent) => void) | undefined; }, HTMLDivElement>; export declare const isNotDateRangeParams: (params: DatePickerProps) => params is PropsWithHTMLAttributesAndRef<{ type?: "date" | undefined; value?: Date | null | undefined; onChange?: DatePickerPropOnChange<"date"> | undefined; minDate?: Date | undefined; maxDate?: Date | undefined; events?: Date[] | undefined; dateTimeView?: "slider" | "classic" | "book" | undefined; locale?: globalThis.Locale | undefined; children?: undefined; onError?: DatePickerPropOnError | undefined; id?: string | undefined; name?: string | undefined; disabled?: boolean | undefined; size?: "xs" | "s" | "m" | "l" | undefined; view?: "default" | "clear" | undefined; form?: "default" | "round" | "brick" | "clearRound" | "roundClear" | "clearDefault" | "defaultClear" | "defaultBrick" | "brickDefault" | "brickClear" | "clearBrick" | "clearClear" | "brickRound" | "roundBrick" | undefined; status?: "alert" | "success" | "warning" | undefined; onFocus?: ((event: import("react").FocusEvent) => void) | undefined; onBlur?: ((event: import("react").FocusEvent) => void) | undefined; autoFocus?: boolean | undefined; placeholder?: string | undefined; readOnly?: boolean | undefined; required?: boolean | undefined; tabIndex?: number | undefined; inputRef?: ((instance: HTMLInputElement | null) => void) | import("react").RefObject | null | undefined; ariaLabel?: string | undefined; iconSize?: "xs" | "s" | "m" | undefined; format?: string | undefined; separator?: string | undefined; dropdownForm?: "default" | "round" | "brick" | undefined; width?: "default" | "full" | undefined; leftSide?: string | import("react").FC> | undefined; rightSide?: string | import("react").FC> | undefined; startFieldInputRef?: undefined; endFieldInputRef?: undefined; startFieldLeftSide?: undefined; startFieldRightSide?: undefined; endFieldLeftSide?: undefined; endFieldRightSide?: undefined; startFieldOnFocus?: undefined; endFieldOnFocus?: undefined; startFieldOnBlur?: undefined; endFieldOnBlur?: undefined; }, HTMLDivElement>; export declare const datePickerPropSeparatorDefault = "."; export declare const datePickerPropFormatDefault: string; export declare const datePickerPropPlaceholderDefault: string; export declare const normalizeRangeValue: (dateRange: DateRange) => DateRange; export {};