import { Ref } from 'vue';
import type { RouteLocationNormalizedLoaded } from 'vue-router';
import type { ITabsProps, ITabsExpose } from './type';
interface UseTabs extends ITabsExpose {
    active: Ref<string>;
    to: (path: string) => void;
    refresh: (item: RouteLocationNormalizedLoaded) => void;
    closeLeft: (item: RouteLocationNormalizedLoaded, index: number) => void;
    closeRight: (item: RouteLocationNormalizedLoaded, index: number) => void;
    closeOthers: (item: RouteLocationNormalizedLoaded, index: number) => void;
}
export declare function useTabsMenu(): import("vue").ComputedRef<{
    refresh: string;
    left: string;
    right: string;
    others: string;
}>;
export declare function useTabs(props: ITabsProps): UseTabs;
interface UseTabsDropdown extends Pick<UseTabs, 'list' | 'refresh' | 'closeLeft' | 'closeRight' | 'closeOthers'> {
    props: ITabsProps;
}
export declare function useTabsDropdown({ props, list, refresh, closeLeft, closeRight, closeOthers, }: UseTabsDropdown): {
    contextmenu: import("vue").ComputedRef<import("./type").ITabContextmenuProps>;
    setDropdownRefs: (el: unknown, path: string) => void;
    removeDropdownRefs: (path: string) => void;
    handleVisibleChange: (val: boolean, path: string) => void;
    handleCommand: (command: string, item: RouteLocationNormalizedLoaded, index: number) => void;
};
export {};
