import type { DefineSetupFnComponent, SlotsType } from 'vue'; import type { ChatActionPayload } from '../../messages/composables/chat-action.js'; import type { MessageFeedbackPayload } from '../../messages/composables/chat-feedback.js'; import type { ChatMessageTerminalPayload } from '../../messages/composables/chat-message-terminal.js'; import type { Message } from '../../types/schemas/chat/conversations.js'; import type { ChatFeatureConfig } from '../feature-config.js'; import type { AvailableChatModels, ChatEmbedVariant, ChatEmbedVariantProps, ChatSidebarConfig, ChatSuggestion, DefaultChatEmbedProps, MeistrariChatEmbedProps, TelaAgentChatEmbedProps } from '../types.js'; type MeistrariChatEmbedEmits = { /** Fired when the active conversation changes. Pairs with `v-model:conversation-id`. */ 'update:conversationId': (value: string | null) => any; /** Fired when the active conversation creator filter changes. Pairs with `v-model:conversation-creator-filter`. */ 'update:conversationCreatorFilter': (value: 'all' | 'mine') => any; /** Fired when the floating widget window opens or closes. Widget variants only. */ 'update:open': (value: boolean) => any; /** Fired when an assistant message triggers a host-handled action. */ 'action': (payload: ChatActionPayload) => any; /** Fired when a user submits feedback for an assistant message. */ 'messageFeedback': (payload: MessageFeedbackPayload) => any; /** Fired after polling observes an assistant message reach a terminal status. */ 'messageTerminal': (payload: ChatMessageTerminalPayload) => any; }; type MeistrariChatEmbedSlots = SlotsType<{ /** Rendered in a dedicated bottom pane of the conversation sidebar, splitting it in half. Page variant only. */ 'sidebar-bottom'?: () => any; /** Rendered inside a failed assistant message's error box, next to "Tentar novamente"; receives the failed message. */ 'failed-message-actions'?: (props: { message: Message }) => any; }>; /** * Embedded Meistrari chat surface. Auto-registered by the `@meistrari/chat-nuxt` * module — no manual import needed in templates. * * Props are `MeistrariChatEmbedProps`: a union of `DefaultChatEmbedProps` * (workspace chat, the default) and `TelaAgentChatEmbedProps` (Tela agent * mode, enabled by passing `tela-agent-id`). Every prop is documented on * those types — go to their definitions for the full contract. * * All prop and payload types are re-exported below, from * `@meistrari/chat-nuxt` and from `@meistrari/chat-nuxt/types/embed`. * * @example * ```vue * * ``` */ declare const MeistrariChatEmbed: DefineSetupFnComponent; export default MeistrariChatEmbed; export type { AvailableChatModels, ChatActionPayload, ChatEmbedVariant, ChatEmbedVariantProps, ChatFeatureConfig, ChatMessageTerminalPayload, ChatSidebarConfig, ChatSuggestion, DefaultChatEmbedProps, MeistrariChatEmbedProps, Message, MessageFeedbackPayload, TelaAgentChatEmbedProps };