import { ReferenceElement, Placement } from '@floating-ui/dom';
import { TooltipPopperOptions, TooltipProps, TooltipTrigger, TooltipEffect } from './tooltip.js';
import { DefineComponent, Ref, ComponentOptionsMixin, PublicProps, CSSProperties, StyleValue, ComponentProvideOptions } from 'vue';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        default?(_: {}): any;
        content?(_: {}): any;
    };
    refs: {};
    rootEl: any;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: DefineComponent<TooltipProps, {
    triggerRef: Ref<HTMLElement | null>;
    contentRef: Ref<HTMLElement | null>;
    show: () => void;
    hide: () => void;
    updatePopper: () => Promise<void>;
    isFocusInsideContent: (event?: FocusEvent) => boolean;
}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, {
    close: () => any;
    hide: () => any;
    show: () => any;
    "update:modelValue": (value: boolean) => any;
    open: () => any;
    "before-show": () => any;
    "before-hide": () => any;
}, string, PublicProps, Readonly<TooltipProps> & Readonly<{
    onClose?: (() => any) | undefined;
    onHide?: (() => any) | undefined;
    onShow?: (() => any) | undefined;
    "onUpdate:modelValue"?: ((value: boolean) => any) | undefined;
    onOpen?: (() => any) | undefined;
    "onBefore-show"?: (() => any) | undefined;
    "onBefore-hide"?: (() => any) | undefined;
}>, {
    content: string;
    modelValue: boolean;
    openDelay: number;
    closeDelay: number;
    placement: Placement;
    disabled: boolean;
    offset: number;
    teleported: boolean;
    appendTo: string | HTMLElement;
    transition: string;
    effect: TooltipEffect;
    maxWidth: number | string;
    ariaLabel: string;
    persistent: boolean;
    popperClass: string;
    popperStyle: string | false | CSSProperties | StyleValue[] | null;
    rawContent: boolean;
    showArrow: boolean;
    trigger: TooltipTrigger | TooltipTrigger[];
    triggerKeys: string[];
    virtualRef: ReferenceElement | null;
    virtualTriggering: boolean;
    showAfter: number;
    hideAfter: number;
    enterable: boolean;
    closeOnEsc: boolean;
    closeOnOutside: boolean;
    popperOptions: TooltipPopperOptions;
}, {}, {}, {}, string, ComponentProvideOptions, false, {}, any>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
