/**
 * Conversation Repository Port Interface
 *
 * Port for inter-agent conversation persistence operations.
 */

import type { Conversation } from '../schema.js';

export interface CreateConversationData {
  fromAgentId: string;
  toAgentId: string;
  initiativeId?: string | null;
  phaseId?: string | null;
  taskId?: string | null;
  question: string;
}

export interface ConversationRepository {
  create(data: CreateConversationData): Promise<Conversation>;
  findById(id: string): Promise<Conversation | null>;
  findPendingForAgent(toAgentId: string): Promise<Conversation[]>;
  answer(id: string, answer: string): Promise<Conversation | null>;
}
