import type { SubagentRunRecord } from "./subagent-registry.types.js"; import { type SubagentLifecycleEndedReason } from "./subagent-lifecycle-events.js"; export type DeferredCleanupDecision = { kind: "defer-descendants"; delayMs: number; } | { kind: "give-up"; reason: "retry-limit" | "expiry"; retryCount?: number; } | { kind: "retry"; retryCount: number; resumeDelayMs?: number; }; export declare function resolveCleanupCompletionReason(entry: SubagentRunRecord): SubagentLifecycleEndedReason; export declare function resolveDeferredCleanupDecision(params: { entry: SubagentRunRecord; now: number; activeDescendantRuns: number; announceExpiryMs: number; announceCompletionHardExpiryMs: number; maxAnnounceRetryCount: number; deferDescendantDelayMs: number; resolveAnnounceRetryDelayMs: (retryCount: number) => number; }): DeferredCleanupDecision;