import type { Action } from "./action"; export type InterpreterStatus = | "resolved" | "needs_clarification" | "rejected"; export type ClarificationReasonCode = | "UNRECOGNIZED_INTENT" | "AMBIGUOUS_REFERENCE" | "EMPTY_INPUT" | "LOW_CONFIDENCE" | "INTERNAL_INVALID_OUTPUT"; export type ClarificationOption = { id: string; label: string; value: string; entityId?: string; entityType?: "character" | "item" | "room" | "unknown"; }; export type ClarificationRequest = { reasonCode: ClarificationReasonCode; question: string; field?: "verb" | "target" | "item" | "recipient" | "location"; options?: ClarificationOption[]; }; export type InterpreterCandidate = { action: Action; confidence: number; rationale?: string; }; export type InterpreterOutput = { interpreterVersion: string; rawText: string; actorId: string; resolutionSource: "deterministic" | "llm" | "hybrid"; minConfidence: number; selectedConfidence?: number; status: InterpreterStatus; selectedActions: Action[]; candidates: InterpreterCandidate[]; diagnostics: string[]; clarification?: ClarificationRequest; };