import { ComponentInternalInstance, ComputedRef, PropType, Ref } from 'vue'; export interface RTabsProps { [key: string]: any; } export interface RPaneProps { label: string; name: string; closable: boolean; disabled: boolean; lazy: boolean; } export interface RootTabs { props: RTabsProps; currentName: Ref; } declare type BeforeLeave = (newTabName: string, oldTabName: string) => void | Promise | boolean; export declare type UpdatePaneStateCallback = (pane: Pane) => void; export interface Pane { uid: number; instance: ComponentInternalInstance; props: RPaneProps; paneName: ComputedRef; active: ComputedRef; index: Ref; isClosable: ComputedRef; } export declare type RTabsAlign = PropType<'centered' | 'right'>; export declare type RTabsSize = PropType<'small' | 'medium' | 'large'>; export declare type RTabsType = PropType<'boxed'>; declare const _default: import("vue").DefineComponent<{ activeName: { type: StringConstructor; default: string; }; modelValue: { type: StringConstructor; default: string; }; beforeLeave: { type: PropType; default: any; }; align: { type: PropType<"centered" | "right">; default: string; validator: (val: string) => boolean; }; size: { type: PropType<"small" | "medium" | "large">; default: string; validator: (val: string) => boolean; }; type: { type: PropType<"boxed">; default: string; validator: (val: string) => boolean; }; tabPosition: { type: StringConstructor; default: string; }; fullwidth: BooleanConstructor; closable: BooleanConstructor; }, { nav$: Ref, Record, any, Record | import("vue").WritableComputedOptions>, import("vue").MethodOptions, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{} & { [x: string]: unknown; }>, {}>>; currentName: Ref; panes: Ref; handleTabClick: (tab: Pane, tabName: string, event: MouseEvent) => void; handleTabRemove: (pane: any, ev: any) => void; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, ("update:modelValue" | "input" | "tab-click" | "edit" | "tab-remove")[], "update:modelValue" | "input" | "tab-click" | "edit" | "tab-remove", import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{ activeName: string; modelValue: string; beforeLeave: BeforeLeave; align: "centered" | "right"; size: "small" | "medium" | "large"; type: "boxed"; tabPosition: string; fullwidth: boolean; closable: boolean; } & {}>, { activeName: string; modelValue: string; beforeLeave: BeforeLeave; align: "centered" | "right"; size: "small" | "medium" | "large"; type: "boxed"; tabPosition: string; fullwidth: boolean; closable: boolean; }>; export default _default;