import moment from 'moment';
declare type RangePickerValue = undefined[] | null[] | [moment.Moment] | [undefined, moment.Moment] | [moment.Moment, undefined] | [null, moment.Moment] | [moment.Moment, null] | [moment.Moment, moment.Moment];
export declare type RangePickerPresetRange = RangePickerValue | (() => RangePickerValue);
export interface RangePickerState {
    sValue?: RangePickerValue;
    sShowDate?: RangePickerValue;
    sOpen?: boolean;
    sHoverValue?: RangePickerValue;
}
declare const _default: import("vue").DefineComponent<{
    tagPrefixCls: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    value: {
        type: import("vue").PropType<import("./props").RangePickerValue>;
    };
    defaultValue: {
        type: import("vue").PropType<import("./props").RangePickerValue>;
    };
    defaultPickerValue: {
        type: import("vue").PropType<import("./props").RangePickerValue>;
    };
    timePicker: import("vue-types").VueTypeValidableDef<any>;
    showTime: import("vue-types").VueTypeDef<boolean | {
        [key: string]: any;
    }>;
    ranges: import("vue-types").VueTypeValidableDef<{
        [key: string]: any;
    }> & {
        default: () => {
            [key: string]: any;
        };
    };
    placeholder: import("vue-types").VueTypeDef<string[]>;
    mode: import("vue-types").VueTypeDef<string | string[]>;
    separator: import("vue-types").VueTypeValidableDef<any>;
    disabledTime: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    showToday: import("vue-types").VueTypeValidableDef<boolean>;
    renderExtraFooter: import("vue-types").VueTypeValidableDef<any>;
    onChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onCalendarChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onOk: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onPanelChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onMouseenter: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onMouseleave: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    name: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    transitionName: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    prefixCls: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    inputPrefixCls: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    format: import("vue-types").VueTypeDef<any>;
    disabled: import("vue-types").VueTypeValidableDef<boolean>;
    allowClear: import("vue-types").VueTypeValidableDef<boolean>;
    suffixIcon: import("vue-types").VueTypeValidableDef<any>;
    popupStyle: import("vue-types").VueTypeValidableDef<{
        [key: string]: any;
    }> & {
        default: () => {
            [key: string]: any;
        };
    };
    dropdownClassName: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    locale: import("vue-types").VueTypeValidableDef<any>;
    localeCode: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    size: import("vue-types").VueTypeDef<"default" | "small" | "large">;
    getCalendarContainer: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    open: import("vue-types").VueTypeValidableDef<boolean>;
    disabledDate: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    dateRender: import("vue-types").VueTypeValidableDef<any>;
    pickerClass: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    pickerInputClass: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    autofocus: import("vue-types").VueTypeValidableDef<boolean>;
    tabindex: import("vue-types").VueTypeDef<import("../_util/type").Key>;
    align: import("vue-types").VueTypeValidableDef<{
        [key: string]: any;
    }> & {
        default: () => {
            [key: string]: any;
        };
    } & {
        default: () => {
            [key: string]: any;
        };
    };
    inputReadOnly: import("vue-types").VueTypeValidableDef<boolean>;
    valueFormat: import("vue-types").VueTypeValidableDef<string> & {
        default: string;
    };
    onOpenChange: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onFocus: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
    onBlur: import("vue-types").VueTypeValidableDef<(...args: any[]) => any> & {
        default: (...args: any[]) => any;
    };
}, {
    configProvider: import("../config-provider").ConfigConsumerProps;
    picker: any;
    sTagPrefixCls: any;
    sPrefixCls: string;
}, RangePickerState, {}, {
    setValue(value: RangePickerValue, hidePanel?: boolean): void;
    savePicker(node: any): void;
    clearSelection(e: any): void;
    clearHoverValue(): void;
    handleChange(value: RangePickerValue): void;
    handleOpenChange(open: boolean): void;
    handleShowDateChange(showDate: boolean): void;
    handleHoverChange(hoverValue: any): void;
    handleRangeMouseLeave(): void;
    handleCalendarInputSelect(value: RangePickerValue): void;
    handleRangeClick(value: RangePickerPresetRange): void;
    onMouseEnter(e: MouseEvent): void;
    onMouseLeave(e: MouseEvent): void;
    focus(): void;
    blur(): void;
    renderFooter(): JSX.Element[];
}, {
    methods: {
        setState(state: {}, callback: any): void;
        __emit(...args: any[]): void;
    };
}, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    onFocus: (...args: any[]) => any;
    onBlur: (...args: any[]) => any;
    onChange: (...args: any[]) => any;
    onMouseenter: (...args: any[]) => any;
    onMouseleave: (...args: any[]) => any;
    prefixCls: string;
    align: {
        [key: string]: any;
    };
    name: string;
    transitionName: string;
    dropdownClassName: string;
    popupStyle: {
        [key: string]: any;
    };
    inputPrefixCls: string;
    onOpenChange: (...args: any[]) => any;
    disabledDate: (...args: any[]) => any;
    valueFormat: string;
    onPanelChange: (...args: any[]) => any;
    tagPrefixCls: string;
    ranges: {
        [key: string]: any;
    };
    disabledTime: (...args: any[]) => any;
    onCalendarChange: (...args: any[]) => any;
    onOk: (...args: any[]) => any;
    localeCode: string;
    getCalendarContainer: (...args: any[]) => any;
    pickerClass: string;
    pickerInputClass: string;
} & {
    locale?: any;
    size?: "default" | "small" | "large";
    open?: boolean;
    separator?: any;
    disabled?: boolean;
    mode?: string | string[];
    value?: import("./props").RangePickerValue;
    autofocus?: boolean;
    tabindex?: import("../_util/type").Key;
    placeholder?: string[];
    defaultValue?: import("./props").RangePickerValue;
    allowClear?: boolean;
    suffixIcon?: any;
    format?: any;
    showToday?: boolean;
    defaultPickerValue?: import("./props").RangePickerValue;
    timePicker?: any;
    showTime?: boolean | {
        [key: string]: any;
    };
    renderExtraFooter?: any;
    dateRender?: any;
    inputReadOnly?: boolean;
}>, {
    onFocus: (...args: any[]) => any;
    onBlur: (...args: any[]) => any;
    onChange: (...args: any[]) => any;
    onMouseenter: (...args: any[]) => any;
    onMouseleave: (...args: any[]) => any;
    prefixCls: string;
    align: {
        [key: string]: any;
    };
    name: string;
    transitionName: string;
    dropdownClassName: string;
    popupStyle: {
        [key: string]: any;
    };
    inputPrefixCls: string;
    onOpenChange: (...args: any[]) => any;
    disabledDate: (...args: any[]) => any;
    valueFormat: string;
    onPanelChange: (...args: any[]) => any;
    tagPrefixCls: string;
    ranges: {
        [key: string]: any;
    };
    disabledTime: (...args: any[]) => any;
    onCalendarChange: (...args: any[]) => any;
    onOk: (...args: any[]) => any;
    localeCode: string;
    getCalendarContainer: (...args: any[]) => any;
    pickerClass: string;
    pickerInputClass: string;
}>;
export default _default;
