import type { AgentToolResult } from "@gajae-code/agent-core"; import type { ImageContent, TextContent } from "@gajae-code/ai/core"; import type { OutputSummary, ReadWindow, TruncationResult } from "../session/streaming-output"; import type { OutputMeta, TruncationOptions, TruncationSummaryOptions, TruncationTextOptions } from "./output-meta"; type ToolContent = Array; type DetailsWithMeta = { meta?: OutputMeta; }; export declare class ToolResultBuilder { #private; constructor(details?: TDetails); text(text: string): this; content(content: ToolContent): this; truncation(result: TruncationResult, options: TruncationOptions): this; truncationWindows(windows: ReadWindow, options?: { artifactId?: string; noticeOwner?: "body"; maxBytes?: number; rangeBase?: "file" | "window"; }): this; truncationFromSummary(summary: OutputSummary, options: TruncationSummaryOptions): this; truncationFromText(text: string, options: TruncationTextOptions): this; limits(limits: { matchLimit?: number; resultLimit?: number; headLimit?: number; columnMax?: number; }): this; sourceUrl(value: string): this; sourcePath(value: string): this; sourceInternal(value: string): this; diagnostics(summary: string, messages: string[]): this; done(): AgentToolResult; } export declare function toolResult(details?: TDetails): ToolResultBuilder; export {};