import './DateRangePicker.css';
import type { HTMLAttributes, InputHTMLAttributes, Ref } from 'react';
import type { InputSizeVariant } from '../Input';
import { type PopoverProps, type PopoverPlacementVariant } from '../Popover';
import { PortalProps } from '../Portal';
export declare const cnDateRangePicker: import("@bem-react/classname").ClassNameFormatter;
type InputElement = InputHTMLAttributes & {
'data-testid'?: string;
};
export type DateRangePickerProps = {
/**
* Размер
* @default m
* */
size?: InputSizeVariant;
/**
* День начала недели
* @default monday
* */
startWeek?: 'monday' | 'sunday';
/**
* Язык календаря
* @default ru
*/
locale?: string;
/** Функция обратного вызова для исключения дат из выбора */
excludeDate?: (date: Date) => boolean;
/** Обработчик события на изменение значения поля */
onChange?: (date: {
startDate: Date | null;
endDate: Date | null;
}) => void;
/** Лейбл */
label?: string;
/** Подсказка. Отображается, когда дата не выбрана */
placeholder?: string;
/** Дополнительное описание к полю */
hint?: string;
/** Выбранное значение */
value?: {
startDate: Date | null;
endDate: Date | null;
};
/** Если {true} делает элемент неактивным */
disabled?: boolean;
/** Если {true} устанавливает автофокус */
autoFocus?: boolean;
/** Если {true} переводит поле в состояние ошибки */
error?: boolean;
/** Если {true} растягивает поле на всю ширину */
fullWidth?: boolean;
/** Дополнительные CSS-классы */
className?: string;
/** Дополнительные CSS-классы компонента Input */
inputClassName?: string;
/** Контейнер для монтирования календаря */
container?: PortalProps['container'];
/**
* Ориентация отображения двух календарей
* @default horizontal
*/
calendarOrientation?: 'vertical' | 'horizontal';
/**
* Местоположение для разворачивания календаря
* @default bottom-start
* */
calendarPlacement?: PopoverPlacementVariant;
/** Если {true} делает элемент обязательным к заполнению */
required?: boolean;
/** Если {true} запрещает ручной ввод даты */
readOnly?: boolean;
/** Если {true} добавляет кнопку очистки поля ввода */
clearable?: boolean;
/** Если {true} сбрасывает диапазон дат при повторном выборе */
resetOnReselect?: boolean;
/** Свойства HTML элемента input */
inputProps?: InputElement;
/** Ссылка на input-элемент в компоненте */
inputRef?: Ref;
/** Свойства элемента Popover */
popoverProps?: PopoverProps;
} & Omit, 'value' | 'defaultValue' | 'onChange'>;
/**
* @deprecated Этот компонент устарел. Используйте новый DateRangePicker
* @example import { DateRangePicker } from '@ornament-ui/kit/DateRangePicker_new';
*/
export declare const DateRangePicker: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef;
export {};