import { nextTick } from 'vue';
import { PopperExposed } from '../popper';
import { Dateable } from '@vexip-ui/utils';
import { DatePickerFormatFn, DatePickerSlots, DateTimeType, DateType } from './symbol';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: Readonly<DatePickerSlots> & DatePickerSlots;
    refs: {
        wrapper: HTMLDivElement;
        reference: HTMLDivElement;
        start: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
            unitType: {
                type: import('vue').PropType<DateTimeType | "">;
                default: string;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            activated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            dateValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: () => {};
            };
            dateSeparator: {
                type: StringConstructor;
                default: string;
            };
            timeSeparator: {
                type: StringConstructor;
                default: string;
            };
            visible: {
                type: BooleanConstructor;
                default: boolean;
            };
            focused: {
                type: BooleanConstructor;
                default: boolean;
            };
            filler: {
                type: StringConstructor;
                default: string;
                validator: (value: string) => boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            ctrlSteps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            labels: {
                type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            placeholder: {
                type: StringConstructor;
                default: string;
            };
            readonly: {
                type: BooleanConstructor;
                default: boolean;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            dateUnitOrder: {
                type: import('vue').PropType<DateType[]>;
                default: () => string[];
            };
        }>> & Readonly<{
            onInput?: ((...args: any[]) => any) | undefined;
            onPlus?: ((...args: any[]) => any) | undefined;
            onMinus?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onEnter?: ((...args: any[]) => any) | undefined;
            "onUnit-focus"?: ((...args: any[]) => any) | undefined;
            "onPrev-unit"?: ((...args: any[]) => any) | undefined;
            "onNext-unit"?: ((...args: any[]) => any) | undefined;
        }>, {
            isActivated: import('vue').ComputedRef<boolean>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            focus: () => void;
            blur: () => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            input: (...args: any[]) => void;
            plus: (...args: any[]) => void;
            minus: (...args: any[]) => void;
            blur: (...args: any[]) => void;
            cancel: (...args: any[]) => void;
            enter: (...args: any[]) => void;
            "unit-focus": (...args: any[]) => void;
            "prev-unit": (...args: any[]) => void;
            "next-unit": (...args: any[]) => void;
        }, import('vue').PublicProps, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            visible: boolean;
            placeholder: string;
            readonly: boolean;
            focused: boolean;
            activated: Record<DateTimeType, boolean>;
            enabled: Record<DateTimeType, boolean>;
            filler: string;
            labeledBy: string;
            unitType: "" | DateTimeType;
            dateValue: Record<DateTimeType, number>;
            dateSeparator: string;
            timeSeparator: string;
            steps: number[];
            ctrlSteps: number[];
            labels: Partial<Record<DateTimeType, string>>;
            hasError: boolean;
            dateUnitOrder: DateType[];
        }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
            wrapper: HTMLDivElement;
        }, HTMLDivElement, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import('vue').ExtractPropTypes<{
            unitType: {
                type: import('vue').PropType<DateTimeType | "">;
                default: string;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            activated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            dateValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: () => {};
            };
            dateSeparator: {
                type: StringConstructor;
                default: string;
            };
            timeSeparator: {
                type: StringConstructor;
                default: string;
            };
            visible: {
                type: BooleanConstructor;
                default: boolean;
            };
            focused: {
                type: BooleanConstructor;
                default: boolean;
            };
            filler: {
                type: StringConstructor;
                default: string;
                validator: (value: string) => boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            ctrlSteps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            labels: {
                type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            placeholder: {
                type: StringConstructor;
                default: string;
            };
            readonly: {
                type: BooleanConstructor;
                default: boolean;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            dateUnitOrder: {
                type: import('vue').PropType<DateType[]>;
                default: () => string[];
            };
        }>> & Readonly<{
            onInput?: ((...args: any[]) => any) | undefined;
            onPlus?: ((...args: any[]) => any) | undefined;
            onMinus?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onEnter?: ((...args: any[]) => any) | undefined;
            "onUnit-focus"?: ((...args: any[]) => any) | undefined;
            "onPrev-unit"?: ((...args: any[]) => any) | undefined;
            "onNext-unit"?: ((...args: any[]) => any) | undefined;
        }>, {
            isActivated: import('vue').ComputedRef<boolean>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            focus: () => void;
            blur: () => void;
        }, {}, {}, {}, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            visible: boolean;
            placeholder: string;
            readonly: boolean;
            focused: boolean;
            activated: Record<DateTimeType, boolean>;
            enabled: Record<DateTimeType, boolean>;
            filler: string;
            labeledBy: string;
            unitType: "" | DateTimeType;
            dateValue: Record<DateTimeType, number>;
            dateSeparator: string;
            timeSeparator: string;
            steps: number[];
            ctrlSteps: number[];
            labels: Partial<Record<DateTimeType, string>>;
            hasError: boolean;
            dateUnitOrder: DateType[];
        }> | null;
        end: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
            unitType: {
                type: import('vue').PropType<DateTimeType | "">;
                default: string;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            activated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            dateValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: () => {};
            };
            dateSeparator: {
                type: StringConstructor;
                default: string;
            };
            timeSeparator: {
                type: StringConstructor;
                default: string;
            };
            visible: {
                type: BooleanConstructor;
                default: boolean;
            };
            focused: {
                type: BooleanConstructor;
                default: boolean;
            };
            filler: {
                type: StringConstructor;
                default: string;
                validator: (value: string) => boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            ctrlSteps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            labels: {
                type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            placeholder: {
                type: StringConstructor;
                default: string;
            };
            readonly: {
                type: BooleanConstructor;
                default: boolean;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            dateUnitOrder: {
                type: import('vue').PropType<DateType[]>;
                default: () => string[];
            };
        }>> & Readonly<{
            onInput?: ((...args: any[]) => any) | undefined;
            onPlus?: ((...args: any[]) => any) | undefined;
            onMinus?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onEnter?: ((...args: any[]) => any) | undefined;
            "onUnit-focus"?: ((...args: any[]) => any) | undefined;
            "onPrev-unit"?: ((...args: any[]) => any) | undefined;
            "onNext-unit"?: ((...args: any[]) => any) | undefined;
        }>, {
            isActivated: import('vue').ComputedRef<boolean>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            focus: () => void;
            blur: () => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            input: (...args: any[]) => void;
            plus: (...args: any[]) => void;
            minus: (...args: any[]) => void;
            blur: (...args: any[]) => void;
            cancel: (...args: any[]) => void;
            enter: (...args: any[]) => void;
            "unit-focus": (...args: any[]) => void;
            "prev-unit": (...args: any[]) => void;
            "next-unit": (...args: any[]) => void;
        }, import('vue').PublicProps, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            visible: boolean;
            placeholder: string;
            readonly: boolean;
            focused: boolean;
            activated: Record<DateTimeType, boolean>;
            enabled: Record<DateTimeType, boolean>;
            filler: string;
            labeledBy: string;
            unitType: "" | DateTimeType;
            dateValue: Record<DateTimeType, number>;
            dateSeparator: string;
            timeSeparator: string;
            steps: number[];
            ctrlSteps: number[];
            labels: Partial<Record<DateTimeType, string>>;
            hasError: boolean;
            dateUnitOrder: DateType[];
        }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
            wrapper: HTMLDivElement;
        }, HTMLDivElement, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import('vue').ExtractPropTypes<{
            unitType: {
                type: import('vue').PropType<DateTimeType | "">;
                default: string;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            activated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            dateValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: () => {};
            };
            dateSeparator: {
                type: StringConstructor;
                default: string;
            };
            timeSeparator: {
                type: StringConstructor;
                default: string;
            };
            visible: {
                type: BooleanConstructor;
                default: boolean;
            };
            focused: {
                type: BooleanConstructor;
                default: boolean;
            };
            filler: {
                type: StringConstructor;
                default: string;
                validator: (value: string) => boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            ctrlSteps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            labels: {
                type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            placeholder: {
                type: StringConstructor;
                default: string;
            };
            readonly: {
                type: BooleanConstructor;
                default: boolean;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            dateUnitOrder: {
                type: import('vue').PropType<DateType[]>;
                default: () => string[];
            };
        }>> & Readonly<{
            onInput?: ((...args: any[]) => any) | undefined;
            onPlus?: ((...args: any[]) => any) | undefined;
            onMinus?: ((...args: any[]) => any) | undefined;
            onBlur?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onEnter?: ((...args: any[]) => any) | undefined;
            "onUnit-focus"?: ((...args: any[]) => any) | undefined;
            "onPrev-unit"?: ((...args: any[]) => any) | undefined;
            "onNext-unit"?: ((...args: any[]) => any) | undefined;
        }>, {
            isActivated: import('vue').ComputedRef<boolean>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            focus: () => void;
            blur: () => void;
        }, {}, {}, {}, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            visible: boolean;
            placeholder: string;
            readonly: boolean;
            focused: boolean;
            activated: Record<DateTimeType, boolean>;
            enabled: Record<DateTimeType, boolean>;
            filler: string;
            labeledBy: string;
            unitType: "" | DateTimeType;
            dateValue: Record<DateTimeType, number>;
            dateSeparator: string;
            timeSeparator: string;
            steps: number[];
            ctrlSteps: number[];
            labels: Partial<Record<DateTimeType, string>>;
            hasError: boolean;
            dateUnitOrder: DateType[];
        }> | null;
        popper: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
            inherit: import('vue').PropType<boolean>;
            visible: import('vue').PropType<boolean>;
            alive: import('vue').PropType<boolean>;
            to: import('vue').PropType<string>;
            transition: import('vue').PropType<string>;
            appear: import('vue').PropType<boolean>;
            role: import('vue').PropType<string>;
            onBeforeEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onAfterEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onEnterCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onBeforeLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onAfterLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onLeaveCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        }>> & Readonly<{}>, {
            nh: import('../../common/bem-helper/dist').NBEM<"popper", "vxp">;
            props: {
                readonly inherit: boolean;
                readonly visible: boolean;
                readonly role: string;
                readonly appear: boolean;
                readonly onBeforeEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onAfterEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onEnterCancelled: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onBeforeLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onAfterLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onLeaveCancelled: ((el: Element) => void) | ((el: Element) => void)[];
                readonly transition: string;
                readonly to: string;
                readonly alive: boolean;
            };
            zIndex: import('vue').Ref<number, number>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            emitHookEvent: (name: "be" | "e" | "ae" | "ec" | "bl" | "l" | "al" | "lc", el: Element) => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, never[], import('vue').PublicProps, {}, true, {}, {}, {
            Portal: {
                new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
                    to: {
                        type: StringConstructor;
                        default: string;
                    };
                }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
                    to: string;
                }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
                    P: {};
                    B: {};
                    D: {};
                    C: {};
                    M: {};
                    Defaults: {};
                }, Readonly<import('vue').ExtractPropTypes<{
                    to: {
                        type: StringConstructor;
                        default: string;
                    };
                }>> & Readonly<{}>, {}, {}, {}, {}, {
                    to: string;
                }>;
                __isFragment?: never;
                __isTeleport?: never;
                __isSuspense?: never;
            } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
                to: {
                    type: StringConstructor;
                    default: string;
                };
            }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
                to: string;
            }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
                $slots: {
                    default?(_: {}): any;
                };
            });
        } & import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
            P: {};
            B: {};
            D: {};
            C: {};
            M: {};
            Defaults: {};
        }, Readonly<import('vue').ExtractPropTypes<{
            inherit: import('vue').PropType<boolean>;
            visible: import('vue').PropType<boolean>;
            alive: import('vue').PropType<boolean>;
            to: import('vue').PropType<string>;
            transition: import('vue').PropType<string>;
            appear: import('vue').PropType<boolean>;
            role: import('vue').PropType<string>;
            onBeforeEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onAfterEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onEnterCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onBeforeLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onAfterLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
            onLeaveCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        }>> & Readonly<{}>, {
            nh: import('../../common/bem-helper/dist').NBEM<"popper", "vxp">;
            props: {
                readonly inherit: boolean;
                readonly visible: boolean;
                readonly role: string;
                readonly appear: boolean;
                readonly onBeforeEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onAfterEnter: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onEnterCancelled: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onBeforeLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onAfterLeave: ((el: Element) => void) | ((el: Element) => void)[];
                readonly onLeaveCancelled: ((el: Element) => void) | ((el: Element) => void)[];
                readonly transition: string;
                readonly to: string;
                readonly alive: boolean;
            };
            zIndex: import('vue').Ref<number, number>;
            wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
            emitHookEvent: (name: "be" | "e" | "ae" | "ec" | "bl" | "l" | "al" | "lc", el: Element) => void;
        }, {}, {}, {}, {}> | null;
        panel: ({
            $: import('vue').ComponentInternalInstance;
            $data: {};
            $props: Partial<{
                locale: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                    ariaLabel: {
                        year: string;
                        month: string;
                        month1: string;
                        month2: string;
                        month3: string;
                        month4: string;
                        month5: string;
                        month6: string;
                        month7: string;
                        month8: string;
                        month9: string;
                        month10: string;
                        month11: string;
                        month12: string;
                        week1: string;
                        week2: string;
                        week3: string;
                        week4: string;
                        week5: string;
                        week6: string;
                        week7: string;
                    };
                } & {
                    confirm: string;
                    cancel: string;
                    placeholder: {
                        year: string;
                        month: string;
                        date: string;
                        datetime: string;
                        start: string;
                        end: string;
                        select: string;
                    };
                    startTime: string;
                    endTime: string;
                    ariaLabel: {
                        clear: string;
                        quarter: string;
                        week: string;
                        date: string;
                        hour: string;
                        minute: string;
                        second: string;
                    };
                };
                type: "year" | "month" | "date" | "datetime";
                min: Dateable;
                max: Dateable;
                range: boolean;
                enabled: Record<DateTimeType, boolean>;
                today: Dateable;
                weekStart: number;
                disabledDate: (date: Date) => boolean;
                startValue: Record<DateTimeType, number>;
                endValue: Record<DateTimeType, number>;
                labeledBy: string;
                cancelText: string;
                confirmText: string;
                shortcuts: import('./symbol').DateShortcut[];
                steps: number[];
                hasError: boolean;
                disabledTime: import('./symbol').DisabledTime;
                noAction: boolean;
                startActivated: Record<DateTimeType, boolean>;
                endActivated: Record<DateTimeType, boolean>;
                selectingType: "start" | "end";
                staticWheel: boolean;
                shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
            }> & Omit<{
                readonly locale: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                    ariaLabel: {
                        year: string;
                        month: string;
                        month1: string;
                        month2: string;
                        month3: string;
                        month4: string;
                        month5: string;
                        month6: string;
                        month7: string;
                        month8: string;
                        month9: string;
                        month10: string;
                        month11: string;
                        month12: string;
                        week1: string;
                        week2: string;
                        week3: string;
                        week4: string;
                        week5: string;
                        week6: string;
                        week7: string;
                    };
                } & {
                    confirm: string;
                    cancel: string;
                    placeholder: {
                        year: string;
                        month: string;
                        date: string;
                        datetime: string;
                        start: string;
                        end: string;
                        select: string;
                    };
                    startTime: string;
                    endTime: string;
                    ariaLabel: {
                        clear: string;
                        quarter: string;
                        week: string;
                        date: string;
                        hour: string;
                        minute: string;
                        second: string;
                    };
                };
                readonly type: "year" | "month" | "date" | "datetime";
                readonly min: Dateable;
                readonly max: Dateable;
                readonly range: boolean;
                readonly enabled: Record<DateTimeType, boolean>;
                readonly today: Dateable;
                readonly weekStart: number;
                readonly disabledDate: (date: Date) => boolean;
                readonly startValue: Record<DateTimeType, number>;
                readonly endValue: Record<DateTimeType, number>;
                readonly cancelText: string;
                readonly confirmText: string;
                readonly shortcuts: import('./symbol').DateShortcut[];
                readonly steps: number[];
                readonly hasError: boolean;
                readonly disabledTime: import('./symbol').DisabledTime;
                readonly noAction: boolean;
                readonly startActivated: Record<DateTimeType, boolean>;
                readonly endActivated: Record<DateTimeType, boolean>;
                readonly selectingType: "start" | "end";
                readonly staticWheel: boolean;
                readonly shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
                readonly labeledBy?: string | undefined;
                readonly onConfirm?: ((...args: any[]) => any) | undefined;
                readonly onClick?: ((...args: any[]) => any) | undefined;
                readonly onCancel?: ((...args: any[]) => any) | undefined;
                readonly onChange?: ((...args: any[]) => any) | undefined;
                readonly onHover?: ((...args: any[]) => any) | undefined;
                readonly onShortcut?: ((...args: any[]) => any) | undefined;
                readonly "onToggle-col"?: ((...args: any[]) => any) | undefined;
                readonly "onType-change"?: ((...args: any[]) => any) | undefined;
                readonly "onTime-change"?: ((...args: any[]) => any) | undefined;
            } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement">;
            $attrs: {
                [x: string]: unknown;
            };
            $refs: {
                [x: string]: unknown;
            };
            $slots: Readonly<{
                [name: string]: import('vue').Slot<any> | undefined;
            }>;
            $root: import('vue').ComponentPublicInstance | null;
            $parent: import('vue').ComponentPublicInstance | null;
            $host: Element | null;
            $emit: ((event: "confirm", ...args: any[]) => void) & ((event: "click", ...args: any[]) => void) & ((event: "cancel", ...args: any[]) => void) & ((event: "change", ...args: any[]) => void) & ((event: "hover", ...args: any[]) => void) & ((event: "shortcut", ...args: any[]) => void) & ((event: "toggle-col", ...args: any[]) => void) & ((event: "type-change", ...args: any[]) => void) & ((event: "time-change", ...args: any[]) => void);
            $el: HTMLDivElement;
            $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
                type: {
                    default: import('./symbol').DatePickerType;
                    validator: (value: import('./symbol').DatePickerType) => boolean;
                };
                enabled: {
                    type: import('vue').PropType<Record<DateTimeType, boolean>>;
                    default: () => {};
                };
                startValue: {
                    type: import('vue').PropType<Record<DateTimeType, number>>;
                    default: null;
                };
                endValue: {
                    type: import('vue').PropType<Record<DateTimeType, number>>;
                    default: null;
                };
                shortcuts: {
                    type: import('vue').PropType<import('./symbol').DateShortcut[]>;
                    default: () => never[];
                };
                confirmText: {
                    type: StringConstructor;
                    default: null;
                };
                cancelText: {
                    type: StringConstructor;
                    default: null;
                };
                today: {
                    type: import('vue').PropType<Dateable>;
                    default: () => Date;
                };
                disabledDate: {
                    type: import('vue').PropType<(date: Date) => boolean>;
                    default: () => boolean;
                };
                noAction: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                steps: {
                    type: import('vue').PropType<number[]>;
                    default: () => number[];
                };
                range: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                startActivated: {
                    type: import('vue').PropType<Record<DateTimeType, boolean>>;
                    default: () => {};
                };
                endActivated: {
                    type: import('vue').PropType<Record<DateTimeType, boolean>>;
                    default: () => {};
                };
                min: {
                    type: import('vue').PropType<Dateable>;
                    default: null;
                };
                max: {
                    type: import('vue').PropType<Dateable>;
                    default: null;
                };
                disabledTime: {
                    type: import('vue').PropType<import('./symbol').DisabledTime>;
                    default: () => {};
                };
                hasError: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                locale: {
                    type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                    default: () => {};
                };
                selectingType: {
                    type: import('vue').PropType<"start" | "end">;
                    default: string;
                };
                weekStart: {
                    type: NumberConstructor;
                    default: null;
                };
                staticWheel: {
                    type: BooleanConstructor;
                    default: boolean;
                };
                shortcutsPlacement: {
                    type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
                    default: string;
                };
                labeledBy: {
                    type: StringConstructor;
                    default: undefined;
                };
            }>> & Readonly<{
                onConfirm?: ((...args: any[]) => any) | undefined;
                onClick?: ((...args: any[]) => any) | undefined;
                onCancel?: ((...args: any[]) => any) | undefined;
                onChange?: ((...args: any[]) => any) | undefined;
                onHover?: ((...args: any[]) => any) | undefined;
                onShortcut?: ((...args: any[]) => any) | undefined;
                "onToggle-col"?: ((...args: any[]) => any) | undefined;
                "onType-change"?: ((...args: any[]) => any) | undefined;
                "onTime-change"?: ((...args: any[]) => any) | undefined;
            }>, {
                refreshCalendar: (valueType: "start" | "end") => void;
            }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
                confirm: (...args: any[]) => void;
                click: (...args: any[]) => void;
                cancel: (...args: any[]) => void;
                change: (...args: any[]) => void;
                hover: (...args: any[]) => void;
                shortcut: (...args: any[]) => void;
                "toggle-col": (...args: any[]) => void;
                "type-change": (...args: any[]) => void;
                "time-change": (...args: any[]) => void;
            }, string, {
                locale: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                    ariaLabel: {
                        year: string;
                        month: string;
                        month1: string;
                        month2: string;
                        month3: string;
                        month4: string;
                        month5: string;
                        month6: string;
                        month7: string;
                        month8: string;
                        month9: string;
                        month10: string;
                        month11: string;
                        month12: string;
                        week1: string;
                        week2: string;
                        week3: string;
                        week4: string;
                        week5: string;
                        week6: string;
                        week7: string;
                    };
                } & {
                    confirm: string;
                    cancel: string;
                    placeholder: {
                        year: string;
                        month: string;
                        date: string;
                        datetime: string;
                        start: string;
                        end: string;
                        select: string;
                    };
                    startTime: string;
                    endTime: string;
                    ariaLabel: {
                        clear: string;
                        quarter: string;
                        week: string;
                        date: string;
                        hour: string;
                        minute: string;
                        second: string;
                    };
                };
                type: "year" | "month" | "date" | "datetime";
                min: Dateable;
                max: Dateable;
                range: boolean;
                enabled: Record<DateTimeType, boolean>;
                today: Dateable;
                weekStart: number;
                disabledDate: (date: Date) => boolean;
                startValue: Record<DateTimeType, number>;
                endValue: Record<DateTimeType, number>;
                labeledBy: string;
                cancelText: string;
                confirmText: string;
                shortcuts: import('./symbol').DateShortcut[];
                steps: number[];
                hasError: boolean;
                disabledTime: import('./symbol').DisabledTime;
                noAction: boolean;
                startActivated: Record<DateTimeType, boolean>;
                endActivated: Record<DateTimeType, boolean>;
                selectingType: "start" | "end";
                staticWheel: boolean;
                shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
            }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
                beforeCreate?: (() => void) | (() => void)[];
                created?: (() => void) | (() => void)[];
                beforeMount?: (() => void) | (() => void)[];
                mounted?: (() => void) | (() => void)[];
                beforeUpdate?: (() => void) | (() => void)[];
                updated?: (() => void) | (() => void)[];
                activated?: (() => void) | (() => void)[];
                deactivated?: (() => void) | (() => void)[];
                beforeDestroy?: (() => void) | (() => void)[];
                beforeUnmount?: (() => void) | (() => void)[];
                destroyed?: (() => void) | (() => void)[];
                unmounted?: (() => void) | (() => void)[];
                renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
                renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
                errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
            };
            $forceUpdate: () => void;
            $nextTick: typeof nextTick;
            $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
        } & Readonly<{
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }> & Omit<Readonly<import('vue').ExtractPropTypes<{
            type: {
                default: import('./symbol').DatePickerType;
                validator: (value: import('./symbol').DatePickerType) => boolean;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            startValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            endValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            shortcuts: {
                type: import('vue').PropType<import('./symbol').DateShortcut[]>;
                default: () => never[];
            };
            confirmText: {
                type: StringConstructor;
                default: null;
            };
            cancelText: {
                type: StringConstructor;
                default: null;
            };
            today: {
                type: import('vue').PropType<Dateable>;
                default: () => Date;
            };
            disabledDate: {
                type: import('vue').PropType<(date: Date) => boolean>;
                default: () => boolean;
            };
            noAction: {
                type: BooleanConstructor;
                default: boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            range: {
                type: BooleanConstructor;
                default: boolean;
            };
            startActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            endActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            min: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            max: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            disabledTime: {
                type: import('vue').PropType<import('./symbol').DisabledTime>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            selectingType: {
                type: import('vue').PropType<"start" | "end">;
                default: string;
            };
            weekStart: {
                type: NumberConstructor;
                default: null;
            };
            staticWheel: {
                type: BooleanConstructor;
                default: boolean;
            };
            shortcutsPlacement: {
                type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
                default: string;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
        }>> & Readonly<{
            onConfirm?: ((...args: any[]) => any) | undefined;
            onClick?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onHover?: ((...args: any[]) => any) | undefined;
            onShortcut?: ((...args: any[]) => any) | undefined;
            "onToggle-col"?: ((...args: any[]) => any) | undefined;
            "onType-change"?: ((...args: any[]) => any) | undefined;
            "onTime-change"?: ((...args: any[]) => any) | undefined;
        }>, "refreshCalendar" | ("locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement")> & import('vue').ShallowUnwrapRef<{
            refreshCalendar: (valueType: "start" | "end") => void;
        }> & {} & import('vue').ComponentCustomProperties & {} & {
            $slots: Readonly<import('./symbol').DatePanelSlots> & import('./symbol').DatePanelSlots;
        }) | null;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    size: import('vue').PropType<"default" | "small" | "large">;
    state: import('vue').PropType<"default" | "success" | "error" | "warning">;
    locale: import('vue').PropType<Partial<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>>;
    type: import('vue').PropType<"year" | "month" | "date" | "datetime">;
    visible: import('vue').PropType<boolean>;
    placement: import('vue').PropType<"bottom" | "top" | "right" | "left" | "bottom-start" | "bottom-end" | "top-start" | "top-end" | "right-start" | "right-end" | "left-start" | "left-end">;
    transfer: import('vue').PropType<string | boolean>;
    value: import('vue').PropType<string | number | Date | Dateable[]>;
    format: import('vue').PropType<string>;
    valueFormat: import('vue').PropType<string | string[] | DatePickerFormatFn>;
    filler: import('vue').PropType<string>;
    clearable: import('vue').PropType<boolean>;
    noAction: import('vue').PropType<boolean>;
    labels: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
    dateSeparator: import('vue').PropType<string>;
    timeSeparator: import('vue').PropType<string>;
    shortcuts: import('vue').PropType<import('./symbol').DateShortcut[]>;
    disabledDate: import('vue').PropType<(date: Date) => boolean>;
    steps: import('vue').PropType<number[]>;
    ctrlSteps: import('vue').PropType<number[]>;
    prefix: import('vue').PropType<any>;
    prefixColor: import('vue').PropType<string>;
    suffix: import('vue').PropType<any>;
    suffixColor: import('vue').PropType<string>;
    noSuffix: import('vue').PropType<boolean>;
    disabled: import('vue').PropType<boolean>;
    transitionName: import('vue').PropType<string>;
    confirmText: import('vue').PropType<string>;
    cancelText: import('vue').PropType<string>;
    today: import('vue').PropType<string | number | Date>;
    range: import('vue').PropType<boolean>;
    loading: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingLock: import('vue').PropType<boolean>;
    loadingEffect: import('vue').PropType<string>;
    min: import('vue').PropType<string | number | Date>;
    max: import('vue').PropType<string | number | Date>;
    outsideClose: import('vue').PropType<boolean>;
    outsideCancel: import('vue').PropType<boolean>;
    placeholder: import('vue').PropType<string | string[]>;
    unitReadonly: import('vue').PropType<boolean>;
    weekStart: import('vue').PropType<number>;
    popperAlive: import('vue').PropType<boolean>;
    shortcutsPlacement: import('vue').PropType<"bottom" | "top" | "right" | "left">;
    slots: import('vue').PropType<DatePickerSlots>;
    onInput: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onPlus: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onMinus: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onEnter: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onCancel: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onChange: import('vue').PropType<((value: number) => void) | ((value: number | number[]) => void) | ((value: number[]) => void) | ((value: null) => void) | ((value: number[] | null) => void) | ((value: number | null) => void) | ((value: number | number[] | null) => void) | (((value: number) => void) | ((value: number | number[]) => void) | ((value: number[]) => void) | ((value: null) => void) | ((value: number[] | null) => void) | ((value: number | null) => void) | ((value: number | number[] | null) => void))[]>;
    onClear: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onShortcut: import('vue').PropType<import('./props').DatePickerShortcutEvent | import('./props').DatePickerShortcutEvent[]>;
    onToggle: import('vue').PropType<((visible: boolean) => void) | ((visible: boolean) => void)[]>;
    onFocus: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onBlur: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onChangeCol: import('vue').PropType<((type: DateTimeType | null, inputType: "start" | "end") => void) | ((type: DateTimeType | null, inputType: "start" | "end") => void)[]>;
    onClickOutside: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onOutsideClose: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
}>, {
    idFor: import('vue').Ref<string | undefined, string | undefined>;
    currentVisible: import('vue').Ref<boolean, boolean>;
    focused: import('vue').Ref<boolean, boolean>;
    isHover: import('vue').Ref<boolean, boolean>;
    startState: {
        column: DateTimeType | null;
        enabled: {
            year: boolean;
            month: boolean;
            date: boolean;
            hour: boolean;
            minute: boolean;
            second: boolean;
        };
        activated: {
            year: boolean;
            month: boolean;
            date: boolean;
            hour: boolean;
            minute: boolean;
            second: boolean;
        };
        dateValue: {
            year: number;
            month: number;
            date: number;
            hour: number;
            minute: number;
            second: number;
        };
        resetColumn: (type?: DateTimeType | null | undefined, reverse?: boolean) => void;
        enterColumn: (type: "prev" | "next", canLoop?: boolean) => void;
        setDate: (date: Date, withTime?: boolean) => void;
        getDate: () => Date;
        record: () => void;
        restore: () => void;
    };
    endState: {
        column: DateTimeType | null;
        enabled: {
            year: boolean;
            month: boolean;
            date: boolean;
            hour: boolean;
            minute: boolean;
            second: boolean;
        };
        activated: {
            year: boolean;
            month: boolean;
            date: boolean;
            hour: boolean;
            minute: boolean;
            second: boolean;
        };
        dateValue: {
            year: number;
            month: number;
            date: number;
            hour: number;
            minute: number;
            second: number;
        };
        resetColumn: (type?: DateTimeType | null | undefined, reverse?: boolean) => void;
        enterColumn: (type: "prev" | "next", canLoop?: boolean) => void;
        setDate: (date: Date, withTime?: boolean) => void;
        getDate: () => Date;
        record: () => void;
        restore: () => void;
    };
    currentState: import('vue').Ref<"start" | "end", "start" | "end">;
    startError: import('vue').ComputedRef<boolean>;
    endError: import('vue').ComputedRef<boolean>;
    wrapper: import('vue').Ref<HTMLElement | null | undefined, HTMLElement | null | undefined>;
    reference: import('vue').Ref<HTMLElement | null | undefined, HTMLElement | null | undefined>;
    popper: import('vue').Ref<PopperExposed | undefined, PopperExposed | undefined>;
    start: import('vue').Ref<import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | undefined, import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | undefined>;
    end: import('vue').Ref<import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | undefined, import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | undefined>;
    panel: import('vue').Ref<({
        $: import('vue').ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }> & Omit<{
            readonly locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            readonly type: "year" | "month" | "date" | "datetime";
            readonly min: Dateable;
            readonly max: Dateable;
            readonly range: boolean;
            readonly enabled: Record<DateTimeType, boolean>;
            readonly today: Dateable;
            readonly weekStart: number;
            readonly disabledDate: (date: Date) => boolean;
            readonly startValue: Record<DateTimeType, number>;
            readonly endValue: Record<DateTimeType, number>;
            readonly cancelText: string;
            readonly confirmText: string;
            readonly shortcuts: import('./symbol').DateShortcut[];
            readonly steps: number[];
            readonly hasError: boolean;
            readonly disabledTime: import('./symbol').DisabledTime;
            readonly noAction: boolean;
            readonly startActivated: Record<DateTimeType, boolean>;
            readonly endActivated: Record<DateTimeType, boolean>;
            readonly selectingType: "start" | "end";
            readonly staticWheel: boolean;
            readonly shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
            readonly labeledBy?: string | undefined;
            readonly onConfirm?: ((...args: any[]) => any) | undefined;
            readonly onClick?: ((...args: any[]) => any) | undefined;
            readonly onCancel?: ((...args: any[]) => any) | undefined;
            readonly onChange?: ((...args: any[]) => any) | undefined;
            readonly onHover?: ((...args: any[]) => any) | undefined;
            readonly onShortcut?: ((...args: any[]) => any) | undefined;
            readonly "onToggle-col"?: ((...args: any[]) => any) | undefined;
            readonly "onType-change"?: ((...args: any[]) => any) | undefined;
            readonly "onTime-change"?: ((...args: any[]) => any) | undefined;
        } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import('vue').Slot<any> | undefined;
        }>;
        $root: import('vue').ComponentPublicInstance | null;
        $parent: import('vue').ComponentPublicInstance | null;
        $host: Element | null;
        $emit: ((event: "confirm", ...args: any[]) => void) & ((event: "click", ...args: any[]) => void) & ((event: "cancel", ...args: any[]) => void) & ((event: "change", ...args: any[]) => void) & ((event: "hover", ...args: any[]) => void) & ((event: "shortcut", ...args: any[]) => void) & ((event: "toggle-col", ...args: any[]) => void) & ((event: "type-change", ...args: any[]) => void) & ((event: "time-change", ...args: any[]) => void);
        $el: HTMLDivElement;
        $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
            type: {
                default: import('./symbol').DatePickerType;
                validator: (value: import('./symbol').DatePickerType) => boolean;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            startValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            endValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            shortcuts: {
                type: import('vue').PropType<import('./symbol').DateShortcut[]>;
                default: () => never[];
            };
            confirmText: {
                type: StringConstructor;
                default: null;
            };
            cancelText: {
                type: StringConstructor;
                default: null;
            };
            today: {
                type: import('vue').PropType<Dateable>;
                default: () => Date;
            };
            disabledDate: {
                type: import('vue').PropType<(date: Date) => boolean>;
                default: () => boolean;
            };
            noAction: {
                type: BooleanConstructor;
                default: boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            range: {
                type: BooleanConstructor;
                default: boolean;
            };
            startActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            endActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            min: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            max: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            disabledTime: {
                type: import('vue').PropType<import('./symbol').DisabledTime>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            selectingType: {
                type: import('vue').PropType<"start" | "end">;
                default: string;
            };
            weekStart: {
                type: NumberConstructor;
                default: null;
            };
            staticWheel: {
                type: BooleanConstructor;
                default: boolean;
            };
            shortcutsPlacement: {
                type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
                default: string;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
        }>> & Readonly<{
            onConfirm?: ((...args: any[]) => any) | undefined;
            onClick?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onHover?: ((...args: any[]) => any) | undefined;
            onShortcut?: ((...args: any[]) => any) | undefined;
            "onToggle-col"?: ((...args: any[]) => any) | undefined;
            "onType-change"?: ((...args: any[]) => any) | undefined;
            "onTime-change"?: ((...args: any[]) => any) | undefined;
        }>, {
            refreshCalendar: (valueType: "start" | "end") => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            confirm: (...args: any[]) => void;
            click: (...args: any[]) => void;
            cancel: (...args: any[]) => void;
            change: (...args: any[]) => void;
            hover: (...args: any[]) => void;
            shortcut: (...args: any[]) => void;
            "toggle-col": (...args: any[]) => void;
            "type-change": (...args: any[]) => void;
            "time-change": (...args: any[]) => void;
        }, string, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
    } & Readonly<{
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        type: "year" | "month" | "date" | "datetime";
        min: Dateable;
        max: Dateable;
        range: boolean;
        enabled: Record<DateTimeType, boolean>;
        today: Dateable;
        weekStart: number;
        disabledDate: (date: Date) => boolean;
        startValue: Record<DateTimeType, number>;
        endValue: Record<DateTimeType, number>;
        labeledBy: string;
        cancelText: string;
        confirmText: string;
        shortcuts: import('./symbol').DateShortcut[];
        steps: number[];
        hasError: boolean;
        disabledTime: import('./symbol').DisabledTime;
        noAction: boolean;
        startActivated: Record<DateTimeType, boolean>;
        endActivated: Record<DateTimeType, boolean>;
        selectingType: "start" | "end";
        staticWheel: boolean;
        shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
    }> & Omit<Readonly<import('vue').ExtractPropTypes<{
        type: {
            default: import('./symbol').DatePickerType;
            validator: (value: import('./symbol').DatePickerType) => boolean;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        startValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        endValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        shortcuts: {
            type: import('vue').PropType<import('./symbol').DateShortcut[]>;
            default: () => never[];
        };
        confirmText: {
            type: StringConstructor;
            default: null;
        };
        cancelText: {
            type: StringConstructor;
            default: null;
        };
        today: {
            type: import('vue').PropType<Dateable>;
            default: () => Date;
        };
        disabledDate: {
            type: import('vue').PropType<(date: Date) => boolean>;
            default: () => boolean;
        };
        noAction: {
            type: BooleanConstructor;
            default: boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        range: {
            type: BooleanConstructor;
            default: boolean;
        };
        startActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        endActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        min: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        max: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        disabledTime: {
            type: import('vue').PropType<import('./symbol').DisabledTime>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        selectingType: {
            type: import('vue').PropType<"start" | "end">;
            default: string;
        };
        weekStart: {
            type: NumberConstructor;
            default: null;
        };
        staticWheel: {
            type: BooleanConstructor;
            default: boolean;
        };
        shortcutsPlacement: {
            type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
            default: string;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
    }>> & Readonly<{
        onConfirm?: ((...args: any[]) => any) | undefined;
        onClick?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
        onHover?: ((...args: any[]) => any) | undefined;
        onShortcut?: ((...args: any[]) => any) | undefined;
        "onToggle-col"?: ((...args: any[]) => any) | undefined;
        "onType-change"?: ((...args: any[]) => any) | undefined;
        "onTime-change"?: ((...args: any[]) => any) | undefined;
    }>, "refreshCalendar" | ("locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement")> & import('vue').ShallowUnwrapRef<{
        refreshCalendar: (valueType: "start" | "end") => void;
    }> & {} & import('vue').ComponentCustomProperties & {} & {
        $slots: Readonly<import('./symbol').DatePanelSlots> & import('./symbol').DatePanelSlots;
    }) | undefined, ({
        $: import('vue').ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }> & Omit<{
            readonly locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            readonly type: "year" | "month" | "date" | "datetime";
            readonly min: Dateable;
            readonly max: Dateable;
            readonly range: boolean;
            readonly enabled: Record<DateTimeType, boolean>;
            readonly today: Dateable;
            readonly weekStart: number;
            readonly disabledDate: (date: Date) => boolean;
            readonly startValue: Record<DateTimeType, number>;
            readonly endValue: Record<DateTimeType, number>;
            readonly cancelText: string;
            readonly confirmText: string;
            readonly shortcuts: import('./symbol').DateShortcut[];
            readonly steps: number[];
            readonly hasError: boolean;
            readonly disabledTime: import('./symbol').DisabledTime;
            readonly noAction: boolean;
            readonly startActivated: Record<DateTimeType, boolean>;
            readonly endActivated: Record<DateTimeType, boolean>;
            readonly selectingType: "start" | "end";
            readonly staticWheel: boolean;
            readonly shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
            readonly labeledBy?: string | undefined;
            readonly onConfirm?: ((...args: any[]) => any) | undefined;
            readonly onClick?: ((...args: any[]) => any) | undefined;
            readonly onCancel?: ((...args: any[]) => any) | undefined;
            readonly onChange?: ((...args: any[]) => any) | undefined;
            readonly onHover?: ((...args: any[]) => any) | undefined;
            readonly onShortcut?: ((...args: any[]) => any) | undefined;
            readonly "onToggle-col"?: ((...args: any[]) => any) | undefined;
            readonly "onType-change"?: ((...args: any[]) => any) | undefined;
            readonly "onTime-change"?: ((...args: any[]) => any) | undefined;
        } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import('vue').Slot<any> | undefined;
        }>;
        $root: import('vue').ComponentPublicInstance | null;
        $parent: import('vue').ComponentPublicInstance | null;
        $host: Element | null;
        $emit: ((event: "confirm", ...args: any[]) => void) & ((event: "click", ...args: any[]) => void) & ((event: "cancel", ...args: any[]) => void) & ((event: "change", ...args: any[]) => void) & ((event: "hover", ...args: any[]) => void) & ((event: "shortcut", ...args: any[]) => void) & ((event: "toggle-col", ...args: any[]) => void) & ((event: "type-change", ...args: any[]) => void) & ((event: "time-change", ...args: any[]) => void);
        $el: HTMLDivElement;
        $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
            type: {
                default: import('./symbol').DatePickerType;
                validator: (value: import('./symbol').DatePickerType) => boolean;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            startValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            endValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            shortcuts: {
                type: import('vue').PropType<import('./symbol').DateShortcut[]>;
                default: () => never[];
            };
            confirmText: {
                type: StringConstructor;
                default: null;
            };
            cancelText: {
                type: StringConstructor;
                default: null;
            };
            today: {
                type: import('vue').PropType<Dateable>;
                default: () => Date;
            };
            disabledDate: {
                type: import('vue').PropType<(date: Date) => boolean>;
                default: () => boolean;
            };
            noAction: {
                type: BooleanConstructor;
                default: boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            range: {
                type: BooleanConstructor;
                default: boolean;
            };
            startActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            endActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            min: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            max: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            disabledTime: {
                type: import('vue').PropType<import('./symbol').DisabledTime>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            selectingType: {
                type: import('vue').PropType<"start" | "end">;
                default: string;
            };
            weekStart: {
                type: NumberConstructor;
                default: null;
            };
            staticWheel: {
                type: BooleanConstructor;
                default: boolean;
            };
            shortcutsPlacement: {
                type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
                default: string;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
        }>> & Readonly<{
            onConfirm?: ((...args: any[]) => any) | undefined;
            onClick?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onHover?: ((...args: any[]) => any) | undefined;
            onShortcut?: ((...args: any[]) => any) | undefined;
            "onToggle-col"?: ((...args: any[]) => any) | undefined;
            "onType-change"?: ((...args: any[]) => any) | undefined;
            "onTime-change"?: ((...args: any[]) => any) | undefined;
        }>, {
            refreshCalendar: (valueType: "start" | "end") => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            confirm: (...args: any[]) => void;
            click: (...args: any[]) => void;
            cancel: (...args: any[]) => void;
            change: (...args: any[]) => void;
            hover: (...args: any[]) => void;
            shortcut: (...args: any[]) => void;
            "toggle-col": (...args: any[]) => void;
            "type-change": (...args: any[]) => void;
            "time-change": (...args: any[]) => void;
        }, string, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
    } & Readonly<{
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        type: "year" | "month" | "date" | "datetime";
        min: Dateable;
        max: Dateable;
        range: boolean;
        enabled: Record<DateTimeType, boolean>;
        today: Dateable;
        weekStart: number;
        disabledDate: (date: Date) => boolean;
        startValue: Record<DateTimeType, number>;
        endValue: Record<DateTimeType, number>;
        labeledBy: string;
        cancelText: string;
        confirmText: string;
        shortcuts: import('./symbol').DateShortcut[];
        steps: number[];
        hasError: boolean;
        disabledTime: import('./symbol').DisabledTime;
        noAction: boolean;
        startActivated: Record<DateTimeType, boolean>;
        endActivated: Record<DateTimeType, boolean>;
        selectingType: "start" | "end";
        staticWheel: boolean;
        shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
    }> & Omit<Readonly<import('vue').ExtractPropTypes<{
        type: {
            default: import('./symbol').DatePickerType;
            validator: (value: import('./symbol').DatePickerType) => boolean;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        startValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        endValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        shortcuts: {
            type: import('vue').PropType<import('./symbol').DateShortcut[]>;
            default: () => never[];
        };
        confirmText: {
            type: StringConstructor;
            default: null;
        };
        cancelText: {
            type: StringConstructor;
            default: null;
        };
        today: {
            type: import('vue').PropType<Dateable>;
            default: () => Date;
        };
        disabledDate: {
            type: import('vue').PropType<(date: Date) => boolean>;
            default: () => boolean;
        };
        noAction: {
            type: BooleanConstructor;
            default: boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        range: {
            type: BooleanConstructor;
            default: boolean;
        };
        startActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        endActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        min: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        max: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        disabledTime: {
            type: import('vue').PropType<import('./symbol').DisabledTime>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        selectingType: {
            type: import('vue').PropType<"start" | "end">;
            default: string;
        };
        weekStart: {
            type: NumberConstructor;
            default: null;
        };
        staticWheel: {
            type: BooleanConstructor;
            default: boolean;
        };
        shortcutsPlacement: {
            type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
            default: string;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
    }>> & Readonly<{
        onConfirm?: ((...args: any[]) => any) | undefined;
        onClick?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
        onHover?: ((...args: any[]) => any) | undefined;
        onShortcut?: ((...args: any[]) => any) | undefined;
        "onToggle-col"?: ((...args: any[]) => any) | undefined;
        "onType-change"?: ((...args: any[]) => any) | undefined;
        "onTime-change"?: ((...args: any[]) => any) | undefined;
    }>, "refreshCalendar" | ("locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement")> & import('vue').ShallowUnwrapRef<{
        refreshCalendar: (valueType: "start" | "end") => void;
    }> & {} & import('vue').ComponentCustomProperties & {} & {
        $slots: Readonly<import('./symbol').DatePanelSlots> & import('./symbol').DatePanelSlots;
    }) | undefined>;
    updatePopper: () => Promise<void>;
    focus: (options?: FocusOptions) => void | undefined;
    blur: () => void | undefined;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    "update:value": (...args: any[]) => void;
    "update:visible": (...args: any[]) => void;
    "update:formatted-value": (...args: any[]) => void;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    inherit: import('vue').PropType<boolean>;
    size: import('vue').PropType<"default" | "small" | "large">;
    state: import('vue').PropType<"default" | "success" | "error" | "warning">;
    locale: import('vue').PropType<Partial<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>>;
    type: import('vue').PropType<"year" | "month" | "date" | "datetime">;
    visible: import('vue').PropType<boolean>;
    placement: import('vue').PropType<"bottom" | "top" | "right" | "left" | "bottom-start" | "bottom-end" | "top-start" | "top-end" | "right-start" | "right-end" | "left-start" | "left-end">;
    transfer: import('vue').PropType<string | boolean>;
    value: import('vue').PropType<string | number | Date | Dateable[]>;
    format: import('vue').PropType<string>;
    valueFormat: import('vue').PropType<string | string[] | DatePickerFormatFn>;
    filler: import('vue').PropType<string>;
    clearable: import('vue').PropType<boolean>;
    noAction: import('vue').PropType<boolean>;
    labels: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
    dateSeparator: import('vue').PropType<string>;
    timeSeparator: import('vue').PropType<string>;
    shortcuts: import('vue').PropType<import('./symbol').DateShortcut[]>;
    disabledDate: import('vue').PropType<(date: Date) => boolean>;
    steps: import('vue').PropType<number[]>;
    ctrlSteps: import('vue').PropType<number[]>;
    prefix: import('vue').PropType<any>;
    prefixColor: import('vue').PropType<string>;
    suffix: import('vue').PropType<any>;
    suffixColor: import('vue').PropType<string>;
    noSuffix: import('vue').PropType<boolean>;
    disabled: import('vue').PropType<boolean>;
    transitionName: import('vue').PropType<string>;
    confirmText: import('vue').PropType<string>;
    cancelText: import('vue').PropType<string>;
    today: import('vue').PropType<string | number | Date>;
    range: import('vue').PropType<boolean>;
    loading: import('vue').PropType<boolean>;
    loadingIcon: import('vue').PropType<any>;
    loadingLock: import('vue').PropType<boolean>;
    loadingEffect: import('vue').PropType<string>;
    min: import('vue').PropType<string | number | Date>;
    max: import('vue').PropType<string | number | Date>;
    outsideClose: import('vue').PropType<boolean>;
    outsideCancel: import('vue').PropType<boolean>;
    placeholder: import('vue').PropType<string | string[]>;
    unitReadonly: import('vue').PropType<boolean>;
    weekStart: import('vue').PropType<number>;
    popperAlive: import('vue').PropType<boolean>;
    shortcutsPlacement: import('vue').PropType<"bottom" | "top" | "right" | "left">;
    slots: import('vue').PropType<DatePickerSlots>;
    onInput: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onPlus: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onMinus: import('vue').PropType<((type: DateTimeType, value: number) => void) | ((type: DateTimeType, value: number) => void)[]>;
    onEnter: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onCancel: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onChange: import('vue').PropType<((value: number) => void) | ((value: number | number[]) => void) | ((value: number[]) => void) | ((value: null) => void) | ((value: number[] | null) => void) | ((value: number | null) => void) | ((value: number | number[] | null) => void) | (((value: number) => void) | ((value: number | number[]) => void) | ((value: number[]) => void) | ((value: null) => void) | ((value: number[] | null) => void) | ((value: number | null) => void) | ((value: number | number[] | null) => void))[]>;
    onClear: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onShortcut: import('vue').PropType<import('./props').DatePickerShortcutEvent | import('./props').DatePickerShortcutEvent[]>;
    onToggle: import('vue').PropType<((visible: boolean) => void) | ((visible: boolean) => void)[]>;
    onFocus: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onBlur: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onChangeCol: import('vue').PropType<((type: DateTimeType | null, inputType: "start" | "end") => void) | ((type: DateTimeType | null, inputType: "start" | "end") => void)[]>;
    onClickOutside: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
    onOutsideClose: import('vue').PropType<import('@vexip-ui/config').AnyFunction | import('@vexip-ui/config').AnyFunction[]>;
}>> & Readonly<{
    "onUpdate:value"?: ((...args: any[]) => any) | undefined;
    "onUpdate:visible"?: ((...args: any[]) => any) | undefined;
    "onUpdate:formatted-value"?: ((...args: any[]) => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {
    wrapper: HTMLDivElement;
    reference: HTMLDivElement;
    start: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | null;
    end: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
        input: (...args: any[]) => void;
        plus: (...args: any[]) => void;
        minus: (...args: any[]) => void;
        blur: (...args: any[]) => void;
        cancel: (...args: any[]) => void;
        enter: (...args: any[]) => void;
        "unit-focus": (...args: any[]) => void;
        "prev-unit": (...args: any[]) => void;
        "next-unit": (...args: any[]) => void;
    }, import('vue').PublicProps, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {
        wrapper: HTMLDivElement;
    }, HTMLDivElement, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        unitType: {
            type: import('vue').PropType<DateTimeType | "">;
            default: string;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        activated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        dateValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: () => {};
        };
        dateSeparator: {
            type: StringConstructor;
            default: string;
        };
        timeSeparator: {
            type: StringConstructor;
            default: string;
        };
        visible: {
            type: BooleanConstructor;
            default: boolean;
        };
        focused: {
            type: BooleanConstructor;
            default: boolean;
        };
        filler: {
            type: StringConstructor;
            default: string;
            validator: (value: string) => boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        ctrlSteps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        labels: {
            type: import('vue').PropType<Partial<Record<DateTimeType, string>>>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        placeholder: {
            type: StringConstructor;
            default: string;
        };
        readonly: {
            type: BooleanConstructor;
            default: boolean;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        dateUnitOrder: {
            type: import('vue').PropType<DateType[]>;
            default: () => string[];
        };
    }>> & Readonly<{
        onInput?: ((...args: any[]) => any) | undefined;
        onPlus?: ((...args: any[]) => any) | undefined;
        onMinus?: ((...args: any[]) => any) | undefined;
        onBlur?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onEnter?: ((...args: any[]) => any) | undefined;
        "onUnit-focus"?: ((...args: any[]) => any) | undefined;
        "onPrev-unit"?: ((...args: any[]) => any) | undefined;
        "onNext-unit"?: ((...args: any[]) => any) | undefined;
    }>, {
        isActivated: import('vue').ComputedRef<boolean>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        focus: () => void;
        blur: () => void;
    }, {}, {}, {}, {
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        visible: boolean;
        placeholder: string;
        readonly: boolean;
        focused: boolean;
        activated: Record<DateTimeType, boolean>;
        enabled: Record<DateTimeType, boolean>;
        filler: string;
        labeledBy: string;
        unitType: "" | DateTimeType;
        dateValue: Record<DateTimeType, number>;
        dateSeparator: string;
        timeSeparator: string;
        steps: number[];
        ctrlSteps: number[];
        labels: Partial<Record<DateTimeType, string>>;
        hasError: boolean;
        dateUnitOrder: DateType[];
    }> | null;
    popper: import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
        inherit: import('vue').PropType<boolean>;
        visible: import('vue').PropType<boolean>;
        alive: import('vue').PropType<boolean>;
        to: import('vue').PropType<string>;
        transition: import('vue').PropType<string>;
        appear: import('vue').PropType<boolean>;
        role: import('vue').PropType<string>;
        onBeforeEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onAfterEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onEnterCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onBeforeLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onAfterLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onLeaveCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
    }>> & Readonly<{}>, {
        nh: import('../../common/bem-helper/dist').NBEM<"popper", "vxp">;
        props: {
            readonly inherit: boolean;
            readonly visible: boolean;
            readonly role: string;
            readonly appear: boolean;
            readonly onBeforeEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onAfterEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onEnterCancelled: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onBeforeLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onAfterLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onLeaveCancelled: ((el: Element) => void) | ((el: Element) => void)[];
            readonly transition: string;
            readonly to: string;
            readonly alive: boolean;
        };
        zIndex: import('vue').Ref<number, number>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        emitHookEvent: (name: "be" | "e" | "ae" | "ec" | "bl" | "l" | "al" | "lc", el: Element) => void;
    }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, never[], import('vue').PublicProps, {}, true, {}, {}, {
        Portal: {
            new (...args: any[]): import('vue').CreateComponentPublicInstanceWithMixins<Readonly<import('vue').ExtractPropTypes<{
                to: {
                    type: StringConstructor;
                    default: string;
                };
            }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, import('vue').PublicProps, {
                to: string;
            }, true, {}, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
                P: {};
                B: {};
                D: {};
                C: {};
                M: {};
                Defaults: {};
            }, Readonly<import('vue').ExtractPropTypes<{
                to: {
                    type: StringConstructor;
                    default: string;
                };
            }>> & Readonly<{}>, {}, {}, {}, {}, {
                to: string;
            }>;
            __isFragment?: never;
            __isTeleport?: never;
            __isSuspense?: never;
        } & import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
            to: {
                type: StringConstructor;
                default: string;
            };
        }>> & Readonly<{}>, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, {
            to: string;
        }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps & (new () => {
            $slots: {
                default?(_: {}): any;
            };
        });
    } & import('vue').GlobalComponents, import('vue').GlobalDirectives, string, {}, any, import('vue').ComponentProvideOptions, {
        P: {};
        B: {};
        D: {};
        C: {};
        M: {};
        Defaults: {};
    }, Readonly<import('vue').ExtractPropTypes<{
        inherit: import('vue').PropType<boolean>;
        visible: import('vue').PropType<boolean>;
        alive: import('vue').PropType<boolean>;
        to: import('vue').PropType<string>;
        transition: import('vue').PropType<string>;
        appear: import('vue').PropType<boolean>;
        role: import('vue').PropType<string>;
        onBeforeEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onAfterEnter: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onEnterCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onBeforeLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onAfterLeave: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
        onLeaveCancelled: import('vue').PropType<((el: Element) => void) | ((el: Element) => void)[]>;
    }>> & Readonly<{}>, {
        nh: import('../../common/bem-helper/dist').NBEM<"popper", "vxp">;
        props: {
            readonly inherit: boolean;
            readonly visible: boolean;
            readonly role: string;
            readonly appear: boolean;
            readonly onBeforeEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onAfterEnter: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onEnterCancelled: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onBeforeLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onAfterLeave: ((el: Element) => void) | ((el: Element) => void)[];
            readonly onLeaveCancelled: ((el: Element) => void) | ((el: Element) => void)[];
            readonly transition: string;
            readonly to: string;
            readonly alive: boolean;
        };
        zIndex: import('vue').Ref<number, number>;
        wrapper: import('vue').Ref<HTMLElement | undefined, HTMLElement | undefined>;
        emitHookEvent: (name: "be" | "e" | "ae" | "ec" | "bl" | "l" | "al" | "lc", el: Element) => void;
    }, {}, {}, {}, {}> | null;
    panel: ({
        $: import('vue').ComponentInternalInstance;
        $data: {};
        $props: Partial<{
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }> & Omit<{
            readonly locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            readonly type: "year" | "month" | "date" | "datetime";
            readonly min: Dateable;
            readonly max: Dateable;
            readonly range: boolean;
            readonly enabled: Record<DateTimeType, boolean>;
            readonly today: Dateable;
            readonly weekStart: number;
            readonly disabledDate: (date: Date) => boolean;
            readonly startValue: Record<DateTimeType, number>;
            readonly endValue: Record<DateTimeType, number>;
            readonly cancelText: string;
            readonly confirmText: string;
            readonly shortcuts: import('./symbol').DateShortcut[];
            readonly steps: number[];
            readonly hasError: boolean;
            readonly disabledTime: import('./symbol').DisabledTime;
            readonly noAction: boolean;
            readonly startActivated: Record<DateTimeType, boolean>;
            readonly endActivated: Record<DateTimeType, boolean>;
            readonly selectingType: "start" | "end";
            readonly staticWheel: boolean;
            readonly shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
            readonly labeledBy?: string | undefined;
            readonly onConfirm?: ((...args: any[]) => any) | undefined;
            readonly onClick?: ((...args: any[]) => any) | undefined;
            readonly onCancel?: ((...args: any[]) => any) | undefined;
            readonly onChange?: ((...args: any[]) => any) | undefined;
            readonly onHover?: ((...args: any[]) => any) | undefined;
            readonly onShortcut?: ((...args: any[]) => any) | undefined;
            readonly "onToggle-col"?: ((...args: any[]) => any) | undefined;
            readonly "onType-change"?: ((...args: any[]) => any) | undefined;
            readonly "onTime-change"?: ((...args: any[]) => any) | undefined;
        } & import('vue').VNodeProps & import('vue').AllowedComponentProps & import('vue').ComponentCustomProps, "locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement">;
        $attrs: {
            [x: string]: unknown;
        };
        $refs: {
            [x: string]: unknown;
        };
        $slots: Readonly<{
            [name: string]: import('vue').Slot<any> | undefined;
        }>;
        $root: import('vue').ComponentPublicInstance | null;
        $parent: import('vue').ComponentPublicInstance | null;
        $host: Element | null;
        $emit: ((event: "confirm", ...args: any[]) => void) & ((event: "click", ...args: any[]) => void) & ((event: "cancel", ...args: any[]) => void) & ((event: "change", ...args: any[]) => void) & ((event: "hover", ...args: any[]) => void) & ((event: "shortcut", ...args: any[]) => void) & ((event: "toggle-col", ...args: any[]) => void) & ((event: "type-change", ...args: any[]) => void) & ((event: "time-change", ...args: any[]) => void);
        $el: HTMLDivElement;
        $options: import('vue').ComponentOptionsBase<Readonly<import('vue').ExtractPropTypes<{
            type: {
                default: import('./symbol').DatePickerType;
                validator: (value: import('./symbol').DatePickerType) => boolean;
            };
            enabled: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            startValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            endValue: {
                type: import('vue').PropType<Record<DateTimeType, number>>;
                default: null;
            };
            shortcuts: {
                type: import('vue').PropType<import('./symbol').DateShortcut[]>;
                default: () => never[];
            };
            confirmText: {
                type: StringConstructor;
                default: null;
            };
            cancelText: {
                type: StringConstructor;
                default: null;
            };
            today: {
                type: import('vue').PropType<Dateable>;
                default: () => Date;
            };
            disabledDate: {
                type: import('vue').PropType<(date: Date) => boolean>;
                default: () => boolean;
            };
            noAction: {
                type: BooleanConstructor;
                default: boolean;
            };
            steps: {
                type: import('vue').PropType<number[]>;
                default: () => number[];
            };
            range: {
                type: BooleanConstructor;
                default: boolean;
            };
            startActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            endActivated: {
                type: import('vue').PropType<Record<DateTimeType, boolean>>;
                default: () => {};
            };
            min: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            max: {
                type: import('vue').PropType<Dateable>;
                default: null;
            };
            disabledTime: {
                type: import('vue').PropType<import('./symbol').DisabledTime>;
                default: () => {};
            };
            hasError: {
                type: BooleanConstructor;
                default: boolean;
            };
            locale: {
                type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
                default: () => {};
            };
            selectingType: {
                type: import('vue').PropType<"start" | "end">;
                default: string;
            };
            weekStart: {
                type: NumberConstructor;
                default: null;
            };
            staticWheel: {
                type: BooleanConstructor;
                default: boolean;
            };
            shortcutsPlacement: {
                type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
                default: string;
            };
            labeledBy: {
                type: StringConstructor;
                default: undefined;
            };
        }>> & Readonly<{
            onConfirm?: ((...args: any[]) => any) | undefined;
            onClick?: ((...args: any[]) => any) | undefined;
            onCancel?: ((...args: any[]) => any) | undefined;
            onChange?: ((...args: any[]) => any) | undefined;
            onHover?: ((...args: any[]) => any) | undefined;
            onShortcut?: ((...args: any[]) => any) | undefined;
            "onToggle-col"?: ((...args: any[]) => any) | undefined;
            "onType-change"?: ((...args: any[]) => any) | undefined;
            "onTime-change"?: ((...args: any[]) => any) | undefined;
        }>, {
            refreshCalendar: (valueType: "start" | "end") => void;
        }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
            confirm: (...args: any[]) => void;
            click: (...args: any[]) => void;
            cancel: (...args: any[]) => void;
            change: (...args: any[]) => void;
            hover: (...args: any[]) => void;
            shortcut: (...args: any[]) => void;
            "toggle-col": (...args: any[]) => void;
            "type-change": (...args: any[]) => void;
            "time-change": (...args: any[]) => void;
        }, string, {
            locale: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
                ariaLabel: {
                    year: string;
                    month: string;
                    month1: string;
                    month2: string;
                    month3: string;
                    month4: string;
                    month5: string;
                    month6: string;
                    month7: string;
                    month8: string;
                    month9: string;
                    month10: string;
                    month11: string;
                    month12: string;
                    week1: string;
                    week2: string;
                    week3: string;
                    week4: string;
                    week5: string;
                    week6: string;
                    week7: string;
                };
            } & {
                confirm: string;
                cancel: string;
                placeholder: {
                    year: string;
                    month: string;
                    date: string;
                    datetime: string;
                    start: string;
                    end: string;
                    select: string;
                };
                startTime: string;
                endTime: string;
                ariaLabel: {
                    clear: string;
                    quarter: string;
                    week: string;
                    date: string;
                    hour: string;
                    minute: string;
                    second: string;
                };
            };
            type: "year" | "month" | "date" | "datetime";
            min: Dateable;
            max: Dateable;
            range: boolean;
            enabled: Record<DateTimeType, boolean>;
            today: Dateable;
            weekStart: number;
            disabledDate: (date: Date) => boolean;
            startValue: Record<DateTimeType, number>;
            endValue: Record<DateTimeType, number>;
            labeledBy: string;
            cancelText: string;
            confirmText: string;
            shortcuts: import('./symbol').DateShortcut[];
            steps: number[];
            hasError: boolean;
            disabledTime: import('./symbol').DisabledTime;
            noAction: boolean;
            startActivated: Record<DateTimeType, boolean>;
            endActivated: Record<DateTimeType, boolean>;
            selectingType: "start" | "end";
            staticWheel: boolean;
            shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
        }, {}, string, {}, import('vue').GlobalComponents, import('vue').GlobalDirectives, string, import('vue').ComponentProvideOptions> & {
            beforeCreate?: (() => void) | (() => void)[];
            created?: (() => void) | (() => void)[];
            beforeMount?: (() => void) | (() => void)[];
            mounted?: (() => void) | (() => void)[];
            beforeUpdate?: (() => void) | (() => void)[];
            updated?: (() => void) | (() => void)[];
            activated?: (() => void) | (() => void)[];
            deactivated?: (() => void) | (() => void)[];
            beforeDestroy?: (() => void) | (() => void)[];
            beforeUnmount?: (() => void) | (() => void)[];
            destroyed?: (() => void) | (() => void)[];
            unmounted?: (() => void) | (() => void)[];
            renderTracked?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            renderTriggered?: ((e: import('vue').DebuggerEvent) => void) | ((e: import('vue').DebuggerEvent) => void)[];
            errorCaptured?: ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void) | ((err: unknown, instance: import('vue').ComponentPublicInstance | null, info: string) => boolean | void)[];
        };
        $forceUpdate: () => void;
        $nextTick: typeof nextTick;
        $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, import('@vue/reactivity').OnCleanup]) => any : (...args: [any, any, import('@vue/reactivity').OnCleanup]) => any, options?: import('vue').WatchOptions): import('vue').WatchStopHandle;
    } & Readonly<{
        locale: {
            year: string;
            month: string;
            month1: string;
            month2: string;
            month3: string;
            month4: string;
            month5: string;
            month6: string;
            month7: string;
            month8: string;
            month9: string;
            month10: string;
            month11: string;
            month12: string;
            week1: string;
            week2: string;
            week3: string;
            week4: string;
            week5: string;
            week6: string;
            week7: string;
            ariaLabel: {
                year: string;
                month: string;
                month1: string;
                month2: string;
                month3: string;
                month4: string;
                month5: string;
                month6: string;
                month7: string;
                month8: string;
                month9: string;
                month10: string;
                month11: string;
                month12: string;
                week1: string;
                week2: string;
                week3: string;
                week4: string;
                week5: string;
                week6: string;
                week7: string;
            };
        } & {
            confirm: string;
            cancel: string;
            placeholder: {
                year: string;
                month: string;
                date: string;
                datetime: string;
                start: string;
                end: string;
                select: string;
            };
            startTime: string;
            endTime: string;
            ariaLabel: {
                clear: string;
                quarter: string;
                week: string;
                date: string;
                hour: string;
                minute: string;
                second: string;
            };
        };
        type: "year" | "month" | "date" | "datetime";
        min: Dateable;
        max: Dateable;
        range: boolean;
        enabled: Record<DateTimeType, boolean>;
        today: Dateable;
        weekStart: number;
        disabledDate: (date: Date) => boolean;
        startValue: Record<DateTimeType, number>;
        endValue: Record<DateTimeType, number>;
        labeledBy: string;
        cancelText: string;
        confirmText: string;
        shortcuts: import('./symbol').DateShortcut[];
        steps: number[];
        hasError: boolean;
        disabledTime: import('./symbol').DisabledTime;
        noAction: boolean;
        startActivated: Record<DateTimeType, boolean>;
        endActivated: Record<DateTimeType, boolean>;
        selectingType: "start" | "end";
        staticWheel: boolean;
        shortcutsPlacement: import('./symbol').DateShortcutsPlacement;
    }> & Omit<Readonly<import('vue').ExtractPropTypes<{
        type: {
            default: import('./symbol').DatePickerType;
            validator: (value: import('./symbol').DatePickerType) => boolean;
        };
        enabled: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        startValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        endValue: {
            type: import('vue').PropType<Record<DateTimeType, number>>;
            default: null;
        };
        shortcuts: {
            type: import('vue').PropType<import('./symbol').DateShortcut[]>;
            default: () => never[];
        };
        confirmText: {
            type: StringConstructor;
            default: null;
        };
        cancelText: {
            type: StringConstructor;
            default: null;
        };
        today: {
            type: import('vue').PropType<Dateable>;
            default: () => Date;
        };
        disabledDate: {
            type: import('vue').PropType<(date: Date) => boolean>;
            default: () => boolean;
        };
        noAction: {
            type: BooleanConstructor;
            default: boolean;
        };
        steps: {
            type: import('vue').PropType<number[]>;
            default: () => number[];
        };
        range: {
            type: BooleanConstructor;
            default: boolean;
        };
        startActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        endActivated: {
            type: import('vue').PropType<Record<DateTimeType, boolean>>;
            default: () => {};
        };
        min: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        max: {
            type: import('vue').PropType<Dateable>;
            default: null;
        };
        disabledTime: {
            type: import('vue').PropType<import('./symbol').DisabledTime>;
            default: () => {};
        };
        hasError: {
            type: BooleanConstructor;
            default: boolean;
        };
        locale: {
            type: import('vue').PropType<import('@vexip-ui/config').LocaleConfig["calendar"] & import('@vexip-ui/config').LocaleConfig["datePicker"]>;
            default: () => {};
        };
        selectingType: {
            type: import('vue').PropType<"start" | "end">;
            default: string;
        };
        weekStart: {
            type: NumberConstructor;
            default: null;
        };
        staticWheel: {
            type: BooleanConstructor;
            default: boolean;
        };
        shortcutsPlacement: {
            type: import('vue').PropType<import('./symbol').DateShortcutsPlacement>;
            default: string;
        };
        labeledBy: {
            type: StringConstructor;
            default: undefined;
        };
    }>> & Readonly<{
        onConfirm?: ((...args: any[]) => any) | undefined;
        onClick?: ((...args: any[]) => any) | undefined;
        onCancel?: ((...args: any[]) => any) | undefined;
        onChange?: ((...args: any[]) => any) | undefined;
        onHover?: ((...args: any[]) => any) | undefined;
        onShortcut?: ((...args: any[]) => any) | undefined;
        "onToggle-col"?: ((...args: any[]) => any) | undefined;
        "onType-change"?: ((...args: any[]) => any) | undefined;
        "onTime-change"?: ((...args: any[]) => any) | undefined;
    }>, "refreshCalendar" | ("locale" | "type" | "min" | "max" | "range" | "enabled" | "today" | "weekStart" | "disabledDate" | "startValue" | "endValue" | "labeledBy" | "cancelText" | "confirmText" | "shortcuts" | "steps" | "hasError" | "disabledTime" | "noAction" | "startActivated" | "endActivated" | "selectingType" | "staticWheel" | "shortcutsPlacement")> & import('vue').ShallowUnwrapRef<{
        refreshCalendar: (valueType: "start" | "end") => void;
    }> & {} & import('vue').ComponentCustomProperties & {} & {
        $slots: Readonly<import('./symbol').DatePanelSlots> & import('./symbol').DatePanelSlots;
    }) | null;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
