import { CreatePresaleOrder, CalendarRes } from '../type';
import { default as dayjs } from 'dayjs';

declare function canChooseDatesFun(date: string, calendarInfoMap: CalendarRes): void;
declare function isDisabledDay(date: string, calendarInfoMap: CalendarRes): boolean | undefined;
declare function onInitDataChange(initData: CreatePresaleOrder): void;
declare function setSelectRoom(data: any): void;
export default function (): {
    canChooseDatesFun: typeof canChooseDatesFun;
    isDisabledDay: typeof isDisabledDay;
    onInitDataChange: typeof onInitDataChange;
    setSelectRoom: typeof setSelectRoom;
    editData: import('vue').Ref<{
        cusName?: string | undefined;
        ntwId: number;
        checkinDate?: string | undefined;
        remark?: string | undefined;
        roomTypeId?: string | undefined;
        cusPhone: string;
        verificationCode: string;
        checkoutDate?: string | undefined;
        presaleId: number;
        bookingCount: number;
        reserveDate?: string | undefined;
        remainingNights?: number | undefined;
        availableEndDate?: string | undefined;
        availableStartDate?: string | undefined;
        cusId?: number | undefined;
        boolIsRoom?: boolean | undefined;
        packageName?: string | undefined;
        boolRelateRoom?: boolean | undefined;
        checkDate?: {
            clone: () => dayjs.Dayjs;
            isValid: () => boolean;
            year: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            month: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            date: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            day: {
                (): 0 | 1 | 2 | 3 | 4 | 5 | 6;
                (value: number): dayjs.Dayjs;
            };
            hour: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            minute: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            second: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            millisecond: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            set: (unit: dayjs.UnitType, value: number) => dayjs.Dayjs;
            get: (unit: dayjs.UnitType) => number;
            add: (value: number, unit?: dayjs.ManipulateType) => dayjs.Dayjs;
            subtract: (value: number, unit?: dayjs.ManipulateType) => dayjs.Dayjs;
            startOf: {
                (unit: dayjs.OpUnitType): dayjs.Dayjs;
                (unit: dayjs.OpUnitType | "isoWeek"): dayjs.Dayjs;
            };
            endOf: {
                (unit: dayjs.OpUnitType): dayjs.Dayjs;
                (unit: dayjs.OpUnitType | "isoWeek"): dayjs.Dayjs;
            };
            format: (template?: string) => string;
            diff: (date?: dayjs.ConfigType, unit?: dayjs.QUnitType | dayjs.OpUnitType, float?: boolean) => number;
            valueOf: () => number;
            unix: () => number;
            daysInMonth: () => number;
            toDate: () => Date;
            toJSON: () => string;
            toISOString: () => string;
            toString: () => string;
            utcOffset: () => number;
            isBefore: {
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean;
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType | "isoWeek"): boolean;
            };
            isSame: {
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean;
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType | "isoWeek"): boolean;
            };
            isAfter: {
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType): boolean;
                (date?: dayjs.ConfigType, unit?: dayjs.OpUnitType | "isoWeek"): boolean;
            };
            locale: {
                (): string;
                (preset: string | ILocale, object?: Partial<ILocale>): dayjs.Dayjs;
            };
            isoWeekYear: () => number;
            isoWeek: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
            isoWeekday: {
                (): number;
                (value: number): dayjs.Dayjs;
            };
        }[] | undefined;
        markupPrice?: number | undefined;
        bookingType?: number | undefined;
        boolSplit?: boolean | undefined;
        payWay?: string | undefined;
        boolOnlineCashier?: boolean | undefined;
        promotionChannel: number;
        boolMoreMaxInv?: boolean | undefined;
    }>;
    canChooseDates: import('vue').Ref<string[]>;
    selectRoom: import('vue').Ref<{
        startDate: string;
        endDate: string;
        name: string;
        id: string;
        boolMoreMaxInv: boolean;
    }>;
    calendarSelectRef: import('vue').Ref<any>;
    newCheckDate: import('vue').Ref<any>;
};
export {};
