import { ComputedRef, InjectionKey } from 'vue';
import { $$OioTabPosition, OioTabPosition } from './props';
export interface TabHTMLNode {
    el: HTMLElement;
    key?: string;
    index: number;
}
export interface OioTabsContext {
    id: ComputedRef<string | undefined>;
    nodes: ComputedRef<TabHTMLNode[]>;
    moreNodes: ComputedRef<TabHTMLNode[]>;
    tabPosition: ComputedRef<OioTabPosition | $$OioTabPosition>;
}
export declare const defaultOioTabsContext: OioTabsContext;
export declare const OioTabsContextKey: InjectionKey<OioTabsContext>;
export declare const useProviderOioTabsContext: (state: Partial<OioTabsContext>) => void;
export declare const useInjectOioTabsContext: () => OioTabsContext;
