/**
 * Parser for Pi Coding Agent (`@earendil-works/pi-coding-agent`) transcript JSONL.
 *
 * Each line has a top-level `type` describing the record kind:
 *   - "session"                  — session header (skipped)
 *   - "model_change"             — model swap event (skipped)
 *   - "thinking_level_change"    — thinking config event (skipped)
 *   - "message"                  — the actual conversation turn (parsed)
 *
 * Message lines wrap an `@earendil-works/pi-ai` `Message`:
 *   { role: "user",       content: string | (TextContent | ImageContent)[] }
 *   { role: "assistant",  content: (TextContent | ThinkingContent | ToolCall)[] }
 *   { role: "toolResult", toolName, toolCallId, content: (TextContent | ImageContent)[], isError }
 *
 * ToolCall blocks look like:
 *   { type: "toolCall", id, name, arguments: {...} }
 *
 * This parser converts those records into the same `[User] / [Assistant] /
 * [Tool Call] / [Tool Error]` lines as the Claude parser so downstream
 * summary generation is engine-agnostic.
 */
import type { TranscriptParser } from "./types.js";
export declare const piCodingTranscriptParser: TranscriptParser;
//# sourceMappingURL=pi-coding-parser.d.ts.map