import type { OpenClawPluginApi } from "openclaw/plugin-sdk"; import type { ImStreamClient } from "./connection.js"; interface SubagentSpawnInfo { childSessionKey: string; runId: string; label?: string; } export interface InterruptedSubagent { runId: string; label: string; status: "completed" | "suspended"; messages: string[]; } export declare function setPluginApi(api: OpenClawPluginApi): void; export declare function getSubagentMonitorInstanceId(): string; export declare function startMonitor(params: { roundKey: string; generation: number; groupId: string; agentId: string; streamClient: ImStreamClient; replyToMsgId: string; spawn: SubagentSpawnInfo; }): boolean; export declare function hasActiveSubagents(roundKey: string, generation: number): boolean; export declare function deferFinished(roundKey: string, generation: number, reason: string): void; export declare function prepareSubagentInterrupt(roundKey: string, generation: number, now?: number): InterruptedSubagent[]; export declare function markSubagentCompleted(childSessionKey: string, runId?: string): void; export declare function __tickForTests(): Promise; export declare function __resetSubagentMonitorForTests(): void; export {}; //# sourceMappingURL=subagent-monitor.d.ts.map