import * as React from 'react';
import { type ButtonProps } from '../Button/Button';
export type CalendarTimeTestsProps = {
    /**
     * Передает атрибут `data-testid` для дропдауна выбора часа в календаре.
     */
    hoursTestId?: string;
    /**
     * Передает атрибут `data-testid` для дропдауна выбора минут в календаре.
     */
    minutesTestId?: string;
    /**
     * Передает атрибут `data-testid` для кнопки "Готово" в календаре.
     */
    doneButtonTestId?: string;
};
export type CalendarDoneButtonProps = {
    /**
     * Кастомное отображение кнопки `"Done"`.
     */
    DoneButton?: React.ComponentType<ButtonProps>;
    /**
     * Текст отображаемый в кнопке `"Done"`.
     */
    doneButtonText?: string;
    /**
     * Управление отображением кнопки `"Done"`.
     */
    doneButtonShow?: boolean;
    /**
     * Блокировка взаимодействия с кнопкой "Done".
     */
    doneButtonDisabled?: boolean;
    /**
     * Обработки нажатия на кнопку `"Done"`.
     */
    onDoneButtonClick?: () => void;
};
export interface CalendarTimeProps extends CalendarTimeTestsProps, CalendarDoneButtonProps {
    /**
     * Отображаемая дата.
     */
    value: Date;
    /**
     * Текст выпадающего списка с выбором часов. Делает его доступным для ассистивных технологий.
     */
    changeHoursLabel?: string;
    /**
     * Текст выпадающего списка с выбором минут. Делает его доступным для ассистивных технологий.
     */
    changeMinutesLabel?: string;
    /**
     * Обработчик изменения времени.
     */
    onChange?: (value: Date) => void;
    /**
     * Функция для проверки блокировки выбора даты и времени.
     */
    isDayDisabled?: (day: Date, withTime?: boolean) => boolean;
}
export declare const CalendarTime: ({ value, onChange, onDoneButtonClick, changeHoursLabel, changeMinutesLabel, isDayDisabled, doneButtonText, doneButtonDisabled, doneButtonShow, minutesTestId, hoursTestId, doneButtonTestId, DoneButton, }: CalendarTimeProps) => React.ReactNode;
//# sourceMappingURL=CalendarTime.d.ts.map