import * as React from 'react';
import type { HTMLAttributesWithRootRef } from '../../types';
import { type CalendarDaysProps, type CalendarDaysTestsProps } from '../CalendarDays/CalendarDays';
import { type CalendarHeaderProps, type CalendarHeaderTestsProps } from '../CalendarHeader/CalendarHeader';
import type { DateRangeType } from './types';
export type { DateRangeType };
export type CalendarRangeTestsProps = CalendarDaysTestsProps & {
    /**
     * Передает атрибуты `data-testid` для интерактивных элементов в заголовке календаря в левой части.
     */
    leftPartHeaderTestsData?: CalendarHeaderTestsProps;
    /**
     * Передает атрибуты `data-testid` для интерактивных элементов в заголовке календаря в правой части.
     */
    rightPartHeaderTestsData?: CalendarHeaderTestsProps;
};
export interface CalendarRangeProps extends Omit<HTMLAttributesWithRootRef<HTMLDivElement>, 'onChange' | 'defaultValue'>, Pick<CalendarHeaderProps, 'prevMonthLabel' | 'nextMonthLabel' | 'changeMonthLabel' | 'changeYearLabel' | 'prevMonthIcon' | 'nextMonthIcon'>, Pick<CalendarDaysProps, 'listenDayChangesForUpdate' | 'renderDayContent'>, CalendarRangeTestsProps {
    /**
     * Текущий выбранный промежуток.
     */
    value?: DateRangeType | null;
    /**
     * Начальный промежуток при монтировании.
     */
    defaultValue?: DateRangeType | null;
    /**
     * Запрещает выбор даты в прошлом.
     * Применяется, если не заданы `shouldDisableDate` и `disableFuture`.
     */
    disablePast?: boolean;
    /**
     * Запрещает выбор даты в будущем.
     * Применяется, если не задано `shouldDisableDate`.
     */
    disableFuture?: boolean;
    /**
     * Отключает селекторы выбора месяца/года.
     */
    disablePickers?: boolean;
    /**
     * `aria-label` для изменения дня.
     *
     * @deprecated Since 7.4.0.
     *
     * Будет удалeно в **VKUI v8**. Использовалось для задания aria-label для контейнера дней в календаре.
     * Теперь этот контейнер является таблицей (с помощью role="grid") и
     * в aria-label рендерится текущий открытый в календаре месяц и год.
     */
    changeDayLabel?: string;
    /**
     * День недели, с которого начинается неделя.
     */
    weekStartsOn?: 0 | 1 | 2 | 3 | 4 | 5 | 6;
    /**
     * Обработчик изменения выбранного промежутка.
     */
    onChange?: (value: DateRangeType | undefined) => void;
    /**
     * Функция для проверки запрета выбора даты.
     */
    shouldDisableDate?: (value: Date) => boolean;
    /**
     * @deprecated Свойство не используется.
     */
    onClose?: () => void;
}
/**
 * @see https://vkui.io/components/calendar-range
 */
export declare const CalendarRange: ({ "value": valueProp, defaultValue, onChange, disablePast, disableFuture, shouldDisableDate, weekStartsOn, disablePickers, prevMonthLabel, nextMonthLabel, changeMonthLabel, changeYearLabel, "aria-label": ariaLabel, prevMonthIcon, nextMonthIcon, listenDayChangesForUpdate, renderDayContent, dayTestId, leftPartHeaderTestsData, rightPartHeaderTestsData, getRootRef, ...props }: CalendarRangeProps) => React.ReactNode;
//# sourceMappingURL=CalendarRange.d.ts.map