@tongziyang/uni-calendar-plugin
Version:
A comprehensive calendar plugin for uniapp with support for Gregorian and Lunar calendars, date selection, hotel booking, check-in functionality, and more.
1,108 lines (1,107 loc) • 39 kB
TypeScript
/// <reference types="shims-vue" />
import { PropType } from 'vue';
import { formatDate } from '../utils/date';
import { CalendarMode, DateInfo, PriceData } from '../types/index';
declare const _default: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
modelValue: {
type: PropType<Date | [Date, Date] | [Date, null]>;
default: () => Date;
};
mode: {
type: PropType<CalendarMode>;
default: string;
validator: (value: string) => boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
description: string;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<PriceData>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
autoHeight: {
type: BooleanConstructor;
default: boolean;
};
}>, {
currentDate: import("vue").Ref<Date, Date>;
currentYear: import("vue").ComputedRef<number>;
currentMonth: import("vue").ComputedRef<number>;
showYearPicker: import("vue").Ref<boolean, boolean>;
showMonthPicker: import("vue").Ref<boolean, boolean>;
yearRange: import("vue").ComputedRef<number[]>;
innerValue: import("vue").ComputedRef<Date>;
rangeStart: import("vue").ComputedRef<Date | undefined>;
rangeEnd: import("vue").ComputedRef<Date | undefined>;
formatDate: typeof formatDate;
handleDayClick: (event: MouseEvent, day: DateInfo) => void;
handleYearSelect: (year: number) => void;
handleMonthSelect: (month: number) => void;
handleYeardivMonthClick: (month: number) => void;
handlePrev: () => void;
handleNext: () => void;
goToToday: () => void;
goToDate: (date: Date) => void;
handleCheckIn: (date: Date) => void;
handleOutsideClick: () => void;
toggleYearPicker: (event: MouseEvent) => void;
toggleMonthPicker: (event: MouseEvent) => void;
swiperRef: import("vue").Ref<null, null>;
weekSwiperRef: import("vue").Ref<null, null>;
daySwiperRef: import("vue").Ref<null, null>;
swiperCurrent: import("vue").Ref<number, number>;
swiperMonths: import("vue").ComputedRef<{
date: Date;
year: number;
month: number;
}[]>;
swiperWeeks: import("vue").ComputedRef<{
date: Date;
}[]>;
swiperDays: import("vue").ComputedRef<{
date: Date;
}[]>;
handleSwiperChange: (direction: 'prev' | 'next') => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'update:modelValue': (value: Date | [Date, Date] | [Date, null]) => true;
'date-click': (date: Date) => true;
'range-change': (range: [Date, Date]) => true;
'month-change': (date: Date) => true;
'check-in': (date: Date) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
modelValue: {
type: PropType<Date | [Date, Date] | [Date, null]>;
default: () => Date;
};
mode: {
type: PropType<CalendarMode>;
default: string;
validator: (value: string) => boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
description: string;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<PriceData>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
autoHeight: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onCheck-in"?: ((date: Date) => any) | undefined;
"onUpdate:modelValue"?: ((value: Date | [Date, Date] | [Date, null]) => any) | undefined;
"onDate-click"?: ((date: Date) => any) | undefined;
"onRange-change"?: ((range: [Date, Date]) => any) | undefined;
"onMonth-change"?: ((date: Date) => any) | undefined;
}>, {
modelValue: Date | [Date, Date] | [Date, null];
mode: CalendarMode;
showLunar: boolean;
showHoliday: boolean;
showPrice: boolean;
priceData: PriceData;
checkInData: Record<string, boolean>;
rangeMode: boolean;
firstDayOfWeek: 0 | 1;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
autoHeight: boolean;
allowClickOtherMonthDay: boolean;
}, {}, {
CalendarHeader: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
currentYear: {
type: NumberConstructor;
required: true;
};
currentMonth: {
type: NumberConstructor;
required: true;
};
mode: {
type: PropType<CalendarMode>;
default: string;
};
showYearPicker: {
type: BooleanConstructor;
default: boolean;
};
showMonthPicker: {
type: BooleanConstructor;
default: boolean;
};
}>, {
handlePrev: () => void;
handleNext: () => void;
goToToday: () => void;
toggleYearPicker: (event: Event) => void;
toggleMonthPicker: (event: Event) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("prev" | "next" | "today" | "toggle-year-picker" | "toggle-month-picker")[], "prev" | "next" | "today" | "toggle-year-picker" | "toggle-month-picker", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
currentYear: {
type: NumberConstructor;
required: true;
};
currentMonth: {
type: NumberConstructor;
required: true;
};
mode: {
type: PropType<CalendarMode>;
default: string;
};
showYearPicker: {
type: BooleanConstructor;
default: boolean;
};
showMonthPicker: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
onPrev?: ((...args: any[]) => any) | undefined;
onNext?: ((...args: any[]) => any) | undefined;
onToday?: ((...args: any[]) => any) | undefined;
"onToggle-year-picker"?: ((...args: any[]) => any) | undefined;
"onToggle-month-picker"?: ((...args: any[]) => any) | undefined;
}>, {
mode: CalendarMode;
showYearPicker: boolean;
showMonthPicker: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
YearPicker: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
currentYear: {
type: NumberConstructor;
required: true;
};
range: {
type: PropType<number | number[]>;
default: number;
};
}>, {
yearRange: import("vue").ComputedRef<number[]>;
handleYearSelect: (year: number) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "year-select"[], "year-select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
currentYear: {
type: NumberConstructor;
required: true;
};
range: {
type: PropType<number | number[]>;
default: number;
};
}>> & Readonly<{
"onYear-select"?: ((...args: any[]) => any) | undefined;
}>, {
range: number | number[];
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
MonthPicker: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
currentMonth: {
type: NumberConstructor;
required: true;
};
}>, {
handleMonthSelect: (month: number) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "month-select"[], "month-select", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
currentMonth: {
type: NumberConstructor;
required: true;
};
}>> & Readonly<{
"onMonth-select"?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
MonthView: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
month: {
type: NumberConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>, {
monthDays: import("vue").ComputedRef<DateInfo[]>;
getDayClass: (day: DateInfo) => string;
handleDayClick: (event: DateInfo | MouseEvent, dayInfo?: DateInfo | undefined) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'day-click': (event: MouseEvent, day: DateInfo) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
month: {
type: NumberConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((event: MouseEvent, day: DateInfo) => any) | undefined;
}>, {
showLunar: boolean;
showHoliday: boolean;
showPrice: boolean;
priceData: Record<string, number>;
checkInData: Record<string, boolean>;
rangeMode: boolean;
firstDayOfWeek: 0 | 1;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
selectedDate: Date;
rangeStart: Date;
rangeEnd: Date;
allowClickOtherMonthDay: boolean;
}, {}, {
WeekHeader: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
abbreviated: {
type: BooleanConstructor;
default: boolean;
};
}>, {
weekDays: import("vue").ComputedRef<string[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
abbreviated: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{}>, {
firstDayOfWeek: 0 | 1;
abbreviated: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DayCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>, {
dayClass: import("vue").ComputedRef<{
'uni-calendar__day--not-current-month': boolean;
'uni-calendar__day--today': boolean;
'uni-calendar__day--selected': boolean;
'uni-calendar__day--in-range': boolean | undefined;
'uni-calendar__day--range-start': boolean | undefined;
'uni-calendar__day--range-end': boolean | undefined;
'uni-calendar__day--weekend': boolean | undefined;
'uni-calendar__day--holiday': boolean | undefined;
'uni-calendar__day--rest-day': boolean | undefined;
'uni-calendar__day--work-day': boolean | undefined;
'uni-calendar__day--checked-in': boolean | undefined;
'uni-calendar__day--disabled': boolean;
'uni-calendar__day--lunar-first-day': boolean;
'uni-calendar__day--solar-term': boolean | "" | undefined;
}>;
handleClick: (event: MouseEvent, day: DateInfo) => void;
handleTouchStart: (event: MouseEvent | TouchEvent) => void;
handleTouchEnd: (event: MouseEvent | TouchEvent) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'day-click': (event: MouseEvent, day: DateInfo) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((event: MouseEvent, day: DateInfo) => any) | undefined;
}>, {
showLunar: boolean;
showPrice: boolean;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
WeekView: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>, {
weekDays: import("vue").ComputedRef<DateInfo[]>;
getDayClass: (day: DateInfo) => string;
handleDayClick: (event: DateInfo | MouseEvent, dayInfo?: DateInfo | undefined) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "day-click"[], "day-click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
rangeMode: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((...args: any[]) => any) | undefined;
}>, {
showLunar: boolean;
showHoliday: boolean;
showPrice: boolean;
priceData: Record<string, number>;
checkInData: Record<string, boolean>;
rangeMode: boolean;
firstDayOfWeek: 0 | 1;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
selectedDate: Date;
rangeStart: Date;
rangeEnd: Date;
allowClickOtherMonthDay: boolean;
}, {}, {
WeekHeader: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
abbreviated: {
type: BooleanConstructor;
default: boolean;
};
}>, {
weekDays: import("vue").ComputedRef<string[]>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
validator: (value: number) => boolean;
};
abbreviated: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{}>, {
firstDayOfWeek: 0 | 1;
abbreviated: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DayCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>, {
dayClass: import("vue").ComputedRef<{
'uni-calendar__day--not-current-month': boolean;
'uni-calendar__day--today': boolean;
'uni-calendar__day--selected': boolean;
'uni-calendar__day--in-range': boolean | undefined;
'uni-calendar__day--range-start': boolean | undefined;
'uni-calendar__day--range-end': boolean | undefined;
'uni-calendar__day--weekend': boolean | undefined;
'uni-calendar__day--holiday': boolean | undefined;
'uni-calendar__day--rest-day': boolean | undefined;
'uni-calendar__day--work-day': boolean | undefined;
'uni-calendar__day--checked-in': boolean | undefined;
'uni-calendar__day--disabled': boolean;
'uni-calendar__day--lunar-first-day': boolean;
'uni-calendar__day--solar-term': boolean | "" | undefined;
}>;
handleClick: (event: MouseEvent, day: DateInfo) => void;
handleTouchStart: (event: MouseEvent | TouchEvent) => void;
handleTouchEnd: (event: MouseEvent | TouchEvent) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'day-click': (event: MouseEvent, day: DateInfo) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((event: MouseEvent, day: DateInfo) => any) | undefined;
}>, {
showLunar: boolean;
showPrice: boolean;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DayView: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: NumberConstructor;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>, {
weekDays: import("vue").ComputedRef<string[]>;
dayInfo: import("vue").ComputedRef<DateInfo>;
getDayClass: (day: DateInfo) => string;
handleDayClick: (event: DateInfo | MouseEvent, dayInfo?: DateInfo | undefined) => void;
handleCheckIn: (date: Date) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("day-click" | "check-in")[], "day-click" | "check-in", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: NumberConstructor;
default: number;
validator: (value: number) => boolean;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showHoliday: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
priceData: {
type: PropType<Record<string, number>>;
default: () => {};
};
checkInData: {
type: PropType<Record<string, boolean>>;
default: () => {};
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
allowClickOtherMonthDay: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((...args: any[]) => any) | undefined;
"onCheck-in"?: ((...args: any[]) => any) | undefined;
}>, {
showLunar: boolean;
showHoliday: boolean;
showPrice: boolean;
priceData: Record<string, number>;
checkInData: Record<string, boolean>;
firstDayOfWeek: number;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
selectedDate: Date;
allowClickOtherMonthDay: boolean;
}, {}, {
DayCell: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>, {
dayClass: import("vue").ComputedRef<{
'uni-calendar__day--not-current-month': boolean;
'uni-calendar__day--today': boolean;
'uni-calendar__day--selected': boolean;
'uni-calendar__day--in-range': boolean | undefined;
'uni-calendar__day--range-start': boolean | undefined;
'uni-calendar__day--range-end': boolean | undefined;
'uni-calendar__day--weekend': boolean | undefined;
'uni-calendar__day--holiday': boolean | undefined;
'uni-calendar__day--rest-day': boolean | undefined;
'uni-calendar__day--work-day': boolean | undefined;
'uni-calendar__day--checked-in': boolean | undefined;
'uni-calendar__day--disabled': boolean;
'uni-calendar__day--lunar-first-day': boolean;
'uni-calendar__day--solar-term': boolean | "" | undefined;
}>;
handleClick: (event: MouseEvent, day: DateInfo) => void;
handleTouchStart: (event: MouseEvent | TouchEvent) => void;
handleTouchEnd: (event: MouseEvent | TouchEvent) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
'day-click': (event: MouseEvent, day: DateInfo) => true;
}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
day: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
disabledDate: {
type: PropType<(date: Date) => boolean>;
default: () => null;
};
highlightWeekend: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onDay-click"?: ((event: MouseEvent, day: DateInfo) => any) | undefined;
}>, {
showLunar: boolean;
showPrice: boolean;
disabledDate: (date: Date) => boolean;
highlightWeekend: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
DayDetail: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
dayInfo: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
}>, {
formattedDate: import("vue").ComputedRef<string>;
handleCheckIn: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "check-in"[], "check-in", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
date: {
type: DateConstructor;
required: true;
};
dayInfo: {
type: PropType<DateInfo>;
required: true;
};
showLunar: {
type: BooleanConstructor;
default: boolean;
};
showPrice: {
type: BooleanConstructor;
default: boolean;
};
}>> & Readonly<{
"onCheck-in"?: ((...args: any[]) => any) | undefined;
}>, {
showLunar: boolean;
showPrice: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
YearView: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
selectedMonth: {
type: NumberConstructor;
default: number;
};
}>, {
handleMonthClick: (month: number) => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "month-click"[], "month-click", import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
selectedMonth: {
type: NumberConstructor;
default: number;
};
}>> & Readonly<{
"onMonth-click"?: ((...args: any[]) => any) | undefined;
}>, {
selectedMonth: number;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
CalendarSwiper: import("vue").DefineComponent<{}, {
swiperRef: import("vue").Ref<HTMLElement | null, HTMLElement | null>;
touchStart: (e: TouchEvent) => void;
touchMove: (e: TouchEvent) => void;
touchEnd: () => void;
mouseDown: (e: MouseEvent) => void;
resetSwiper: () => void;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("swipe-left" | "swipe-right")[], "swipe-left" | "swipe-right", import("vue").PublicProps, Readonly<{}> & Readonly<{
"onSwipe-left"?: ((...args: any[]) => any) | undefined;
"onSwipe-right"?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
MonthMini: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
month: {
type: NumberConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
};
}>, {
weekDays: import("vue").ComputedRef<string[]>;
monthDays: import("vue").ComputedRef<DateInfo[][]>;
getDayClass: (day: DateInfo | undefined) => {
'month-mini__day--not-current-month'?: undefined;
'month-mini__day--today'?: undefined;
'month-mini__day--selected'?: undefined;
'month-mini__day--in-range'?: undefined;
'month-mini__day--range-start'?: undefined;
'month-mini__day--range-end'?: undefined;
'month-mini__day--weekend'?: undefined;
} | {
'month-mini__day--not-current-month': boolean;
'month-mini__day--today': boolean;
'month-mini__day--selected': boolean;
'month-mini__day--in-range': boolean | undefined;
'month-mini__day--range-start': boolean | undefined;
'month-mini__day--range-end': boolean | undefined;
'month-mini__day--weekend': boolean | undefined;
};
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
year: {
type: NumberConstructor;
required: true;
};
month: {
type: NumberConstructor;
required: true;
};
selectedDate: {
type: DateConstructor;
default: null;
};
rangeStart: {
type: DateConstructor;
default: null;
};
rangeEnd: {
type: DateConstructor;
default: null;
};
firstDayOfWeek: {
type: PropType<0 | 1>;
default: number;
};
}>> & Readonly<{}>, {
firstDayOfWeek: 0 | 1;
selectedDate: Date;
rangeStart: Date;
rangeEnd: Date;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;