import type { OwnerPrivateLock } from "./owner-private-lock.js"; import type { ProcessIncarnation, SameProcessIncarnation } from "./process-incarnation.js"; export interface ManagedRuntimePublicationBarrierOptions { readonly label: string; /** Canonical ~/.mono-agent root that already owns the lifecycle locks tree. */ readonly managedRoot: string; readonly pid?: number; readonly now?: () => number; readonly sleep?: (ms: number) => Promise; readonly processIncarnation?: ProcessIncarnation; readonly isSameProcessIncarnation?: SameProcessIncarnation; } export declare function managedRuntimePublicationBarrierPath(label: string, managedRoot: string): string; /** Controller-held barrier spanning closure installation through plist commit. */ export declare function acquireManagedRuntimePublicationBarrier(options: ManagedRuntimePublicationBarrierOptions): Promise; /** * Managed workers call this before taking their lifetime lease. A live * controller is allowed to install for an unbounded amount of time; each wait * slice remains bounded so stale PID/incarnation ownership is re-evaluated. */ export declare function waitForManagedRuntimePublication(options: ManagedRuntimePublicationBarrierOptions): Promise; //# sourceMappingURL=managed-runtime-publication.d.ts.map