import type { SessionLog } from '../../store/session-log/index.js'; import type { TurnId } from '../../types/ids/index.js'; import type { SessionRecord } from '../../types/session/records.js'; import type { ToolExecutionSnapshot } from '../../types/session/tool-execution.js'; /** * Collects the latest execution boundary of selected tool calls from one * turn's records: metadata only, never retained output bodies beyond the * completion's own result. */ export declare class ToolExecutionCollector { private readonly turnId; private started; private readonly wanted; private readonly records; constructor(turnId: TurnId, ids: readonly string[]); accept(record: SessionRecord): void; /** Complete only when the turn's beginning was seen and the whole log verified. */ finish(complete?: boolean): ToolExecutionSnapshot; } /** * Read the latest recorded execution boundary of selected tool calls of one * turn. The log is read strictly, so absence of a start is proof only when * the snapshot is `complete`. */ export declare function readToolExecutions(log: SessionLog, turnId: TurnId, ids: readonly string[], signal?: AbortSignal): Promise; //# sourceMappingURL=tool-executions.d.ts.map