import * as dntShim from "../../../../../../_dnt.shims.js";
import type { Signal } from "./signal.js";
export interface SpawnCommandOptions {
    args: string[];
    cwd: string;
    /** The complete environment for the child — Node's `cp.spawn` does not
     * merge with `process.env` when this is passed. */
    env: Record<string, string>;
    stdin: "inherit" | "null" | "piped";
    stdout: "inherit" | "null" | "piped";
    stderr: "inherit" | "null" | "piped";
}
export interface SpawnedChildProcess {
    stdin(): dntShim.WritableStream;
    stdout(): dntShim.ReadableStream;
    stderr(): dntShim.ReadableStream;
    kill(signo?: Signal): void;
    waitExitCode(): Promise<number>;
}
export declare function spawnCommand(path: string, options: SpawnCommandOptions): SpawnedChildProcess;
//# sourceMappingURL=spawn.d.ts.map