import type { BubbleContentType, BubbleProps, SlotInfoType } from './interface';
import type { VNode } from 'vue';
declare const _default: <T extends BubbleContentType = string>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_expose?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: __VLS_PrettifyLocal<Pick<{
        style?: unknown;
        class?: unknown;
        key?: string | number | symbol;
        ref?: import("vue").VNodeRef;
        ref_for?: boolean;
        ref_key?: string;
        onVnodeBeforeMount?: ((vnode: VNode) => void) | ((vnode: VNode) => void)[];
        onVnodeMounted?: ((vnode: VNode) => void) | ((vnode: VNode) => void)[];
        onVnodeBeforeUpdate?: ((vnode: VNode, oldVNode: VNode) => void) | ((vnode: VNode, oldVNode: VNode) => void)[];
        onVnodeUpdated?: ((vnode: VNode, oldVNode: VNode) => void) | ((vnode: VNode, oldVNode: VNode) => void)[];
        onVnodeBeforeUnmount?: ((vnode: VNode) => void) | ((vnode: VNode) => void)[];
        onVnodeUnmounted?: ((vnode: VNode) => void) | ((vnode: VNode) => void)[];
    }, never> & BubbleProps<T> & Partial<{}>> & (import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps);
    expose(exposed: import("vue").ShallowUnwrapRef<{
        nativeElement: import("vue").Ref<HTMLDivElement>;
    }>): void;
    attrs: any;
    slots: {
        avatar?(): VNode;
        header?(props: {
            content: T;
            info: SlotInfoType;
        }): VNode | string;
        footer?(props: {
            content: T;
            info: SlotInfoType;
        }): VNode | string;
        loading?(): VNode;
        message?(props: {
            content: T;
        }): VNode | string;
    };
    emit: {};
}>) => import("vue").VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
export default _default;
type __VLS_PrettifyLocal<T> = {
    [K in keyof T]: T[K];
} & {};
