import { ChildProcess } from "node:child_process"; //#region src/cli/commands/compat/providers/process.d.ts /** Runs a command and returns its trimmed stdout, throwing on a non-zero exit. */ export declare function runCaptured(command: string, args: string[], cwd: string, environment: NodeJS.ProcessEnv): string; /** Runs a command with inherited stdio, throwing on a non-zero exit. */ export declare function runChecked(command: string, args: string[], cwd: string, environment: NodeJS.ProcessEnv): void; /** The conventional 128+n exit code for a child killed by a signal. */ export declare function signalExitCode(signal: NodeJS.Signals | null): number; /** * Runs an interactive child, forwarding terminal signals for its lifetime. * * Listeners are registered with `on` rather than `once` so a second Ctrl-C still * reaches the child, and removed in a finally so repeated launches in one * process do not accumulate handlers. */ export declare function forwardSignals(child: ChildProcess): () => void; /** Resolves with the child's exit code, or the conventional code for its signal. */ export declare function waitForExit(child: ChildProcess): Promise; export declare function runInteractive(command: string, args: string[], cwd: string, environment: NodeJS.ProcessEnv): Promise; export declare function isFileSystemError(error: unknown): error is NodeJS.ErrnoException; /** True when the recorded lock owner is still a live process. */ export declare function lockOwnerIsRunning(lockPath: string): boolean; /** * Takes an exclusive lock by creating a directory, which is atomic everywhere. * * A lock older than the stale window whose owner is gone is reclaimed, so a * harness killed mid-sync cannot block every other repository forever. */ export declare function acquireDirectoryLock(lockPath: string): Promise<() => Promise>; /** True when `candidate` is `root` itself or sits underneath it. */ export declare function pathInside(root: string, candidate: string): boolean; //#endregion //# sourceMappingURL=process.d.mts.map