import { EventEmitter } from '../../stencil-public-runtime';
import { IChangeMonthEvent, IChangeYearEvent, IClickDateEvent, ICalendar, ICalendarEvents } from './calendar.types';
import { EAbsoluteTimePickerMode } from '../../types';
export declare class KvCalendar implements ICalendar, ICalendarEvents {
    /** @inheritdoc */
    selectedDates?: string[];
    /** @inheritdoc */
    initialDate?: string;
    /** @inheritdoc */
    disableHoveringStyling?: boolean;
    /** @inheritdoc */
    hoveredDate?: string;
    /** @inheritdoc */
    disabledDates?: string[];
    /** @inheritdoc */
    minDate?: string;
    /** @inheritdoc */
    maxDate?: string;
    /** @inheritdoc */
    displayPreviousMonthArrow?: boolean;
    /** @inheritdoc */
    displayNextMonthArrow?: boolean;
    /** @inheritdoc */
    mode?: EAbsoluteTimePickerMode;
    /** @inheritdoc */
    changeMonth: EventEmitter<IChangeMonthEvent>;
    /** @inheritdoc */
    changeYear: EventEmitter<IChangeYearEvent>;
    /** @inheritdoc */
    clickDate: EventEmitter<IClickDateEvent>;
    /** @inheritdoc */
    hoveredDateChange: EventEmitter<string>;
    month: number;
    year: number;
    hoveredDay: number;
    validateSelectedDates(newSelectedDates: string[] | undefined): void;
    validateInitialDate(newInitialDate: string | undefined): void;
    validateDisabledDates(newDisabledDates: string[] | undefined): void;
    componentWillLoad(): void;
    onClickPreviousMonth: () => void;
    onClickNextMonth: () => void;
    isDayDisabled: (day: number) => boolean;
    onClickDay: (day: number) => void;
    isDayActive: (day: number) => boolean;
    onMouseEnter: (day: number) => void;
    onMouseLeave: (_day: number) => void;
    getSelectedRange(): import("../../types").SelectedRange;
    isDayInRange: (day: number) => boolean;
    isSelectedStartDay: (day: number) => boolean;
    isSelectedEndDay: (day: number) => boolean;
    isToday: (day: number) => boolean;
    isInsideDataRange: (day: number) => boolean;
    private isBackNavigationDisabled;
    private isNextNavigationDisabled;
    render(): any;
}
