UNPKG

@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
/// <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;