import type { AgentTool } from "@earendil-works/pi-agent-core"; import { Type, type TSchema } from "typebox"; import type { SubagentRunOutput, SubagentRunRequest, SubagentRunResult } from "../types.js"; import type { SubagentProgressNode, SubagentProgressSnapshot } from "../../types.js"; declare const subagentSchema: Type.TObject<{ parentContext: Type.TOptional; recentTurns: Type.TOptional; }>>; outputSchema: Type.TOptional>; budget: Type.TOptional; }>>; task: Type.TOptional; profile: Type.TOptional; label: Type.TOptional; input: Type.TOptional; tasks: Type.TOptional; label: Type.TOptional; input: Type.TOptional; }>>>; dag: Type.TOptional; label: Type.TOptional; input: Type.TOptional; id: Type.TString; dependsOn: Type.TOptional>; }>>; maxConcurrency: Type.TOptional; }>>; }>; type RunSubagent = (request: SubagentRunRequest, hooks?: { onActivity?: (activity: string) => void; }) => Promise>>; interface SubagentProfileMenuEntry { description: string; tools?: string[]; } export declare function createSubagentTool(runSubagent: RunSubagent, profiles: ReadonlyMap): AgentTool; export declare const MAX_SUBAGENT_LABEL_CHARS = 100; export declare function boundSubagentProgressNode(node: SubagentProgressNode): SubagentProgressNode; export declare function parseSubagentProgressSnapshot(value: unknown): SubagentProgressSnapshot | undefined; export declare function settleSubagentProgress(snapshot: SubagentProgressSnapshot, isError: boolean): SubagentProgressSnapshot; export declare function mergeSubagentProgress(snapshots: readonly SubagentProgressSnapshot[]): SubagentProgressSnapshot | undefined; export declare function renderSubagentDashboard(snapshot: SubagentProgressSnapshot): string; export {}; //# sourceMappingURL=subagent.d.ts.map