import { PropType } from 'vue';
import type { DatePickerShortcutsType, DatePickerValueType, DisabledDateType, PickerTypeType, SelectionModeType } from '../interface';
import type { ExtractPropTypes } from 'vue';
declare const dateRangePanelProps: {
    readonly modelValue: {
        readonly type: PropType<DatePickerValueType | null>;
    };
    readonly type: {
        readonly type: PropType<PickerTypeType>;
        readonly default: "date";
        readonly validator: (value: any) => boolean;
    };
    readonly shortcuts: {
        readonly type: PropType<DatePickerShortcutsType>;
        readonly default: () => any[];
    };
    readonly shortcutClose: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly clearable: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly splitPanels: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly showTime: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly selectionMode: {
        readonly type: PropType<SelectionModeType>;
        readonly default: "date";
        readonly validator: (v: any) => boolean;
    };
    readonly startDate: {
        readonly type: DateConstructor;
    };
    readonly upToNow: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly disabledDate: PropType<DisabledDateType>;
    readonly focusedDate: {
        readonly type: DateConstructor;
        readonly required: true;
    };
    readonly confirm: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly format: {
        readonly type: StringConstructor;
        readonly default: "yyyy-MM-dd";
    };
    readonly timePickerOptions: {
        readonly type: PropType<Record<string, unknown>>;
        readonly default: () => {};
    };
    readonly shortcutSelectedIndex: {
        readonly type: NumberConstructor;
        readonly default: -1;
    };
};
export type DateRangePanelProps = Readonly<ExtractPropTypes<typeof dateRangePanelProps>>;
declare const _default: import("vue").DefineComponent<ExtractPropTypes<{
    readonly modelValue: {
        readonly type: PropType<DatePickerValueType | null>;
    };
    readonly type: {
        readonly type: PropType<PickerTypeType>;
        readonly default: "date";
        readonly validator: (value: any) => boolean;
    };
    readonly shortcuts: {
        readonly type: PropType<DatePickerShortcutsType>;
        readonly default: () => any[];
    };
    readonly shortcutClose: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly clearable: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly splitPanels: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly showTime: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly selectionMode: {
        readonly type: PropType<SelectionModeType>;
        readonly default: "date";
        readonly validator: (v: any) => boolean;
    };
    readonly startDate: {
        readonly type: DateConstructor;
    };
    readonly upToNow: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly disabledDate: PropType<DisabledDateType>;
    readonly focusedDate: {
        readonly type: DateConstructor;
        readonly required: true;
    };
    readonly confirm: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly format: {
        readonly type: StringConstructor;
        readonly default: "yyyy-MM-dd";
    };
    readonly timePickerOptions: {
        readonly type: PropType<Record<string, unknown>>;
        readonly default: () => {};
    };
    readonly shortcutSelectedIndex: {
        readonly type: NumberConstructor;
        readonly default: -1;
    };
}>, {
    isTime: import("vue").ComputedRef<boolean>;
    hasShortcuts: import("vue").ComputedRef<number | import("vue").Slot<any>>;
    prevYear: (panel: any) => void;
    nextYear: (panel: any) => void;
    prevMonth: (panel: any) => void;
    nextMonth: (panel: any) => void;
    leftDatePanelLabel: import("vue").ComputedRef<{
        separator: any;
        labels: any[];
    }>;
    rightDatePanelLabel: import("vue").ComputedRef<{
        separator: any;
        labels: any[];
    }>;
    leftDatePanelView: import("vue").ComputedRef<string>;
    rightDatePanelView: import("vue").ComputedRef<string>;
    leftShowLabelFirst: import("vue").ComputedRef<boolean>;
    leftShowLabelSecond: import("vue").ComputedRef<boolean>;
    rightShowLabelFirst: import("vue").ComputedRef<boolean>;
    rightShowLabelSecond: import("vue").ComputedRef<boolean>;
    preSelecting: import("vue").ComputedRef<{
        left: boolean;
        right: boolean;
    }>;
    panelPickerHandlers: import("vue").ComputedRef<{
        left: (panelPosition: any, value: any) => void;
        right: (panelPosition: any, value: any) => void;
    }>;
    timeDisabled: import("vue").ComputedRef<boolean>;
    handleShortcutClick: (shortcut: any, index: any) => boolean;
    reset: () => void;
    onToggleVisibility: (open: any) => void;
    handleRangePick: (val: any, type: any) => void;
    handleChangeRange: (val: any) => void;
    handleToggleTime: () => void;
    handlePickSuccess: () => void;
    handlePickClear: () => void;
    handlePickClick: () => void;
    timePickerRef: import("vue").Ref<any, any>;
    t: import("vue").ComputedRef<{
        selectDate: string;
        selectTime: string;
        clear: string;
        ok: string;
        weekdays: {
            sun: string;
            mon: string;
            tue: string;
            wed: string;
            thu: string;
            fri: string;
            sat: string;
        };
        hour: string;
        min: string;
        sec: string;
        toNow: string;
    }>;
    resolveClassName: (cls: string) => string;
    currentView: import("vue").Ref<SelectionModeType, SelectionModeType>;
    leftPickerTable: import("vue").Ref<string, string>;
    rightPickerTable: import("vue").Ref<string, string>;
    leftPanelDate: import("vue").Ref<any, any>;
    rightPanelDate: import("vue").Ref<any, any>;
    rangeState: import("vue").Ref<{
        from: any;
        to: any;
        selecting: boolean;
    }, {
        from: any;
        to: any;
        selecting: boolean;
    }>;
    upToNowEnable: import("vue").Ref<boolean, boolean>;
    dates: import("vue").Ref<any, any>;
    selectedIndex: import("vue").Ref<number, number>;
}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("pick-clear" | "pick-success" | "pick" | "pick-click" | "selection-mode-change" | "pick-first")[], "pick-clear" | "pick-success" | "pick" | "pick-click" | "selection-mode-change" | "pick-first", import("vue").PublicProps, Readonly<ExtractPropTypes<{
    readonly modelValue: {
        readonly type: PropType<DatePickerValueType | null>;
    };
    readonly type: {
        readonly type: PropType<PickerTypeType>;
        readonly default: "date";
        readonly validator: (value: any) => boolean;
    };
    readonly shortcuts: {
        readonly type: PropType<DatePickerShortcutsType>;
        readonly default: () => any[];
    };
    readonly shortcutClose: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly clearable: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly splitPanels: {
        readonly type: BooleanConstructor;
        readonly default: true;
    };
    readonly showTime: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly selectionMode: {
        readonly type: PropType<SelectionModeType>;
        readonly default: "date";
        readonly validator: (v: any) => boolean;
    };
    readonly startDate: {
        readonly type: DateConstructor;
    };
    readonly upToNow: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly disabledDate: PropType<DisabledDateType>;
    readonly focusedDate: {
        readonly type: DateConstructor;
        readonly required: true;
    };
    readonly confirm: {
        readonly type: BooleanConstructor;
        readonly default: false;
    };
    readonly format: {
        readonly type: StringConstructor;
        readonly default: "yyyy-MM-dd";
    };
    readonly timePickerOptions: {
        readonly type: PropType<Record<string, unknown>>;
        readonly default: () => {};
    };
    readonly shortcutSelectedIndex: {
        readonly type: NumberConstructor;
        readonly default: -1;
    };
}>> & Readonly<{
    "onPick-clear"?: (...args: any[]) => any;
    "onPick-success"?: (...args: any[]) => any;
    onPick?: (...args: any[]) => any;
    "onPick-click"?: (...args: any[]) => any;
    "onSelection-mode-change"?: (...args: any[]) => any;
    "onPick-first"?: (...args: any[]) => any;
}>, {
    readonly confirm: boolean;
    readonly type: PickerTypeType;
    readonly clearable: boolean;
    readonly format: string;
    readonly timePickerOptions: Record<string, unknown>;
    readonly splitPanels: boolean;
    readonly shortcuts: DatePickerShortcutsType;
    readonly shortcutClose: boolean;
    readonly upToNow: boolean;
    readonly shortcutSelectedIndex: number;
    readonly showTime: boolean;
    readonly selectionMode: SelectionModeType;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
export default _default;
