import TTabPanel from './tab-panel';
import type { TdTabsProps } from './type';
declare const _default: import("vue/types/vue").ExtendedVue<{
    classPrefix: string;
    componentName: string;
    commonSizeClassName: Record<string, string>;
    commonStatusClassName: Record<string, string>;
} & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & {
    useGlobalIcon(tdIcon: Record<string, any>): import("tdesign-icons-vue").GlobalIconConfig;
}, {
    scrollLeft: number;
    maxScrollLeft: number;
    navBarStyle: {};
}, {
    calculateNavBarStyle(): void;
    watchDomChange(): void;
    setOffset(offset: number): void;
    getMaxScrollLeft(): void;
    handleScroll(action: 'next' | 'prev'): void;
    handleWheel(e: WheelEvent): void;
    moveActiveTabIntoView(): void;
    handleAddTab(e: MouseEvent): void;
    tabClick(event: MouseEvent, nav: Partial<InstanceType<typeof TTabPanel>>): false;
    removeBtnClick({ e, value, index }: Parameters<TdTabsProps['onRemove']>[0]): void;
    renderPanelContent(): JSX.Element[];
    renderArrows(): JSX.Element[];
    renderNavs(): JSX.Element;
    renderNavBar(): JSX.Element;
}, {
    navs: Record<string, any>[];
    wrapTransformStyle: {
        [key: string]: string;
    };
    dataCanUpdateNavBarStyle: any[];
    iconBaseClass: {
        [key: string]: boolean;
    };
    leftIconClass: {
        [key: string]: boolean;
    };
    rightIconClass: {
        [key: string]: boolean;
    };
    addIconClass: {
        [key: string]: boolean;
    };
    navContainerClass: {
        [key: string]: boolean;
    };
    navScrollContainerClass: {
        [key: string]: boolean;
    };
    navsWrapClass: (string | {
        [key: string]: boolean;
    })[];
    navBarClass: string[];
    navsContainerStyle: object;
    activeElement: HTMLElement;
    canToLeft: boolean;
    canToRight: boolean;
}, {
    theme: "normal" | "card";
    panels: import("vue/types/vue").CombinedVueInstance<{
        loaded: boolean;
    } & {
        active: boolean;
    } & {
        default: (h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue;
        destroyOnHide: boolean;
        disabled: boolean;
        draggable: boolean;
        label: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        panel: string | ((h: import("vue").CreateElement) => import("vue/types/vnode").ScopedSlotReturnValue);
        removable: boolean;
        value: import("./type").TabValue;
        onRemove: (options: {
            value: import("./type").TabValue;
            e: MouseEvent;
        }) => void;
        lazy: boolean;
    } & {
        classPrefix: string;
        componentName: string;
        commonSizeClassName: Record<string, string>;
        commonStatusClassName: Record<string, string>;
    } & Record<never, any> & import("../config-provider/config-receiver").ConfigComponent & import("vue").default & import("./tab-panel").TabPanel, object, object, object, Record<never, any>>[];
    value: import("./type").TabValue;
    placement: "left" | "top" | "bottom" | "right";
    scrollPosition: "auto" | "center" | "end" | "start";
    size: "medium" | "large";
    disabled: boolean;
    addable: boolean;
    dragSort: boolean;
    onDragSort: (context: import("./type").TabsDragSortContext) => void;
}>;
export default _default;
