import AiBubble from './src/ai-bubble.vue'; export declare const YhAiBubble: import("@yh-ui/utils").SFCWithInstall<{ new (...args: any[]): import("vue").CreateComponentPublicInstanceWithMixins; default: string; }; placement: { type: import("vue").PropType<"start" | "end">; }; shape: { type: import("vue").PropType<"round" | "corner">; default: string; }; variant: { type: import("vue").PropType<"filled" | "outlined" | "borderless" | "shadow">; default: string; }; time: StringConstructor; avatar: StringConstructor; loading: BooleanConstructor; typing: BooleanConstructor; streaming: { type: BooleanConstructor; default: boolean; }; streamMode: { type: import("vue").PropType<"word" | "sentence" | "paragraph">; default: string; }; streamSpeed: { type: NumberConstructor; default: number; }; streamInterval: { type: NumberConstructor; default: number; }; onStreamComplete: { type: import("vue").PropType<() => void>; }; citations: { type: import("vue").PropType; default: () => never[]; }; multimodal: { type: import("vue").PropType; default: () => never[]; }; markdownOptions: { type: import("vue").PropType; default: () => {}; }; structuredData: { type: import("vue").PropType; }; onExplainCode: { type: import("vue").PropType<(code: string, language: string) => Promise>; }; onRunCode: { type: import("vue").PropType<(code: string, language: string) => Promise<{ output: string; error?: string; }>>; }; onCitationClick: { type: import("vue").PropType<(citation: import("./src/ai-bubble").AiCitation) => void>; }; themeOverrides: { type: import("vue").PropType; default: undefined; }; enablePythonRuntime: { type: BooleanConstructor; default: boolean; }; pythonRuntime: { type: import("vue").PropType<"browser" | "remote">; default: string; }; pythonApiUrl: { type: StringConstructor; default: string; }; pyodideUrl: { type: StringConstructor; default: string; }; enableSanitizer: { type: BooleanConstructor; default: boolean; }; sanitizer: { type: import("vue").PropType<(html: string) => string>; default: undefined; }; allowedTags: { type: import("vue").PropType; default: () => string[]; }; allowedAttributes: { type: import("vue").PropType; default: () => string[]; }; allowedSchemes: { type: import("vue").PropType; default: () => string[]; }; }>> & Readonly<{ "onCopy-fail"?: ((err: unknown) => any) | undefined; }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & { "copy-fail": (err: unknown) => any; }, import("vue").PublicProps, { variant: "outlined" | "filled" | "borderless" | "shadow"; themeOverrides: import("@yh-ui/theme").ComponentThemeVars; loading: boolean; content: string; markdown: boolean; role: "user" | "assistant" | "system"; allowedTags: string[]; allowedAttributes: string[]; allowedSchemes: string[]; sanitizer: (html: string) => string; shape: "round" | "corner"; typing: boolean; streaming: boolean; streamMode: "word" | "sentence" | "paragraph"; streamSpeed: number; streamInterval: number; citations: import("./src/ai-bubble").AiCitation[]; multimodal: import("./src/ai-bubble").AiMultimodal[]; markdownOptions: import("./src/ai-bubble").AiMarkdownOptions; enablePythonRuntime: boolean; pythonRuntime: "browser" | "remote"; pythonApiUrl: string; pyodideUrl: string; enableSanitizer: boolean; }, true, {}, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, {}, any, import("vue").ComponentProvideOptions, { P: {}; B: {}; D: {}; C: {}; M: {}; Defaults: {}; }, Readonly; default: string; }; placement: { type: import("vue").PropType<"start" | "end">; }; shape: { type: import("vue").PropType<"round" | "corner">; default: string; }; variant: { type: import("vue").PropType<"filled" | "outlined" | "borderless" | "shadow">; default: string; }; time: StringConstructor; avatar: StringConstructor; loading: BooleanConstructor; typing: BooleanConstructor; streaming: { type: BooleanConstructor; default: boolean; }; streamMode: { type: import("vue").PropType<"word" | "sentence" | "paragraph">; default: string; }; streamSpeed: { type: NumberConstructor; default: number; }; streamInterval: { type: NumberConstructor; default: number; }; onStreamComplete: { type: import("vue").PropType<() => void>; }; citations: { type: import("vue").PropType; default: () => never[]; }; multimodal: { type: import("vue").PropType; default: () => never[]; }; markdownOptions: { type: import("vue").PropType; default: () => {}; }; structuredData: { type: import("vue").PropType; }; onExplainCode: { type: import("vue").PropType<(code: string, language: string) => Promise>; }; onRunCode: { type: import("vue").PropType<(code: string, language: string) => Promise<{ output: string; error?: string; }>>; }; onCitationClick: { type: import("vue").PropType<(citation: import("./src/ai-bubble").AiCitation) => void>; }; themeOverrides: { type: import("vue").PropType; default: undefined; }; enablePythonRuntime: { type: BooleanConstructor; default: boolean; }; pythonRuntime: { type: import("vue").PropType<"browser" | "remote">; default: string; }; pythonApiUrl: { type: StringConstructor; default: string; }; pyodideUrl: { type: StringConstructor; default: string; }; enableSanitizer: { type: BooleanConstructor; default: boolean; }; sanitizer: { type: import("vue").PropType<(html: string) => string>; default: undefined; }; allowedTags: { type: import("vue").PropType; default: () => string[]; }; allowedAttributes: { type: import("vue").PropType; default: () => string[]; }; allowedSchemes: { type: import("vue").PropType; default: () => string[]; }; }>> & Readonly<{ "onCopy-fail"?: ((err: unknown) => any) | undefined; }>, {}, {}, {}, {}, { variant: "outlined" | "filled" | "borderless" | "shadow"; themeOverrides: import("@yh-ui/theme").ComponentThemeVars; loading: boolean; content: string; markdown: boolean; role: "user" | "assistant" | "system"; allowedTags: string[]; allowedAttributes: string[]; allowedSchemes: string[]; sanitizer: (html: string) => string; shape: "round" | "corner"; typing: boolean; streaming: boolean; streamMode: "word" | "sentence" | "paragraph"; streamSpeed: number; streamInterval: number; citations: import("./src/ai-bubble").AiCitation[]; multimodal: import("./src/ai-bubble").AiMultimodal[]; markdownOptions: import("./src/ai-bubble").AiMarkdownOptions; enablePythonRuntime: boolean; pythonRuntime: "browser" | "remote"; pythonApiUrl: string; pyodideUrl: string; enableSanitizer: boolean; }>; __isFragment?: never; __isTeleport?: never; __isSuspense?: never; } & import("vue").ComponentOptionsBase; default: string; }; placement: { type: import("vue").PropType<"start" | "end">; }; shape: { type: import("vue").PropType<"round" | "corner">; default: string; }; variant: { type: import("vue").PropType<"filled" | "outlined" | "borderless" | "shadow">; default: string; }; time: StringConstructor; avatar: StringConstructor; loading: BooleanConstructor; typing: BooleanConstructor; streaming: { type: BooleanConstructor; default: boolean; }; streamMode: { type: import("vue").PropType<"word" | "sentence" | "paragraph">; default: string; }; streamSpeed: { type: NumberConstructor; default: number; }; streamInterval: { type: NumberConstructor; default: number; }; onStreamComplete: { type: import("vue").PropType<() => void>; }; citations: { type: import("vue").PropType; default: () => never[]; }; multimodal: { type: import("vue").PropType; default: () => never[]; }; markdownOptions: { type: import("vue").PropType; default: () => {}; }; structuredData: { type: import("vue").PropType; }; onExplainCode: { type: import("vue").PropType<(code: string, language: string) => Promise>; }; onRunCode: { type: import("vue").PropType<(code: string, language: string) => Promise<{ output: string; error?: string; }>>; }; onCitationClick: { type: import("vue").PropType<(citation: import("./src/ai-bubble").AiCitation) => void>; }; themeOverrides: { type: import("vue").PropType; default: undefined; }; enablePythonRuntime: { type: BooleanConstructor; default: boolean; }; pythonRuntime: { type: import("vue").PropType<"browser" | "remote">; default: string; }; pythonApiUrl: { type: StringConstructor; default: string; }; pyodideUrl: { type: StringConstructor; default: string; }; enableSanitizer: { type: BooleanConstructor; default: boolean; }; sanitizer: { type: import("vue").PropType<(html: string) => string>; default: undefined; }; allowedTags: { type: import("vue").PropType; default: () => string[]; }; allowedAttributes: { type: import("vue").PropType; default: () => string[]; }; allowedSchemes: { type: import("vue").PropType; default: () => string[]; }; }>> & Readonly<{ "onCopy-fail"?: ((err: unknown) => any) | undefined; }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & { "copy-fail": (err: unknown) => any; }, string, { variant: "outlined" | "filled" | "borderless" | "shadow"; themeOverrides: import("@yh-ui/theme").ComponentThemeVars; loading: boolean; content: string; markdown: boolean; role: "user" | "assistant" | "system"; allowedTags: string[]; allowedAttributes: string[]; allowedSchemes: string[]; sanitizer: (html: string) => string; shape: "round" | "corner"; typing: boolean; streaming: boolean; streamMode: "word" | "sentence" | "paragraph"; streamSpeed: number; streamInterval: number; citations: import("./src/ai-bubble").AiCitation[]; multimodal: import("./src/ai-bubble").AiMultimodal[]; markdownOptions: import("./src/ai-bubble").AiMarkdownOptions; enablePythonRuntime: boolean; pythonRuntime: "browser" | "remote"; pythonApiUrl: string; pyodideUrl: string; enableSanitizer: boolean; }, {}, string, {}, import("vue").GlobalComponents, import("vue").GlobalDirectives, string, import("vue").ComponentProvideOptions> & import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps & (new () => { $slots: { avatar?: (props: {}) => any; } & { header?: (props: {}) => any; } & { default?: (props: {}) => any; } & { footer?: (props: {}) => any; }; })> & Record; export default YhAiBubble; export * from './src/ai-bubble'; export type AiBubbleInstance = InstanceType; export type YhAiBubbleInstance = AiBubbleInstance; export type YhAiBubbleProps = import('./src/ai-bubble').AiBubbleProps; export type YhAiBubbleSlots = import('./src/ai-bubble').AiBubbleSlots; export type YhAiCitation = import('./src/ai-bubble').AiCitation; export type YhAiMultimodal = import('./src/ai-bubble').AiMultimodal; export type YhAiCodeBlockOptions = import('./src/ai-bubble').AiCodeBlockOptions; export type YhAiMermaidConfig = import('./src/ai-bubble').AiMermaidConfig; export type YhAiStructuredTableData = import('./src/ai-bubble').AiStructuredTableData; export type YhAiLatexOptions = import('./src/ai-bubble').AiLatexOptions; export type YhAiFilePreviewOptions = import('./src/ai-bubble').AiFilePreviewOptions; export type YhAiStructuredData = import('./src/ai-bubble').AiStructuredData; export type YhAiMarkdownOptions = import('./src/ai-bubble').AiMarkdownOptions;