import TabPane from './src/tab-pane.vue';
import type { SFCWithInstall } from 'element-plus/es/utils/types';
declare const _Tabs: SFCWithInstall<import("vue").DefineComponent<{
    type: {
        type: import("vue").PropType<import("./src/token").ITabType>;
        default: string;
    };
    activeName: {
        type: StringConstructor;
        default: string;
    };
    closable: BooleanConstructor;
    addable: BooleanConstructor;
    modelValue: {
        type: StringConstructor;
        default: string;
    };
    editable: BooleanConstructor;
    tabPosition: {
        type: import("vue").PropType<import("./src/token").ITabPosition>;
        default: string;
    };
    beforeLeave: {
        type: import("vue").PropType<import("./src/token").BeforeLeave>;
        default: any;
    };
    stretch: BooleanConstructor;
}, {
    nav$: import("vue").Ref<import("vue").DefineComponent<{
        panes: {
            type: import("vue").PropType<import("./src/token").Pane[]>;
            default: () => import("./src/token").Pane[];
        };
        currentName: {
            type: StringConstructor;
            default: string;
        };
        editable: BooleanConstructor;
        onTabClick: {
            type: import("vue").PropType<(tab: import("./src/token").Pane, tabName: string, ev: Event) => void>;
            default: () => void;
        };
        onTabRemove: {
            type: import("vue").PropType<(tab: import("./src/token").Pane, ev: Event) => void>;
            default: () => void;
        };
        type: {
            type: import("vue").PropType<import("./src/token").ITabType>;
            default: string;
        };
        stretch: BooleanConstructor;
    }, {
        rootTabs: import("./src/token").RootTabs;
        scrollable: import("vue").Ref<boolean | {
            next?: boolean;
            prev?: number;
        }>;
        navOffset: import("vue").Ref<number>;
        isFocus: import("vue").Ref<boolean>;
        focusable: import("vue").Ref<boolean>;
        navScroll$: import("vue").Ref<HTMLElement>;
        nav$: import("vue").Ref<HTMLElement>;
        el$: import("vue").Ref<HTMLElement>;
        sizeName: import("vue").ComputedRef<"width" | "height">;
        navStyle: import("vue").ComputedRef<{
            transform: string;
        }>;
        scrollPrev: () => void;
        scrollNext: () => void;
        scrollToActiveTab: () => void;
        update: () => void;
        changeTab: (e: any) => void;
        setFocus: () => void;
        removeFocus: () => void;
        visibilityChangeHandler: () => void;
        windowBlurHandler: () => void;
        windowFocusHandler: () => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
        panes?: unknown;
        currentName?: unknown;
        editable?: unknown;
        onTabClick?: unknown;
        onTabRemove?: unknown;
        type?: unknown;
        stretch?: unknown;
    } & {
        type: import("./src/token").ITabType;
        editable: boolean;
        stretch: boolean;
        panes: import("./src/token").Pane[];
        currentName: string;
        onTabClick: (tab: import("./src/token").Pane, tabName: string, ev: Event) => void;
        onTabRemove: (tab: import("./src/token").Pane, ev: Event) => void;
    } & {}> & {}, {
        type: import("./src/token").ITabType;
        editable: boolean;
        stretch: boolean;
        panes: import("./src/token").Pane[];
        currentName: string;
        onTabClick: (tab: import("./src/token").Pane, tabName: string, ev: Event) => void;
        onTabRemove: (tab: import("./src/token").Pane, ev: Event) => void;
    }>>;
    handleTabClick: (tab: any, tabName: any, event: any) => void;
    handleTabRemove: (pane: any, ev: any) => void;
    handleTabAdd: () => void;
    currentName: import("vue").Ref<string>;
    panes: import("vue").Ref<any[]>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue" | "tab-click" | "edit" | "tab-remove" | "tab-add")[], "input" | "update:modelValue" | "tab-click" | "edit" | "tab-remove" | "tab-add", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    type?: unknown;
    activeName?: unknown;
    closable?: unknown;
    addable?: unknown;
    modelValue?: unknown;
    editable?: unknown;
    tabPosition?: unknown;
    beforeLeave?: unknown;
    stretch?: unknown;
} & {
    type: import("./src/token").ITabType;
    closable: boolean;
    modelValue: string;
    editable: boolean;
    stretch: boolean;
    activeName: string;
    addable: boolean;
    tabPosition: import("./src/token").ITabPosition;
} & {
    beforeLeave?: import("./src/token").BeforeLeave;
}> & {
    "onUpdate:modelValue"?: (...args: any[]) => any;
    onInput?: (...args: any[]) => any;
    "onTab-click"?: (...args: any[]) => any;
    onEdit?: (...args: any[]) => any;
    "onTab-remove"?: (...args: any[]) => any;
    "onTab-add"?: (...args: any[]) => any;
}, {
    type: import("./src/token").ITabType;
    closable: boolean;
    modelValue: string;
    editable: boolean;
    stretch: boolean;
    beforeLeave: import("./src/token").BeforeLeave;
    activeName: string;
    addable: boolean;
    tabPosition: import("./src/token").ITabPosition;
}>> & {
    TabPane: typeof TabPane;
};
export default _Tabs;
export declare const ElTabs: SFCWithInstall<import("vue").DefineComponent<{
    type: {
        type: import("vue").PropType<import("./src/token").ITabType>;
        default: string;
    };
    activeName: {
        type: StringConstructor;
        default: string;
    };
    closable: BooleanConstructor;
    addable: BooleanConstructor;
    modelValue: {
        type: StringConstructor;
        default: string;
    };
    editable: BooleanConstructor;
    tabPosition: {
        type: import("vue").PropType<import("./src/token").ITabPosition>;
        default: string;
    };
    beforeLeave: {
        type: import("vue").PropType<import("./src/token").BeforeLeave>;
        default: any;
    };
    stretch: BooleanConstructor;
}, {
    nav$: import("vue").Ref<import("vue").DefineComponent<{
        panes: {
            type: import("vue").PropType<import("./src/token").Pane[]>;
            default: () => import("./src/token").Pane[];
        };
        currentName: {
            type: StringConstructor;
            default: string;
        };
        editable: BooleanConstructor;
        onTabClick: {
            type: import("vue").PropType<(tab: import("./src/token").Pane, tabName: string, ev: Event) => void>;
            default: () => void;
        };
        onTabRemove: {
            type: import("vue").PropType<(tab: import("./src/token").Pane, ev: Event) => void>;
            default: () => void;
        };
        type: {
            type: import("vue").PropType<import("./src/token").ITabType>;
            default: string;
        };
        stretch: BooleanConstructor;
    }, {
        rootTabs: import("./src/token").RootTabs;
        scrollable: import("vue").Ref<boolean | {
            next?: boolean;
            prev?: number;
        }>;
        navOffset: import("vue").Ref<number>;
        isFocus: import("vue").Ref<boolean>;
        focusable: import("vue").Ref<boolean>;
        navScroll$: import("vue").Ref<HTMLElement>;
        nav$: import("vue").Ref<HTMLElement>;
        el$: import("vue").Ref<HTMLElement>;
        sizeName: import("vue").ComputedRef<"width" | "height">;
        navStyle: import("vue").ComputedRef<{
            transform: string;
        }>;
        scrollPrev: () => void;
        scrollNext: () => void;
        scrollToActiveTab: () => void;
        update: () => void;
        changeTab: (e: any) => void;
        setFocus: () => void;
        removeFocus: () => void;
        visibilityChangeHandler: () => void;
        windowBlurHandler: () => void;
        windowFocusHandler: () => void;
    }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
        panes?: unknown;
        currentName?: unknown;
        editable?: unknown;
        onTabClick?: unknown;
        onTabRemove?: unknown;
        type?: unknown;
        stretch?: unknown;
    } & {
        type: import("./src/token").ITabType;
        editable: boolean;
        stretch: boolean;
        panes: import("./src/token").Pane[];
        currentName: string;
        onTabClick: (tab: import("./src/token").Pane, tabName: string, ev: Event) => void;
        onTabRemove: (tab: import("./src/token").Pane, ev: Event) => void;
    } & {}> & {}, {
        type: import("./src/token").ITabType;
        editable: boolean;
        stretch: boolean;
        panes: import("./src/token").Pane[];
        currentName: string;
        onTabClick: (tab: import("./src/token").Pane, tabName: string, ev: Event) => void;
        onTabRemove: (tab: import("./src/token").Pane, ev: Event) => void;
    }>>;
    handleTabClick: (tab: any, tabName: any, event: any) => void;
    handleTabRemove: (pane: any, ev: any) => void;
    handleTabAdd: () => void;
    currentName: import("vue").Ref<string>;
    panes: import("vue").Ref<any[]>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("input" | "update:modelValue" | "tab-click" | "edit" | "tab-remove" | "tab-add")[], "input" | "update:modelValue" | "tab-click" | "edit" | "tab-remove" | "tab-add", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    type?: unknown;
    activeName?: unknown;
    closable?: unknown;
    addable?: unknown;
    modelValue?: unknown;
    editable?: unknown;
    tabPosition?: unknown;
    beforeLeave?: unknown;
    stretch?: unknown;
} & {
    type: import("./src/token").ITabType;
    closable: boolean;
    modelValue: string;
    editable: boolean;
    stretch: boolean;
    activeName: string;
    addable: boolean;
    tabPosition: import("./src/token").ITabPosition;
} & {
    beforeLeave?: import("./src/token").BeforeLeave;
}> & {
    "onUpdate:modelValue"?: (...args: any[]) => any;
    onInput?: (...args: any[]) => any;
    "onTab-click"?: (...args: any[]) => any;
    onEdit?: (...args: any[]) => any;
    "onTab-remove"?: (...args: any[]) => any;
    "onTab-add"?: (...args: any[]) => any;
}, {
    type: import("./src/token").ITabType;
    closable: boolean;
    modelValue: string;
    editable: boolean;
    stretch: boolean;
    beforeLeave: import("./src/token").BeforeLeave;
    activeName: string;
    addable: boolean;
    tabPosition: import("./src/token").ITabPosition;
}>> & {
    TabPane: typeof TabPane;
};
export declare const ElTabPane: import("vue").DefineComponent<{
    label: {
        type: StringConstructor;
        default: string;
    };
    name: {
        type: StringConstructor;
        default: string;
    };
    closable: BooleanConstructor;
    disabled: BooleanConstructor;
    lazy: BooleanConstructor;
}, {
    index: import("vue").Ref<string>;
    loaded: import("vue").Ref<boolean>;
    isClosable: import("vue").ComputedRef<boolean>;
    active: import("vue").ComputedRef<boolean>;
    paneName: import("vue").ComputedRef<string>;
    shouldBeRender: import("vue").ComputedRef<boolean>;
}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record<string, any>, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{
    label?: unknown;
    name?: unknown;
    closable?: unknown;
    disabled?: unknown;
    lazy?: unknown;
} & {
    label: string;
    closable: boolean;
    name: string;
    disabled: boolean;
    lazy: boolean;
} & {}> & {}, {
    label: string;
    closable: boolean;
    name: string;
    disabled: boolean;
    lazy: boolean;
}>;
