import { ComputedRef, MaybeRef, Ref } from 'vue'; export type CLISODate = string; export type ISODate = CLISODate; export type CLAllowedDates = CLISODate[] | { end?: CLISODate | null; start?: CLISODate | null; } | ((date: CLISODate) => boolean); export type AllowedDates = CLAllowedDates; export interface CLCalendarCell { date: CLISODate | null; day: number | null; isDisabled: boolean; isOutsideMonth: boolean; } export type CalendarCell = CLCalendarCell; interface Input { allowedDates?: MaybeRef; appliedEnd?: Ref; appliedStart?: Ref; isRange?: MaybeRef; } interface Return { calendarGrid: ComputedRef; cancelDraft: () => void; clearDraft: () => void; currentDate: Ref; currentMonthLabel: ComputedRef; draftEnd: Ref; draftStart: Ref; formatDateToISO: (date: Date) => CLISODate; formatHumanDate: (iso: CLISODate) => string; formatLongDate: (iso: CLISODate) => string; formatShortNoYear: (iso: CLISODate) => string; formatShortWithYear: (iso: CLISODate) => string; getDayAriaLabel: (iso: CLISODate) => string; handleNextMonth: () => void; handlePrevMonth: () => void; initializeDraft: () => void; isDateDisabled: (iso: CLISODate) => boolean; isDraftEnd: (iso: CLISODate) => boolean; isDraftSameDay: (iso: CLISODate) => boolean; isDraftStart: (iso: CLISODate) => boolean; isInDraftRange: (iso: CLISODate) => boolean; isoToLocalDate: (iso: CLISODate) => Date; onDayClick: (iso: CLISODate | null) => void; rangeLabel: ComputedRef; setCalendarMonthToAppliedOrToday: () => void; weekDays: string[]; } export declare const useDatePicker: ({ allowedDates, appliedEnd, appliedStart, isRange }?: Input) => Return; export {};