import type { PropType } from 'vue'; import type { ModelWrapper, ModelValueProp, ModelValidatorProp, Elements } from "#composables"; import type { TupleOf, Theme, Size, Radius, Spacing } from "#utilities"; import type { CalendarModelDate, Weekday } from './Calendar/public.types'; import type { CalendarDate } from './Calendar/public.types'; declare function isValidCalendarDate(date: CalendarDate): boolean; declare const _default: typeof __VLS_export; export default _default; declare const __VLS_export: import("vue").DefineComponent; default: null; }; modelValue: { type: ModelValueProp; default: (props: { value: CalendarModelDate; }) => CalendarModelDate; }; modelModifiers: { type: ObjectConstructor; default: () => {}; }; "onUpdate:modelValue": FunctionConstructor; validator: ModelValidatorProp; eagerValidation: BooleanConstructor; elements: PropType; locale: { type: PropType; default: () => Intl.LocalesArgument; }; labels: { type: PropType<{ months: TupleOf; shortMonths: TupleOf; shortWeekdays: TupleOf; }>; default: () => { months?: TupleOf; shortMonths?: TupleOf; shortWeekdays?: TupleOf; } | undefined; }; firstWeekday: { type: PropType; default: () => 0 | 1 | 2 | 3 | 4 | 5 | 6; validator: (n: number) => boolean; }; min: { type: PropType; default: string; validator: typeof isValidCalendarDate; }; max: { type: PropType; default: string; validator: typeof isValidCalendarDate; }; selectedMonth: { type: StringConstructor; validator(v: unknown): boolean; }; selectedYear: { type: StringConstructor; validator(v: unknown): boolean; }; time: { type: (BooleanConstructor | StringConstructor)[]; validator: (v: string) => boolean; }; timeFormat: { type: PropType<"12" | "24">; default: () => "12" | "24"; validator: (v: string) => boolean; }; hours: { type: PropType<{ min?: number; max?: number; step?: number; }>; default: () => { min: number; max: number; step: number; }; validator(h: { min?: number; max?: number; step?: number; }): boolean; }; minutes: { type: PropType<{ min?: number; max?: number; step?: number; }>; default: () => { min: number; max: number; step: number; }; validator(m: { min?: number; max?: number; step?: number; }): boolean; }; disabledDates: PropType<(CalendarDate | [CalendarDate, CalendarDate])[]>; enabledDates: PropType<(CalendarDate | [CalendarDate, CalendarDate])[]>; disabledWeekdays: { type: PropType; validator: (v: number[]) => boolean; }; disabled: BooleanConstructor; validationDelay: { type: NumberConstructor; default: () => number; }; validationCooldown: { type: NumberConstructor; default: () => number; }; descendant: BooleanConstructor; theme: { type: PropType; default: (props: { descendant?: boolean; }) => "brand" | "user" | "ok" | "info" | "warn" | "danger" | "neutral" | undefined; validator: /** * @template { string } T * @overload * @param { T } value * @returns { T extends ThemeAlias ? true : false } */ (value: string) => false; }; size: { type: PropType; default: (props: { descendant?: boolean; }) => Size | undefined; validator: import("#utilities").IsValidSize; }; radius: { type: PropType; default: (props: { descendant?: boolean; }) => Radius | undefined; validator: import("#utilities").IsValidRadius; }; spacing: { type: PropType; default: (props: { descendant?: boolean; }) => Spacing | undefined; validator: import("#utilities").IsValidSpacing; }; }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly; default: null; }; modelValue: { type: ModelValueProp; default: (props: { value: CalendarModelDate; }) => CalendarModelDate; }; modelModifiers: { type: ObjectConstructor; default: () => {}; }; "onUpdate:modelValue": FunctionConstructor; validator: ModelValidatorProp; eagerValidation: BooleanConstructor; elements: PropType; locale: { type: PropType; default: () => Intl.LocalesArgument; }; labels: { type: PropType<{ months: TupleOf; shortMonths: TupleOf; shortWeekdays: TupleOf; }>; default: () => { months?: TupleOf; shortMonths?: TupleOf; shortWeekdays?: TupleOf; } | undefined; }; firstWeekday: { type: PropType; default: () => 0 | 1 | 2 | 3 | 4 | 5 | 6; validator: (n: number) => boolean; }; min: { type: PropType; default: string; validator: typeof isValidCalendarDate; }; max: { type: PropType; default: string; validator: typeof isValidCalendarDate; }; selectedMonth: { type: StringConstructor; validator(v: unknown): boolean; }; selectedYear: { type: StringConstructor; validator(v: unknown): boolean; }; time: { type: (BooleanConstructor | StringConstructor)[]; validator: (v: string) => boolean; }; timeFormat: { type: PropType<"12" | "24">; default: () => "12" | "24"; validator: (v: string) => boolean; }; hours: { type: PropType<{ min?: number; max?: number; step?: number; }>; default: () => { min: number; max: number; step: number; }; validator(h: { min?: number; max?: number; step?: number; }): boolean; }; minutes: { type: PropType<{ min?: number; max?: number; step?: number; }>; default: () => { min: number; max: number; step: number; }; validator(m: { min?: number; max?: number; step?: number; }): boolean; }; disabledDates: PropType<(CalendarDate | [CalendarDate, CalendarDate])[]>; enabledDates: PropType<(CalendarDate | [CalendarDate, CalendarDate])[]>; disabledWeekdays: { type: PropType; validator: (v: number[]) => boolean; }; disabled: BooleanConstructor; validationDelay: { type: NumberConstructor; default: () => number; }; validationCooldown: { type: NumberConstructor; default: () => number; }; descendant: BooleanConstructor; theme: { type: PropType; default: (props: { descendant?: boolean; }) => "brand" | "user" | "ok" | "info" | "warn" | "danger" | "neutral" | undefined; validator: /** * @template { string } T * @overload * @param { T } value * @returns { T extends ThemeAlias ? true : false } */ (value: string) => false; }; size: { type: PropType; default: (props: { descendant?: boolean; }) => Size | undefined; validator: import("#utilities").IsValidSize; }; radius: { type: PropType; default: (props: { descendant?: boolean; }) => Radius | undefined; validator: import("#utilities").IsValidRadius; }; spacing: { type: PropType; default: (props: { descendant?: boolean; }) => Spacing | undefined; validator: import("#utilities").IsValidSpacing; }; }>> & Readonly<{}>, { value: CalendarModelDate; size: Size; disabled: boolean; labels: { months: TupleOf; shortMonths: TupleOf; shortWeekdays: TupleOf; }; max: CalendarDate; min: CalendarDate; theme: "brand" | "user" | "ok" | "info" | "warn" | "danger" | "neutral"; radius: Radius; spacing: Spacing; modelValue: CalendarModelDate | import("#composables").Model | ModelWrapper; descendant: boolean; eagerValidation: boolean; validationDelay: number; validationCooldown: number; modelModifiers: Record; locale: Intl.LocalesArgument; firstWeekday: Weekday; timeFormat: "12" | "24"; hours: { min?: number; max?: number; step?: number; }; minutes: { min?: number; max?: number; step?: number; }; }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; //# sourceMappingURL=Calendar.vue.d.ts.map