import { YearlessDate, YearlessDateMode } from '../types'; export declare function validateYearlessDate({ value, constraints, }: { value: YearlessDate | null; constraints: { required?: boolean; unavailable?: { dates?: YearlessDate[]; }; minDate?: YearlessDate | null; maxDate?: YearlessDate | null; }; }): boolean; /** * Return list of months * 🌍 localeName: name of local, * ✅ monthFormat: short, numeric, long (Default) */ export declare function getMonthNames({ locale, format, }: { locale: string; format: Intl.DateTimeFormatOptions["month"]; }): string[]; /** * Given a text value, parse it into a YearlessDate object and validate it. * @param value - The text value to parse. * @param mode - The mode of the date input. * @param removePlaceholder - The function to remove the placeholder from the text value. * @returns An object containing the parsed YearlessDate object, the input validity, and the input emptiness. */ export declare function parseInputValue(value: string, mode: YearlessDateMode, removePlaceholder: (value: string) => string): { value: YearlessDate | null; isInputValid: boolean; isInputEmpty: boolean; }; /** * Swap the mode of a date input. * @param inputString - The text value to swap the mode of. * @param previousMode - The previous mode of the date input. * @param mode - The new mode of the date input. * @returns The text value with the new mode. */ export declare function swapMode(inputString: string, previousMode: YearlessDateMode, mode: YearlessDateMode): string; /** * Convert a YearlessDate object into a text value. * @param day - The day of the date. * @param month - The month of the date. * @param mode - The mode of the date input. * @returns The stringified date. */ export declare function stringifyYearlessDate(day: number | string | null, month: number | string | null, mode: YearlessDateMode): string; /** * Get the number of days in a given month. * @param month - The month number (1-12) * @returns The number of days in the month */ export declare function getDaysInMonth(month: number): number; /** * Get months that don't have enough days for the given day. * @param day - The day number (1-31) * @returns Array of month numbers that don't have enough days for the given day */ export declare function getInvalidMonthsForDay(day: number): number[];