export type VotingMode = 'unanimous' | 'majority' | 'weighted'; export interface AgentSpec { /** Friendly label used in output / SVG */ name: string; /** Ollama model tag (e.g. 'qwen2.5-coder:7b'). If missing, treated as "external". */ model?: string; /** Sampling temperature. */ temperature?: number; /** Optional system prompt to nudge perspective. */ systemPrompt?: string; /** Trust weight ∈ [0, 1]. Defaults to 1. */ weight?: number; } export interface AgentVote { agent: string; position: string; confidence: number; reasoning: string; weight: number; } export interface HiveVote { question: string; consensus: string; confidence: number; votes: AgentVote[]; dissents: AgentVote[]; distribution: { byConfidence: number[]; byPosition: Record; }; transcript: string; svg: string; mode: VotingMode; durationMs: number; capturedAt: string; } export interface AskOptions { agents?: AgentSpec[]; rounds?: number; allowDissent?: boolean; mode?: VotingMode; projectDir?: string; ollamaUrl?: string; } export declare class HiveVoice { private ollamaBaseUrl; private cachedModels; constructor(ollamaUrl?: string); /** Ask the hive a question. Returns a HiveVote with consensus + SVG card. */ ask(question: string, opts?: AskOptions): Promise; /** List recent hive votes for a project. */ list(projectDir?: string, limit?: number): Array<{ file: string; capturedAt: string; question: string; }>; private resolveAgents; private probeOllamaModels; private askAgent; private callOllama; private parseVote; private deterministicStub; private tally; private distribute; private renderSvg; private projectStoreDir; private persist; } export declare function getHiveVoice(): HiveVoice; export declare function resetHiveVoiceForTests(): void; //# sourceMappingURL=hive-voice.d.ts.map