/** * Tracks headless child processes (spawned `pi --mode rpc` sessions) so a * killed host never leaves orphans working. Children spawn in their own * process group; the registry file lets a later host reap leftovers by * killing the whole group. The file lives next to the project store and is * only ever touched by one host at a time (the advisory lock ensures it). */ export declare class HostProcessRegistry { private readonly filePath; private readonly pids; constructor(storeDir: string); register(pid: number): void; unregister(pid: number): void; get size(): number; /** Kill every registered child's process group, escalating to SIGKILL. */ killAll(): void; /** * Reap children recorded by a previous host that died without cleanup. * Called once at host start, before the lock is taken. */ reapOrphans(): number[]; private readFile; private persist; }