import type { ToolCall } from "../../../types.js"; import type { BoundCall, SingleToolResult } from "../contracts.js"; import type { RoundState } from "./round-state.js"; import type { RecordedToolResult } from "./round-recorder.js"; export interface GroupExecutionPorts { readonly round: RoundState; readonly boundFor: (call: ToolCall) => BoundCall | undefined; readonly eventIdFor: (bound: BoundCall) => string; readonly replay: (bound: BoundCall, uiId: string) => RecordedToolResult | undefined; readonly execute: (call: ToolCall, uiId: string) => Promise; readonly record: (bound: BoundCall, res: RecordedToolResult) => void; readonly remember: (bound: BoundCall, res: RecordedToolResult) => void; } export declare const executeToolGroups: (ports: GroupExecutionPorts, groups: readonly (readonly ToolCall[])[]) => Promise;