import { PropType } from 'vue';
import { TypeDatePickerProps, TypeDateRangePickerProps } from './type';
export declare const DatePickerProps: {
    allowInput: BooleanConstructor;
    clearable: BooleanConstructor;
    disableDate: {
        type: PropType<import("./type").DisableDate>;
    };
    disabled: BooleanConstructor;
    enableTimePicker: BooleanConstructor;
    firstDayOfWeek: {
        type: NumberConstructor;
        validator(val: TypeDatePickerProps['firstDayOfWeek']): boolean;
    };
    format: {
        type: StringConstructor;
        default: any;
    };
    inputProps: {
        type: PropType<import("../input").TypeInputProps>;
    };
    mode: {
        type: PropType<"month" | "year" | "quarter" | "week" | "date">;
        default: "month" | "year" | "quarter" | "week" | "date";
        validator(val: TypeDatePickerProps['mode']): boolean;
    };
    placeholder: {
        type: PropType<string>;
        default: any;
    };
    popupProps: {
        type: PropType<import("../popup").TypePopupProps>;
    };
    prefixIcon: {
        type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    presets: {
        type: PropType<import("./type").PresetDate>;
    };
    presetsPlacement: {
        type: PropType<"left" | "top" | "bottom" | "right">;
        default: "left" | "top" | "bottom" | "right";
        validator(val: TypeDatePickerProps['presetsPlacement']): boolean;
    };
    status: {
        type: PropType<"error" | "default" | "success" | "warning">;
        validator(val: TypeDatePickerProps['status']): boolean;
    };
    suffixIcon: {
        type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    timePickerProps: {
        type: PropType<import("../time-picker").TypeTimePickerProps>;
    };
    tips: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    value: {
        type: PropType<import("./type").DateValue>;
        default: any;
    };
    defaultValue: {
        type: PropType<import("./type").DateValue>;
        default: string;
    };
    onBlur: PropType<(context: {
        value: import("./type").DateValue;
        e: FocusEvent;
    }) => void>;
    onChange: PropType<(value: import("./type").DateValue, context: {
        dayjsValue?: import("dayjs").Dayjs;
        trigger?: import("./type").DatePickerTriggerSource;
    }) => void>;
    onFocus: PropType<(context: {
        value: import("./type").DateValue;
        e: FocusEvent;
    }) => void>;
    onPick: PropType<(value: import("./type").DateValue) => void>;
};
export declare const DatePickerPanelProps: {
    onCellClick: PropType<(context: {
        date: Date;
        e: MouseEvent;
    }) => void>;
    onChange: PropType<(value: import("./type").DateValue, context: {
        dayjsValue?: import("dayjs").Dayjs;
        e?: MouseEvent;
        trigger?: import("./type").DatePickerTriggerSource;
    }) => void>;
    onConfirm: PropType<(context: {
        date: Date;
        e: MouseEvent;
    }) => void>;
    onMonthChange: PropType<(context: {
        month: number;
        date: Date;
        e?: MouseEvent;
        trigger: import("./type").DatePickerMonthChangeTrigger;
    }) => void>;
    onPanelClick: PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onPresetClick: PropType<(context: {
        preset: import("./type").PresetDate;
        e: MouseEvent;
    }) => void>;
    onTimeChange: PropType<(context: {
        time: string;
        date: Date;
        trigger: import("./type").DatePickerTimeChangeTrigger;
        e?: MouseEvent;
    }) => void>;
    onYearChange: PropType<(context: {
        year: number;
        date: Date;
        trigger: import("./type").DatePickerYearChangeTrigger;
        e?: MouseEvent;
    }) => void>;
};
export declare const DateRangePickerPanelProps: {
    onCellClick: PropType<(context: {
        date: Date[];
        partial: import("./type").DateRangePickerPartial;
        e: MouseEvent;
    }) => void>;
    onChange: PropType<(value: import("./type").DateRangeValue, context: {
        dayjsValue?: import("dayjs").Dayjs[];
        partial: import("./type").DateRangePickerPartial;
        e?: MouseEvent;
        trigger?: import("./type").DatePickerTriggerSource;
    }) => void>;
    onConfirm: PropType<(context: {
        date: Date[];
        e: MouseEvent;
    }) => void>;
    onMonthChange: PropType<(context: {
        month: number;
        date: Date[];
        partial: import("./type").DateRangePickerPartial;
        e?: MouseEvent;
        trigger: import("./type").DatePickerMonthChangeTrigger;
    }) => void>;
    onPanelClick: PropType<(context: {
        e: MouseEvent;
    }) => void>;
    onPresetClick: PropType<(context: {
        preset: import("./type").PresetDate;
        e: MouseEvent;
    }) => void>;
    onTimeChange: PropType<(context: {
        time: string;
        date: Date[];
        partial: import("./type").DateRangePickerPartial;
        trigger: import("./type").DatePickerTimeChangeTrigger;
        e?: MouseEvent;
    }) => void>;
    onYearChange: PropType<(context: {
        year: number;
        date: Date[];
        partial: import("./type").DateRangePickerPartial;
        trigger: import("./type").DatePickerYearChangeTrigger;
        e?: MouseEvent;
    }) => void>;
};
export declare const DateRangePickerProps: {
    allowInput: BooleanConstructor;
    clearable: BooleanConstructor;
    disableDate: {
        type: PropType<import("./type").DisableRangeDate>;
    };
    disabled: BooleanConstructor;
    enableTimePicker: BooleanConstructor;
    firstDayOfWeek: {
        type: NumberConstructor;
        validator(val: TypeDateRangePickerProps['firstDayOfWeek']): boolean;
    };
    format: {
        type: StringConstructor;
        default: string;
    };
    mode: {
        type: PropType<"month" | "year" | "quarter" | "week" | "date">;
        default: "month" | "year" | "quarter" | "week" | "date";
        validator(val: TypeDateRangePickerProps['mode']): boolean;
    };
    panelPreselection: {
        type: BooleanConstructor;
        default: boolean;
    };
    placeholder: {
        type: PropType<string | string[]>;
    };
    popupProps: {
        type: PropType<import("../popup").TypePopupProps>;
    };
    prefixIcon: {
        type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    presets: {
        type: PropType<import("./type").PresetRange>;
    };
    presetsPlacement: {
        type: PropType<"left" | "top" | "bottom" | "right">;
        default: "left" | "top" | "bottom" | "right";
        validator(val: TypeDateRangePickerProps['presetsPlacement']): boolean;
    };
    rangeInputProps: {
        type: PropType<import("../range-input").TypeRangeInputProps>;
    };
    separator: {
        type: StringConstructor;
        default: string;
    };
    status: {
        type: PropType<"error" | "default" | "success" | "warning">;
        validator(val: TypeDateRangePickerProps['status']): boolean;
    };
    suffixIcon: {
        type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
    };
    timePickerProps: {
        type: PropType<import("../time-picker").TypeTimePickerProps>;
    };
    tips: {
        type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
    };
    value: {
        type: PropType<import("./type").DateRangeValue>;
        default: any;
    };
    defaultValue: {
        type: PropType<import("./type").DateRangeValue>;
        default: () => TypeDateRangePickerProps['defaultValue'];
    };
    onBlur: PropType<(context: {
        value: import("./type").DateRangeValue;
        partial: import("./type").DateRangePickerPartial;
        e: FocusEvent;
    }) => void>;
    onChange: PropType<(value: import("./type").DateRangeValue, context: {
        dayjsValue?: import("dayjs").Dayjs[];
        trigger?: import("./type").DatePickerTriggerSource;
    }) => void>;
    onFocus: PropType<(context: {
        value: import("./type").DateRangeValue;
        partial: import("./type").DateRangePickerPartial;
        e: FocusEvent;
    }) => void>;
    onInput: PropType<(context: {
        input: string;
        value: import("./type").DateRangeValue;
        partial: import("./type").DateRangePickerPartial;
        e: InputEvent;
    }) => void>;
    onPick: PropType<(value: import("./type").DateValue, context: import("./type").PickContext) => void>;
};
declare const _default: {
    DatePickerProps: {
        allowInput: BooleanConstructor;
        clearable: BooleanConstructor;
        disableDate: {
            type: PropType<import("./type").DisableDate>;
        };
        disabled: BooleanConstructor;
        enableTimePicker: BooleanConstructor;
        firstDayOfWeek: {
            type: NumberConstructor;
            validator(val: number): boolean;
        };
        format: {
            type: StringConstructor;
            default: any;
        };
        inputProps: {
            type: PropType<import("../input").TypeInputProps>;
        };
        mode: {
            type: PropType<"month" | "year" | "quarter" | "week" | "date">;
            default: "month" | "year" | "quarter" | "week" | "date";
            validator(val: "month" | "year" | "quarter" | "week" | "date"): boolean;
        };
        placeholder: {
            type: PropType<string>;
            default: any;
        };
        popupProps: {
            type: PropType<import("../popup").TypePopupProps>;
        };
        prefixIcon: {
            type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        presets: {
            type: PropType<import("./type").PresetDate>;
        };
        presetsPlacement: {
            type: PropType<"left" | "top" | "bottom" | "right">;
            default: "left" | "top" | "bottom" | "right";
            validator(val: "left" | "top" | "bottom" | "right"): boolean;
        };
        status: {
            type: PropType<"error" | "default" | "success" | "warning">;
            validator(val: "error" | "default" | "success" | "warning"): boolean;
        };
        suffixIcon: {
            type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        timePickerProps: {
            type: PropType<import("../time-picker").TypeTimePickerProps>;
        };
        tips: {
            type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        };
        value: {
            type: PropType<import("./type").DateValue>;
            default: any;
        };
        defaultValue: {
            type: PropType<import("./type").DateValue>;
            default: string;
        };
        onBlur: PropType<(context: {
            value: import("./type").DateValue;
            e: FocusEvent;
        }) => void>;
        onChange: PropType<(value: import("./type").DateValue, context: {
            dayjsValue?: import("dayjs").Dayjs;
            trigger?: import("./type").DatePickerTriggerSource;
        }) => void>;
        onFocus: PropType<(context: {
            value: import("./type").DateValue;
            e: FocusEvent;
        }) => void>;
        onPick: PropType<(value: import("./type").DateValue) => void>;
    };
    DatePickerPanelProps: {
        onCellClick: PropType<(context: {
            date: Date;
            e: MouseEvent;
        }) => void>;
        onChange: PropType<(value: import("./type").DateValue, context: {
            dayjsValue?: import("dayjs").Dayjs;
            e?: MouseEvent;
            trigger?: import("./type").DatePickerTriggerSource;
        }) => void>;
        onConfirm: PropType<(context: {
            date: Date;
            e: MouseEvent;
        }) => void>;
        onMonthChange: PropType<(context: {
            month: number;
            date: Date;
            e?: MouseEvent;
            trigger: import("./type").DatePickerMonthChangeTrigger;
        }) => void>;
        onPanelClick: PropType<(context: {
            e: MouseEvent;
        }) => void>;
        onPresetClick: PropType<(context: {
            preset: import("./type").PresetDate;
            e: MouseEvent;
        }) => void>;
        onTimeChange: PropType<(context: {
            time: string;
            date: Date;
            trigger: import("./type").DatePickerTimeChangeTrigger;
            e?: MouseEvent;
        }) => void>;
        onYearChange: PropType<(context: {
            year: number;
            date: Date;
            trigger: import("./type").DatePickerYearChangeTrigger;
            e?: MouseEvent;
        }) => void>;
    };
    DateRangePickerPanelProps: {
        onCellClick: PropType<(context: {
            date: Date[];
            partial: import("./type").DateRangePickerPartial;
            e: MouseEvent;
        }) => void>;
        onChange: PropType<(value: import("./type").DateRangeValue, context: {
            dayjsValue?: import("dayjs").Dayjs[];
            partial: import("./type").DateRangePickerPartial;
            e?: MouseEvent;
            trigger?: import("./type").DatePickerTriggerSource;
        }) => void>;
        onConfirm: PropType<(context: {
            date: Date[];
            e: MouseEvent;
        }) => void>;
        onMonthChange: PropType<(context: {
            month: number;
            date: Date[];
            partial: import("./type").DateRangePickerPartial;
            e?: MouseEvent;
            trigger: import("./type").DatePickerMonthChangeTrigger;
        }) => void>;
        onPanelClick: PropType<(context: {
            e: MouseEvent;
        }) => void>;
        onPresetClick: PropType<(context: {
            preset: import("./type").PresetDate;
            e: MouseEvent;
        }) => void>;
        onTimeChange: PropType<(context: {
            time: string;
            date: Date[];
            partial: import("./type").DateRangePickerPartial;
            trigger: import("./type").DatePickerTimeChangeTrigger;
            e?: MouseEvent;
        }) => void>;
        onYearChange: PropType<(context: {
            year: number;
            date: Date[];
            partial: import("./type").DateRangePickerPartial;
            trigger: import("./type").DatePickerYearChangeTrigger;
            e?: MouseEvent;
        }) => void>;
    };
    DateRangePickerProps: {
        allowInput: BooleanConstructor;
        clearable: BooleanConstructor;
        disableDate: {
            type: PropType<import("./type").DisableRangeDate>;
        };
        disabled: BooleanConstructor;
        enableTimePicker: BooleanConstructor;
        firstDayOfWeek: {
            type: NumberConstructor;
            validator(val: number): boolean;
        };
        format: {
            type: StringConstructor;
            default: string;
        };
        mode: {
            type: PropType<"month" | "year" | "quarter" | "week" | "date">;
            default: "month" | "year" | "quarter" | "week" | "date";
            validator(val: "month" | "year" | "quarter" | "week" | "date"): boolean;
        };
        panelPreselection: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: PropType<string | string[]>;
        };
        popupProps: {
            type: PropType<import("../popup").TypePopupProps>;
        };
        prefixIcon: {
            type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        presets: {
            type: PropType<import("./type").PresetRange>;
        };
        presetsPlacement: {
            type: PropType<"left" | "top" | "bottom" | "right">;
            default: "left" | "top" | "bottom" | "right";
            validator(val: "left" | "top" | "bottom" | "right"): boolean;
        };
        rangeInputProps: {
            type: PropType<import("../range-input").TypeRangeInputProps>;
        };
        separator: {
            type: StringConstructor;
            default: string;
        };
        status: {
            type: PropType<"error" | "default" | "success" | "warning">;
            validator(val: "error" | "default" | "success" | "warning"): boolean;
        };
        suffixIcon: {
            type: PropType<(h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue>;
        };
        timePickerProps: {
            type: PropType<import("../time-picker").TypeTimePickerProps>;
        };
        tips: {
            type: PropType<string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue)>;
        };
        value: {
            type: PropType<import("./type").DateRangeValue>;
            default: any;
        };
        defaultValue: {
            type: PropType<import("./type").DateRangeValue>;
            default: () => import("./type").DateRangeValue;
        };
        onBlur: PropType<(context: {
            value: import("./type").DateRangeValue;
            partial: import("./type").DateRangePickerPartial;
            e: FocusEvent;
        }) => void>;
        onChange: PropType<(value: import("./type").DateRangeValue, context: {
            dayjsValue?: import("dayjs").Dayjs[];
            trigger?: import("./type").DatePickerTriggerSource;
        }) => void>;
        onFocus: PropType<(context: {
            value: import("./type").DateRangeValue;
            partial: import("./type").DateRangePickerPartial;
            e: FocusEvent;
        }) => void>;
        onInput: PropType<(context: {
            input: string;
            value: import("./type").DateRangeValue;
            partial: import("./type").DateRangePickerPartial;
            e: InputEvent;
        }) => void>;
        onPick: PropType<(value: import("./type").DateValue, context: import("./type").PickContext) => void>;
    };
};
export default _default;
