import { WcoDateInput, WcoDatepickerDisabledReason } from './datepicker.types';
type SupportedFormat = 'dd/MM/yyyy' | 'dd/MM/yyyy HH:mm' | 'yyyy-MM-dd' | "yyyy-MM-dd'T'HH:mm" | 'MM/yyyy' | 'yyyy-MM';
export declare function isValidDate(date: unknown): date is Date;
export declare function toDateOnly(date: Date): Date;
export declare function clampToMinute(date: Date): Date;
export declare function pad2(value: number): string;
export declare function formatDate(date: Date, format: SupportedFormat): string;
export declare function parseDate(value: string, format: SupportedFormat): Date | null;
export declare function coerceDate(value: WcoDateInput | null | undefined): Date | null;
export declare function toIsoDateKey(date: Date): string;
export declare function buildDisabledPredicate(options: {
    disableFuture: boolean;
    disablePast: boolean;
    minDate?: Date | null;
    maxDate?: Date | null;
    disableWeekends: boolean;
    disableHolidays: boolean;
    holidaySet: Set<string>;
    dateFilter?: ((date: Date) => boolean) | null;
}): (date: Date) => {
    disabled: boolean;
    reason?: WcoDatepickerDisabledReason;
};
export {};
//# sourceMappingURL=datepicker.utils.d.ts.map