import { BubbleProps } from './interface';
import { Ref, VNode } from 'vue';
declare function __VLS_template(): {
    attrs: Partial<{}>;
    slots: {
        avatar?(_: {}): any;
        header?(_: {}): any;
        loading?(_: {}): any;
        loading?(_: {}): any;
        footer?(_: {}): any;
    };
    refs: {
        divRef: HTMLDivElement;
    };
    rootEl: HTMLDivElement;
};
type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
declare const __VLS_component: import('vue').DefineComponent<BubbleProps, {
    nativeElement: Ref<HTMLDivElement | undefined, HTMLDivElement | undefined>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<BubbleProps> & Readonly<{}>, {
    content: string;
    loading: boolean;
    styles: {
        avatar?: import('vue').CSSProperties;
        content?: import('vue').CSSProperties;
        footer?: import('vue').CSSProperties;
        header?: import('vue').CSSProperties;
    };
    avatar: string | VNode;
    loadingRender: () => VNode;
    placement: "end" | "start";
    typing: boolean | import('./interface').TypingOption;
    variant: "borderless" | "filled" | "outlined" | "shadow";
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {
    divRef: 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;
    };
};
