import { AutoUpdateOptions, ComputePositionConfig } from '@floating-ui/dom';
export type MtFloatingUiProps = {
    isOpened: boolean;
    floatingUiOptions?: Partial<ComputePositionConfig>;
    showArrow?: boolean;
    offset?: number;
    autoUpdateOptions?: Partial<AutoUpdateOptions>;
    /**
     * If true, the floating UI content will match the width of the reference element.
     */
    matchReferenceWidth?: boolean;
};
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        trigger?(_: {}): any;
        default?(_: {
            referenceElementWidth: number;
            referenceElementHeight: number;
        }): any;
    };
    refs: {
        floatingUi: HTMLDivElement;
        floatingUiTrigger: HTMLDivElement;
        floatingUiContent: HTMLDivElement;
        floatingUiArrow: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<MtFloatingUiProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {} & {
    close: () => any;
}, string, import('vue').PublicProps, Readonly<MtFloatingUiProps> & Readonly<{
    onClose?: (() => any) | undefined;
}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    floatingUi: HTMLDivElement;
    floatingUiTrigger: HTMLDivElement;
    floatingUiContent: HTMLDivElement;
    floatingUiArrow: HTMLDivElement;
}, HTMLDivElement>;
declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
export default _default;
type __VLS_WithTemplateSlots<T, S> = T & {
    new (): {
        $slots: S;
    };
};
