import { CalendarConfig } from './types';
export type { CalendarConfig, WeekStart } from './types';
export declare class Calendar {
    readonly el: HTMLElement;
    private readonly gridId;
    private readonly labelId;
    private config;
    private viewYear;
    private viewMonth;
    private selected;
    private rangeStart;
    private rangeEnd;
    private hoverDate;
    private focusedDay;
    private isDestroyed;
    private headerEl;
    private gridEl;
    private readonly handleKeydown;
    private readonly handleGridClick;
    private readonly handleGridMouseover;
    private readonly handleGridMouseleave;
    constructor(config: CalendarConfig);
    getValue(): Date | null;
    setValue(date: Date | null): void;
    setRange(start: Date | null, end: Date | null): void;
    goToMonth(year: number, month: number): void;
    destroy(): void;
    private buildRootClass;
    private buildHeader;
    private buildGrid;
    private renderGrid;
    private buildDayGrid;
    private isDateDisabled;
    private applyRangeClasses;
    private updateRangeHighlight;
    private selectDate;
    private navigateMonth;
    private updateHeaderLabel;
    private onKeydown;
}
//# sourceMappingURL=index.d.ts.map