export declare const HlCalendar: import("hongluan-ui/es/utils").SFCWithInstall<import("vue").DefineComponent<{
    readonly modelValue: {
        readonly type: import("vue").PropType<Date>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly range: {
        readonly type: import("vue").PropType<[Date, Date]>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
}, {
    COMPONENT_NAME: string;
    props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
        readonly modelValue: {
            readonly type: import("vue").PropType<Date>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly range: {
            readonly type: import("vue").PropType<[Date, Date]>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
    }>> & {
        "onUpdate:modelValue"?: (value: Date) => any;
        onInput?: (value: Date) => any;
    }>>;
    emit: ((event: "update:modelValue", value: Date) => void) & ((event: "input", value: Date) => void);
    namespace: import("vue").ComputedRef<string>;
    calculateValidatedDateRange: (startDayjs: import("dayjs").Dayjs, endDayjs: import("dayjs").Dayjs) => [import("dayjs").Dayjs, import("dayjs").Dayjs][];
    date: import("vue").ComputedRef<import("dayjs").Dayjs>;
    pickDay: (day: import("dayjs").Dayjs) => void;
    realSelectedDay: import("vue").WritableComputedRef<import("dayjs").Dayjs>;
    selectDate: (type: import("./src/calendar").CalendarDateType) => void;
    validatedRange: import("vue").ComputedRef<[import("dayjs").Dayjs, import("dayjs").Dayjs][]>;
    t: import("../..").Translator;
    i18nDate: import("vue").ComputedRef<string>;
    HlButton: import("hongluan-ui/es/utils").SFCWithInstall<import("vue").DefineComponent<{
        type: {
            type: import("vue").PropType<"success" | "info" | "warning" | "danger" | "link" | "primary">;
            validator: (val: string) => boolean;
        };
        size: {
            type: import("vue").PropType<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
            validator: (val: string) => boolean;
        };
        iconPosition: {
            type: import("vue").PropType<"left" | "right">;
            default: string;
        };
        nativeType: {
            type: import("vue").PropType<"button" | "reset" | "submit">;
            default: string;
            validator: (val: "button" | "reset" | "submit") => boolean;
        };
        loading: BooleanConstructor;
        disabled: BooleanConstructor;
        autofocus: BooleanConstructor;
        round: BooleanConstructor;
        equal: BooleanConstructor;
        effect: StringConstructor;
        noFill: BooleanConstructor;
        outline: BooleanConstructor;
        block: BooleanConstructor;
        rational: BooleanConstructor;
        dashed: BooleanConstructor;
        hover: (BooleanConstructor | StringConstructor)[];
        tag: {
            type: import("vue").PropType<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
            default: string;
        };
    }, {
        props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
            type: {
                type: import("vue").PropType<"success" | "info" | "warning" | "danger" | "link" | "primary">;
                validator: (val: string) => boolean;
            };
            size: {
                type: import("vue").PropType<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
                validator: (val: string) => boolean;
            };
            iconPosition: {
                type: import("vue").PropType<"left" | "right">;
                default: string;
            };
            nativeType: {
                type: import("vue").PropType<"button" | "reset" | "submit">;
                default: string;
                validator: (val: "button" | "reset" | "submit") => boolean;
            };
            loading: BooleanConstructor;
            disabled: BooleanConstructor;
            autofocus: BooleanConstructor;
            round: BooleanConstructor;
            equal: BooleanConstructor;
            effect: StringConstructor;
            noFill: BooleanConstructor;
            outline: BooleanConstructor;
            block: BooleanConstructor;
            rational: BooleanConstructor;
            dashed: BooleanConstructor;
            hover: (BooleanConstructor | StringConstructor)[];
            tag: {
                type: import("vue").PropType<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
                default: string;
            };
        }>> & {
            onClick?: (evt: MouseEvent) => any;
        }>>;
        emit: (event: "click", evt: MouseEvent) => void;
        namespace: import("vue").ComputedRef<string>;
        _ref: import("vue").Ref<HTMLButtonElement>;
        _props: import("vue").ComputedRef<{
            ariaDisabled: boolean;
            disabled: boolean;
            autofocus: boolean;
            type: "button" | "reset" | "submit";
        } | {
            ariaDisabled?: undefined;
            disabled?: undefined;
            autofocus?: undefined;
            type?: undefined;
        }>;
        buttonDisabled: import("vue").ComputedRef<boolean>;
        buttonSize: import("vue").ComputedRef<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
        handleClick: (evt: MouseEvent) => void;
        Spinner: import("hongluan-ui/es/utils").SFCWithInstall<import("vue").DefineComponent<{
            status: {
                type: StringConstructor;
                default: string;
            };
            animation: {
                type: StringConstructor;
                default: string;
            };
            duration: {
                type: StringConstructor;
                default: string;
            };
            color: {
                type: StringConstructor;
            };
            size: StringConstructor;
        }, {
            namespace: import("vue").ComputedRef<string>;
            style: any;
            definedSize: import("vue").Ref<boolean>;
        }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
            status: {
                type: StringConstructor;
                default: string;
            };
            animation: {
                type: StringConstructor;
                default: string;
            };
            duration: {
                type: StringConstructor;
                default: string;
            };
            color: {
                type: StringConstructor;
            };
            size: StringConstructor;
        }>>, {
            animation: string;
            status: string;
            duration: string;
        }>> & Record<string, any>;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        click: (evt: MouseEvent) => boolean;
    }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
        type: {
            type: import("vue").PropType<"success" | "info" | "warning" | "danger" | "link" | "primary">;
            validator: (val: string) => boolean;
        };
        size: {
            type: import("vue").PropType<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
            validator: (val: string) => boolean;
        };
        iconPosition: {
            type: import("vue").PropType<"left" | "right">;
            default: string;
        };
        nativeType: {
            type: import("vue").PropType<"button" | "reset" | "submit">;
            default: string;
            validator: (val: "button" | "reset" | "submit") => boolean;
        };
        loading: BooleanConstructor;
        disabled: BooleanConstructor;
        autofocus: BooleanConstructor;
        round: BooleanConstructor;
        equal: BooleanConstructor;
        effect: StringConstructor;
        noFill: BooleanConstructor;
        outline: BooleanConstructor;
        block: BooleanConstructor;
        rational: BooleanConstructor;
        dashed: BooleanConstructor;
        hover: (BooleanConstructor | StringConstructor)[];
        tag: {
            type: import("vue").PropType<string | import("vue").Component<any, any, any, import("vue").ComputedOptions, import("vue").MethodOptions>>;
            default: string;
        };
    }>> & {
        onClick?: (evt: MouseEvent) => any;
    }, {
        block: boolean;
        disabled: boolean;
        round: boolean;
        dashed: boolean;
        nativeType: "button" | "reset" | "submit";
        autofocus: boolean;
        outline: boolean;
        tag: string;
        loading: boolean;
        iconPosition: "left" | "right";
        equal: boolean;
        noFill: boolean;
        rational: boolean;
    }>> & Record<string, any>;
    HlGroup: import("hongluan-ui/es/utils").SFCWithInstall<import("vue").DefineComponent<{
        dir: {
            type: import("vue").PropType<"horizontal" | "vertical">;
            default: string;
        };
        merge: {
            type: BooleanConstructor;
            default: boolean;
        };
        deepMerge: {
            type: BooleanConstructor;
            default: boolean;
        };
        indent: {
            type: (BooleanConstructor | StringConstructor)[];
            default: boolean;
        };
        gap: StringConstructor;
        gapX: StringConstructor;
        gapY: StringConstructor;
        full: {
            type: (BooleanConstructor | StringConstructor)[];
            default: boolean;
        };
        wrap: {
            type: BooleanConstructor;
            default: boolean;
        };
        align: {
            type: StringConstructor;
            default: string;
        };
        block: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: import("vue").PropType<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
            validator: (val: string) => boolean;
        };
        disabled: BooleanConstructor;
        fill: BooleanConstructor;
        type: {
            type: import("vue").PropType<"success" | "info" | "warning" | "danger" | "link" | "primary">;
            validator: (val: string) => boolean;
        };
    }, () => import("vue").VNode<import("vue").RendererNode, import("vue").RendererElement, {
        [key: string]: any;
    }>, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
        dir: {
            type: import("vue").PropType<"horizontal" | "vertical">;
            default: string;
        };
        merge: {
            type: BooleanConstructor;
            default: boolean;
        };
        deepMerge: {
            type: BooleanConstructor;
            default: boolean;
        };
        indent: {
            type: (BooleanConstructor | StringConstructor)[];
            default: boolean;
        };
        gap: StringConstructor;
        gapX: StringConstructor;
        gapY: StringConstructor;
        full: {
            type: (BooleanConstructor | StringConstructor)[];
            default: boolean;
        };
        wrap: {
            type: BooleanConstructor;
            default: boolean;
        };
        align: {
            type: StringConstructor;
            default: string;
        };
        block: {
            type: BooleanConstructor;
            default: boolean;
        };
        size: {
            type: import("vue").PropType<"xxxs" | "xxs" | "xs" | "sm" | "md" | "lg" | "xl" | "xxl" | "xxxl">;
            validator: (val: string) => boolean;
        };
        disabled: BooleanConstructor;
        fill: BooleanConstructor;
        type: {
            type: import("vue").PropType<"success" | "info" | "warning" | "danger" | "link" | "primary">;
            validator: (val: string) => boolean;
        };
    }>>, {
        dir: "horizontal" | "vertical";
        merge: boolean;
        deepMerge: boolean;
        indent: string | boolean;
        full: string | boolean;
        wrap: boolean;
        align: string;
        block: boolean;
        disabled: boolean;
        fill: boolean;
    }>> & Record<string, any>;
    DateTable: import("vue").DefineComponent<{
        readonly selectedDay: {
            readonly type: import("vue").PropType<import("dayjs").Dayjs>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly range: {
            readonly type: import("vue").PropType<[import("dayjs").Dayjs, import("dayjs").Dayjs]>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly date: {
            readonly type: import("vue").PropType<import("dayjs").Dayjs>;
            readonly required: true;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly hideHeader: {
            readonly type: import("vue").PropType<import("hongluan-ui/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
    }, {
        props: Readonly<import("@vue/shared").LooseRequired<Readonly<import("vue").ExtractPropTypes<{
            readonly selectedDay: {
                readonly type: import("vue").PropType<import("dayjs").Dayjs>;
                readonly required: false;
                readonly validator: (val: unknown) => boolean;
                __epPropKey: true;
            };
            readonly range: {
                readonly type: import("vue").PropType<[import("dayjs").Dayjs, import("dayjs").Dayjs]>;
                readonly required: false;
                readonly validator: (val: unknown) => boolean;
                __epPropKey: true;
            };
            readonly date: {
                readonly type: import("vue").PropType<import("dayjs").Dayjs>;
                readonly required: true;
                readonly validator: (val: unknown) => boolean;
                __epPropKey: true;
            };
            readonly hideHeader: {
                readonly type: import("vue").PropType<import("hongluan-ui/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
                readonly required: false;
                readonly validator: (val: unknown) => boolean;
                __epPropKey: true;
            };
        }>> & {
            onPick?: (value: import("dayjs").Dayjs) => any;
        }>>;
        emit: (event: "pick", value: import("dayjs").Dayjs) => void;
        isInRange: import("vue").ComputedRef<boolean>;
        now: import("dayjs").Dayjs;
        rows: import("vue").ComputedRef<import("./src/date-table").CalendarDateCell[][]>;
        weekDays: import("vue").ComputedRef<string[]>;
        getFormattedDate: (day: number, type: import("./src/date-table").CalendarDateCellType) => import("dayjs").Dayjs;
        handlePickDay: ({ text, type }: import("./src/date-table").CalendarDateCell) => void;
        getSlotData: ({ text, type }: import("./src/date-table").CalendarDateCell) => {
            isSelected: boolean;
            type: string;
            day: string;
            date: Date;
        };
        getCellClass: ({ text, type }: import("./src/date-table").CalendarDateCell) => string[];
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
        pick: (value: import("dayjs").Dayjs) => boolean;
    }, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
        readonly selectedDay: {
            readonly type: import("vue").PropType<import("dayjs").Dayjs>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly range: {
            readonly type: import("vue").PropType<[import("dayjs").Dayjs, import("dayjs").Dayjs]>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly date: {
            readonly type: import("vue").PropType<import("dayjs").Dayjs>;
            readonly required: true;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
        readonly hideHeader: {
            readonly type: import("vue").PropType<import("hongluan-ui/es/utils").EpPropMergeType<BooleanConstructor, unknown, unknown>>;
            readonly required: false;
            readonly validator: (val: unknown) => boolean;
            __epPropKey: true;
        };
    }>> & {
        onPick?: (value: import("dayjs").Dayjs) => any;
    }, {}>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    "update:modelValue": (value: Date) => boolean;
    input: (value: Date) => boolean;
}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
    readonly modelValue: {
        readonly type: import("vue").PropType<Date>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
    readonly range: {
        readonly type: import("vue").PropType<[Date, Date]>;
        readonly required: false;
        readonly validator: (val: unknown) => boolean;
        __epPropKey: true;
    };
}>> & {
    "onUpdate:modelValue"?: (value: Date) => any;
    onInput?: (value: Date) => any;
}, {}>> & Record<string, any>;
export default HlCalendar;
export * from './src/calendar';
export type { CalendarDateTableInstance, DateTableInstance, CalendarInstance, } from './src/instance';
