import type { ChildProcess } from 'node:child_process'; export interface NamedSessionChildOwner { run(operation: () => Promise): Promise; assert(): void; assertCaptured(name: string, child: ChildProcess): void; ownedPid(name: string): number | null; checkpoint(name: string): Readonly<{ stopFresh(): Promise; }>; spawn(name: string, operation: () => ChildProcess): Promise; close(): Promise; } /** Standing supervisor owns only handles returned by its own fresh spawns. */ export declare function createNamedSessionChildOwner(signal: AbortSignal): NamedSessionChildOwner; /** Internal caller composition; no adoption from PID files or inventories. */ export declare function currentNamedSessionChildOwner(): NamedSessionChildOwner | undefined; //# sourceMappingURL=namedSessionChildOwner.d.ts.map