import type { ToolFailureClass } from '../../trace/types.js'; export interface RenderHints { diff?: import('../../../utils/diff.js').DiffPayload; } export interface HarnessUserMessage { readonly kind: 'queued_user_message'; readonly text: string; } export interface ToolResult { content: string; harnessUserMessage?: HarnessUserMessage; isError?: boolean; truncated?: boolean; capturePath?: string; durationMs?: number; exitCode?: number; incomplete?: boolean; incompleteReason?: string; circuitBreaker?: boolean; failureClass?: ToolFailureClass; blockReason?: string; batchIndex?: number; batchSize?: number; render?: RenderHints; testResult?: import('../../tools/handlers/test-runner-detector.js').TestResult; image?: { mediaType: 'image/png' | 'image/jpeg' | 'image/gif' | 'image/webp'; data: string; }; }