import { CrewxPlugin } from '../plugin'; import type { Crewx } from '../facade/Crewx'; import type { TaskStartEvent, TaskEndEvent } from '../events/types'; import type { IConversationHistoryProvider } from '../conversation/types'; export interface ConversationPluginOptions { dbPath?: string; } export declare class ConversationPlugin extends CrewxPlugin { readonly name = "conversation"; private _provider; private unsubStart; private unsubEnd; constructor(opts?: ConversationPluginOptions); get conversationProvider(): IConversationHistoryProvider; protected afterUserMessage(_threadId: string, _messageId: string, _created: boolean, _e: TaskStartEvent): Promise; protected afterAssistantMessage(_threadId: string, _messageId: string, _e: TaskEndEvent): Promise; attach(crewx: Crewx): void; detach(_crewx: Crewx): void; }