import type { ResolvedWatchdogConfig, WatchdogLspConfig } from "./types.ts"; export declare const CHILD_WATCHDOG_CONFIG_ENV = "PI_SUBAGENT_WATCHDOG_CHILD_CONFIG"; export declare const CHILD_WATCHDOG_STATUS_EVENT = "subagent.watchdog.status"; export declare const CHILD_WATCHDOG_PHASES: readonly ["idle", "reviewing", "autofollow", "settling", "stale", "failed"]; export type ChildWatchdogPhase = (typeof CHILD_WATCHDOG_PHASES)[number]; export interface ChildWatchdogConfig { enabled: boolean; runId?: string; agent?: string; childIndex?: number; watchdogTailTimeoutMs: number; agentEndTimeoutMs: number; maxWarnings: number | null; model?: string; thinking?: string | false; lsp: WatchdogLspConfig; autoFollowBlockers: boolean; autoFollowMaxAttempts: number | null; stalemateRepeats: number; } export interface ChildWatchdogStatusEvent { type: typeof CHILD_WATCHDOG_STATUS_EVENT; runId?: string; agent?: string; childIndex?: number; stepIndex?: number; seq: number; phase: ChildWatchdogPhase; ts: number; followUpPending: boolean; reason?: string; } export interface ChildWatchdogStateSnapshot { phase: ChildWatchdogPhase; seq: number; lastUpdate: number; followUpPending: boolean; reason?: string; timedOut?: boolean; } export declare function resolveChildWatchdogConfig(input: { config: ResolvedWatchdogConfig; agent?: string; runId?: string; childIndex?: number; }): ChildWatchdogConfig | undefined; export declare function encodeChildWatchdogConfig(config: ChildWatchdogConfig | undefined): string | undefined; export declare function decodeChildWatchdogConfig(raw: string | undefined): ChildWatchdogConfig | undefined; export declare function isChildWatchdogStatusEvent(value: unknown): value is ChildWatchdogStatusEvent; export declare function childWatchdogIsActive(snapshot: ChildWatchdogStateSnapshot | undefined): boolean; export declare function acceptChildWatchdogEvent(input: { current: ChildWatchdogStateSnapshot | undefined; event: ChildWatchdogStatusEvent; runId?: string; agent?: string; childIndex?: number; }): ChildWatchdogStateSnapshot | undefined; //# sourceMappingURL=child-status.d.ts.map