import { FromToRange } from '../components/commonTypes'; import { default as DateUtil } from '../utils/DateUtil'; import { ToRefs } from 'vue'; export type Day = { date: Date; timestamp: number; dateNumber: number; isFaded: boolean; }; export type DisableDateCheckFunction = (date: Date) => boolean; export type DatesAvailabilityConfig = Partial<{ dates: Array; ranges: Array>; custom: DisableDateCheckFunction; } & FromToRange>; type UseCalendarProps = ToRefs<{ pageDate: Date; language: string; isMondayFirst: boolean; disabledDates?: DatesAvailabilityConfig; availableDates?: DatesAvailabilityConfig; }>; export declare const useCalendar: (props: UseCalendarProps) => { pageDate: import('vue').Ref<{ toString: () => string; toDateString: () => string; toTimeString: () => string; toLocaleString: { (): string; (locales?: string | string[], options?: Intl.DateTimeFormatOptions): string; (locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string; }; toLocaleDateString: { (): string; (locales?: string | string[], options?: Intl.DateTimeFormatOptions): string; (locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string; }; toLocaleTimeString: { (): string; (locales?: string | string[], options?: Intl.DateTimeFormatOptions): string; (locales?: Intl.LocalesArgument, options?: Intl.DateTimeFormatOptions): string; }; valueOf: () => number; getTime: () => number; getFullYear: () => number; getUTCFullYear: () => number; getMonth: () => number; getUTCMonth: () => number; getDate: () => number; getUTCDate: () => number; getDay: () => number; getUTCDay: () => number; getHours: () => number; getUTCHours: () => number; getMinutes: () => number; getUTCMinutes: () => number; getSeconds: () => number; getUTCSeconds: () => number; getMilliseconds: () => number; getUTCMilliseconds: () => number; getTimezoneOffset: () => number; setTime: (time: number) => number; setMilliseconds: (ms: number) => number; setUTCMilliseconds: (ms: number) => number; setSeconds: (sec: number, ms?: number) => number; setUTCSeconds: (sec: number, ms?: number) => number; setMinutes: (min: number, sec?: number, ms?: number) => number; setUTCMinutes: (min: number, sec?: number, ms?: number) => number; setHours: (hours: number, min?: number, sec?: number, ms?: number) => number; setUTCHours: (hours: number, min?: number, sec?: number, ms?: number) => number; setDate: (date: number) => number; setUTCDate: (date: number) => number; setMonth: (month: number, date?: number) => number; setUTCMonth: (month: number, date?: number) => number; setFullYear: (year: number, month?: number, date?: number) => number; setUTCFullYear: (year: number, month?: number, date?: number) => number; toUTCString: () => string; toISOString: () => string; toJSON: (key?: any) => string; [Symbol.toPrimitive]: { (hint: "default"): string; (hint: "string"): string; (hint: "number"): number; (hint: string): string | number; }; }>; dayNames: import('vue').ComputedRef; days: import('vue').ComputedRef; isNextPageDisabled: import('vue').ComputedRef; isPrevPageDisabled: import('vue').ComputedRef; nextPage: () => boolean; prevPage: () => boolean; isDisabledDate: import('vue').ComputedRef<(date: Date) => boolean>; }; export declare const createDay: (date: Date, isFaded: boolean) => Day; /** * returns full 42 days (1 row = 7 days) in specified pageDate's month, followed by the pre-days and post-days of the month * @param pageDate * @param isMondayFirst * @param dateUtil * @returns */ export declare const createDays: (pageDate: Date, isMondayFirst: boolean, dateUtil: DateUtil) => Day[]; export declare const createDisableDateCheckFunction: (datesAvailabilityConfig: DatesAvailabilityConfig, dateUtil: DateUtil) => DisableDateCheckFunction; export declare const createEnableDateCheckFunction: (datesAvailabilityConfig: DatesAvailabilityConfig, dateUtil: DateUtil) => DisableDateCheckFunction; export {};