import { AllowedDates, Direction, Lang, SetDateItem, SetUnifyDateItem, TupleDate, UnifyDateItem } from '../../shared/types';
import { SelectDate } from '../shared/types';
declare const _sfc_main: import("vue").DefineComponent<{
    lang: {
        type: null;
        required: true;
    };
    direction: {
        type: null;
        required: true;
    };
    selectedDate: {
        type: null;
        required: true;
    };
    setSelectedDate: {
        type: null;
        required: true;
    };
    allowedDates: {
        type: null;
        required: true;
    };
    selectDate: {
        type: null;
        required: true;
    };
}, {
    props: {
        lang: Lang;
        direction: Direction;
        selectedDate: UnifyDateItem;
        setSelectedDate: SetUnifyDateItem;
        allowedDates: AllowedDates;
        selectDate: SelectDate;
    };
    selectedDateTuple: import("vue").ComputedRef<TupleDate | null>;
    currentDate: TupleDate;
    setLocalSelectedDate: SetDateItem;
    selectedLanguageStrings: import("vue").ComputedRef<import("../shared/types").DatePickerLanguageStrings>;
    allowedDates: import("vue").Ref<AllowedDates>;
    DatePickerUI: import("vue").DefineComponent<{
        date: {
            type: null;
            required: true;
        };
        strings: {
            type: null;
            required: true;
        };
        currentDate: {
            type: null;
            required: true;
        };
        direction: {
            type: null;
            required: true;
        };
        selectedDate: {
            type: null;
            required: true;
        };
        setSelectedDate: {
            type: null;
            required: true;
        };
        allowedDates: {
            type: null;
            required: true;
        };
        selectDate: {
            type: null;
            required: true;
        };
    }, {
        props: {
            date: import('../../shared/types').GeneralDateUtil;
            strings: import("../shared/types").DatePickerLanguageStrings;
            currentDate: TupleDate;
            direction: Direction;
            selectedDate: import('../../shared/types').DateItem;
            setSelectedDate: SetDateItem;
            allowedDates: AllowedDates;
            selectDate: SelectDate;
        };
        refProps: import("vue").ToRefs<{
            date: import('../../shared/types').GeneralDateUtil;
            strings: import("../shared/types").DatePickerLanguageStrings;
            currentDate: TupleDate;
            direction: Direction;
            selectedDate: import('../../shared/types').DateItem;
            setSelectedDate: SetDateItem;
            allowedDates: AllowedDates;
            selectDate: SelectDate;
        }>;
        DatePickerUISlider: import("vue").DefineComponent<{}, {
            currentDate: import("vue").Ref<TupleDate>;
            date: import('../../shared/types').GeneralDateUtil;
            direction: import("vue").Ref<Direction>;
            currentDateSlide: import("vue").Ref<{
                year: number;
                month: number;
            }>;
            isAnimationInverted: import("vue").Ref<boolean>;
            nextMonth: () => void;
            prevMonth: () => void;
            SlideAnimation: import("vue").DefineComponent<{
                isInverted: {
                    type: BooleanConstructor;
                    required: false;
                    default: boolean;
                };
                direction: {
                    type: StringConstructor;
                    required: true;
                };
            }, {
                props: {
                    isInverted: boolean;
                    direction: "ltr" | "rtl";
                };
                animationName: import("vue").ComputedRef<"EMSlide-prev" | "EMSlide">;
            }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                isInverted?: unknown;
                direction?: unknown;
            } & {
                direction: string;
                isInverted: boolean;
            } & {}>, {
                isInverted: boolean;
            }>;
            DatePickerUISliderControllers: import("vue").DefineComponent<{
                currentMonth: {
                    type: NumberConstructor;
                    required: true;
                };
                currentYear: {
                    type: NumberConstructor;
                    required: true;
                };
            }, {
                props: {
                    currentMonth: number;
                    currentYear: number;
                };
                emit: {
                    (e: "next"): void;
                    (e: "prev"): void;
                };
                strings: import("vue").Ref<import("../shared/types").DatePickerLanguageStrings>;
                direction: import("vue").Ref<Direction>;
                isAnimationInverted: import("vue").Ref<boolean>;
                next: () => void;
                prev: () => void;
                StartingArrowButton: import("vue").DefineComponent<{
                    direction: {
                        type: null;
                        required: true;
                    };
                }, {
                    props: {
                        direction: Direction;
                    };
                    emit: (e: "click") => void;
                    ArrowStart: import("vue").ComputedRef<any>;
                    Button: import("vue").DefineComponent<{
                        icon: {
                            type: BooleanConstructor;
                            required: false;
                            default: boolean;
                        };
                        disabled: {
                            type: BooleanConstructor;
                            required: false;
                            default: boolean;
                        };
                        plain: {
                            type: BooleanConstructor;
                            required: false;
                        };
                    }, {
                        props: {
                            icon: boolean;
                            disabled: boolean;
                            plain?: boolean | undefined;
                        };
                        emit: (e: "click") => void;
                        icon: import("vue").Ref<boolean>;
                        disabled: import("vue").Ref<boolean>;
                        plain: import("vue").Ref<boolean | undefined>;
                        checkAndEmitClick: () => void;
                    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                        icon?: unknown;
                        disabled?: unknown;
                        plain?: unknown;
                    } & {
                        disabled: boolean;
                        icon: boolean;
                        plain: boolean;
                    } & {}> & {
                        onClick?: ((...args: any[]) => any) | undefined;
                    }, {
                        disabled: boolean;
                        icon: boolean;
                        plain: boolean;
                    }>;
                }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                    direction?: unknown;
                } & {
                    direction: any;
                } & {}> & {
                    onClick?: ((...args: any[]) => any) | undefined;
                }, {}>;
                EndingArrowButton: import("vue").DefineComponent<{
                    direction: {
                        type: null;
                        required: true;
                    };
                }, {
                    props: {
                        direction: Direction;
                    };
                    emit: (e: "click") => void;
                    ArrowEnd: import("vue").ComputedRef<any>;
                    Button: import("vue").DefineComponent<{
                        icon: {
                            type: BooleanConstructor;
                            required: false;
                            default: boolean;
                        };
                        disabled: {
                            type: BooleanConstructor;
                            required: false;
                            default: boolean;
                        };
                        plain: {
                            type: BooleanConstructor;
                            required: false;
                        };
                    }, {
                        props: {
                            icon: boolean;
                            disabled: boolean;
                            plain?: boolean | undefined;
                        };
                        emit: (e: "click") => void;
                        icon: import("vue").Ref<boolean>;
                        disabled: import("vue").Ref<boolean>;
                        plain: import("vue").Ref<boolean | undefined>;
                        checkAndEmitClick: () => void;
                    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                        icon?: unknown;
                        disabled?: unknown;
                        plain?: unknown;
                    } & {
                        disabled: boolean;
                        icon: boolean;
                        plain: boolean;
                    } & {}> & {
                        onClick?: ((...args: any[]) => any) | undefined;
                    }, {
                        disabled: boolean;
                        icon: boolean;
                        plain: boolean;
                    }>;
                }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                    direction?: unknown;
                } & {
                    direction: any;
                } & {}> & {
                    onClick?: ((...args: any[]) => any) | undefined;
                }, {}>;
            }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("next" | "prev")[], "next" | "prev", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                currentMonth?: unknown;
                currentYear?: unknown;
            } & {
                currentMonth: number;
                currentYear: number;
            } & {}> & {
                onNext?: ((...args: any[]) => any) | undefined;
                onPrev?: ((...args: any[]) => any) | undefined;
            }, {}>;
            DatePickerUISliderGridContainer: import("vue").DefineComponent<{
                currentYear: {
                    type: NumberConstructor;
                    required: true;
                };
                currentMonth: {
                    type: NumberConstructor;
                    required: true;
                };
            }, {
                date: import('../../shared/types').GeneralDateUtil;
                strings: import("vue").Ref<import("../shared/types").DatePickerLanguageStrings>;
                selectedDate: import("vue").Ref<import('../../shared/types').DateItem>;
                setSelectedDate: SetDateItem;
                props: {
                    currentYear: number;
                    currentMonth: number;
                };
                selectDate: (day: number) => void;
                firstDayOfMonth: import("vue").ComputedRef<number>;
                lastDayOfMonth: import("vue").ComputedRef<number>;
                monthDays: import("vue").ComputedRef<number>;
                DatePickerUISliderGrid: import("vue").DefineComponent<unknown, object, {}, import("vue").ComputedOptions, import("vue").MethodOptions, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<unknown>, {}>;
            }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                currentYear?: unknown;
                currentMonth?: unknown;
            } & {
                currentMonth: number;
                currentYear: number;
            } & {}>, {}>;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{} & {} & {}>, {}>;
        DatePickerUIFooter: import("vue").DefineComponent<{}, {
            strings: import("vue").Ref<import("../shared/types").DatePickerLanguageStrings>;
            selectedDate: import("vue").Ref<import('../../shared/types').DateItem>;
            selectDate: SelectDate;
            isDateSelected: import("vue").ComputedRef<boolean>;
            datePreviewString: import("vue").ComputedRef<string>;
            Button: import("vue").DefineComponent<{
                icon: {
                    type: BooleanConstructor;
                    required: false;
                    default: boolean;
                };
                disabled: {
                    type: BooleanConstructor;
                    required: false;
                    default: boolean;
                };
                plain: {
                    type: BooleanConstructor;
                    required: false;
                };
            }, {
                props: {
                    icon: boolean;
                    disabled: boolean;
                    plain?: boolean | undefined;
                };
                emit: (e: "click") => void;
                icon: import("vue").Ref<boolean>;
                disabled: import("vue").Ref<boolean>;
                plain: import("vue").Ref<boolean | undefined>;
                checkAndEmitClick: () => void;
            }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, "click"[], "click", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
                icon?: unknown;
                disabled?: unknown;
                plain?: unknown;
            } & {
                disabled: boolean;
                icon: boolean;
                plain: boolean;
            } & {}> & {
                onClick?: ((...args: any[]) => any) | undefined;
            }, {
                disabled: boolean;
                icon: boolean;
                plain: boolean;
            }>;
            VerticalSlideAnimation: any;
        }, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, import("vue").EmitsOptions, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{} & {} & {}>, {}>;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
        date?: unknown;
        strings?: unknown;
        currentDate?: unknown;
        direction?: unknown;
        selectedDate?: unknown;
        setSelectedDate?: unknown;
        allowedDates?: unknown;
        selectDate?: unknown;
    } & {
        date: any;
        allowedDates: any;
        strings: any;
        currentDate: any;
        direction: any;
        selectDate: any;
        selectedDate: any;
        setSelectedDate: any;
    } & {}>, {}>;
    date: import('../../shared/types').GeneralDateUtil;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    lang?: unknown;
    direction?: unknown;
    selectedDate?: unknown;
    setSelectedDate?: unknown;
    allowedDates?: unknown;
    selectDate?: unknown;
} & {
    lang: any;
    allowedDates: any;
    direction: any;
    selectDate: any;
    selectedDate: any;
    setSelectedDate: any;
} & {}>, {}>;
export default _sfc_main;
