import { t as ModelRouter } from "./router-B00KzxcK.js"; import { EventEmitter } from "node:events"; //#region src/services/discuss/engine.d.ts interface Participant { id: string; name: string; model?: string; type: "ai" | "human"; errorCount: number; color?: string; } interface ChatMessage { id: string; role: "system" | "user" | "assistant"; content: string; senderId: string; timestamp: number; mentions?: string[]; } interface DiscussionConfig { topic: string; strategy: "random" | "round-robin"; timeoutMs: number; maxErrors: number; thinkingTimeMs: number; } type DiscussionStatus = "idle" | "discussing" | "paused" | "thinking" | "speaking"; type DiscussionMode = "auto" | "manual"; declare class DiscussionEngine extends EventEmitter { #private; constructor(router: ModelRouter, config: Partial & { topic: string; }); addParticipant(participant: Omit): void; removeParticipant(id: string): void; get participants(): Participant[]; get history(): ChatMessage[]; get currentMessage(): ChatMessage | null; get status(): DiscussionStatus; get mode(): DiscussionMode; get topic(): string; get currentSpeakerId(): string | null; setMode(mode: DiscussionMode): void; updateConfig(config: Partial): void; start(): void; pause(): void; resume(): void; stop(): void; interrupt(): void; reset(): void; injectMessage(senderId: string, content: string): Promise; setNextSpeaker(participantId: string): void; generateSummary(modelId: string): Promise; } //#endregion export { DiscussionStatus as a, DiscussionMode as i, DiscussionConfig as n, Participant as o, DiscussionEngine as r, ChatMessage as t };