import type { ForeignComponent, BaseComponentProps } from 'piral-core';
import { Component } from 'vue';
import { Vue3MiddlewareHandler } from './types';
export interface Vue3ConverterOptions {
    /**
     * Defines the name of the extension component.
     * @default extension-component
     */
    selector?: string;
    /**
     * Defines the name of the root element.
     * @default piral-slot
     */
    rootName?: string;
}
export declare function createConverter(config?: Vue3ConverterOptions): {
    <TProps extends BaseComponentProps>(root: Component<TProps>, captured?: Record<string, any>): ForeignComponent<TProps>;
    Extension: Component<import("piral-core").ExtensionSlotProps>;
    defineMiddleware(middleware: Vue3MiddlewareHandler): void;
};
