import type { TypographyColorVariant, TypographyVariant } from '../Typography'; import { CalendarSize } from './types'; export declare function safeFormatLocale(localeValue: string): string; export declare function formatMonth(monthNumber: number, locale: string): string; export declare function getMonths(locale: string): string[]; export declare function getDayOfWeeks(lang: string, firstDayOfWeek: 0 | 1): string[]; export declare function getDaysInMonth(monthValue: number, yearValue: number, firstDayOfWeek: 0 | 1, daysInMonth?: 'fixed' | 'dynamic'): Date[]; export declare function getDayColor(options: { isDisabled: boolean; isSelected: boolean; showCurrentDate: boolean; currentDate: Date; }): TypographyColorVariant; export declare function getMonthColor(options: { showCurrentDate: boolean; currentMonth: number; selectedMonth: number; }): TypographyColorVariant; export declare function getYearColor(options: { showCurrentDate: boolean; currentYear: number; selectedYear: number; }): TypographyColorVariant; export declare function getDayVariant(options: { size: CalendarSize; currentDate: Date; }): TypographyVariant; export declare function getDisabled(currentDate: Date, excludeDate: ((date: Date) => boolean) | undefined): boolean; export declare function getSupposed(options: { allowDateRange: boolean; selectedStartDate?: Date | null; selectedEndDate?: Date | null; hoveredDate?: Date | null; externalInputStartRangeElement?: HTMLInputElement | null; externalInputEndRangeElement?: HTMLInputElement | null; }): boolean; export declare function getSelected(options: { allowDateRange: boolean; isSupposed: boolean; currentDate: Date; selectedDate?: Date | null; selectedStartDate?: Date | null; selectedEndDate?: Date | null; externalInputStartRangeElement?: HTMLInputElement | null; externalInputEndRangeElement?: HTMLInputElement | null; }): boolean; export declare function getRangeSelected(options: { allowDateRange: boolean; isSupposed: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; }): boolean; export declare function getRangeSelectedRight(options: { isSelected: boolean; isSupposed: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; }): boolean; export declare function getRangeSelectedLeft(options: { isSelected: boolean; isSupposed: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; }): boolean; export declare function getRangeSupposed(options: { allowDateRange: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; hoveredDate?: Date | null; externalInputStartRangeElement?: HTMLInputElement | null; externalInputEndRangeElement?: HTMLInputElement | null; }): boolean; export declare function getRangeSupposedRight(options: { allowDateRange: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; hoveredDate?: Date | null; externalInputStartRangeElement?: HTMLInputElement | null; externalInputEndRangeElement?: HTMLInputElement | null; }): boolean; export declare function getRangeSupposedLeft(options: { allowDateRange: boolean; currentDate: Date; selectedStartDate?: Date | null; selectedEndDate?: Date | null; hoveredDate?: Date | null; externalInputStartRangeElement?: HTMLInputElement | null; externalInputEndRangeElement?: HTMLInputElement | null; }): boolean; export declare function getDefaultMonthList(month: number, year: number): { month: number; year: number; }[]; export declare function formatDate(date?: Date | null): string; export declare function createDateFromString(dateString?: string | null): Date | null; export declare function getFocusedDay(options: { currentDate: Date; currentMonth: number; currentYear: number; }): boolean; export declare function incrementDay(focusedDay: Element | null, step?: number): string | null; export declare function decrementDay(focusedDay: Element | null, step?: number): string | null; export declare function normalizeDateToStartOfDayUTC(date: Date): Date;