import type { LibraryConfig } from "../../lib.js";
import type { ExecInput, ExecResult } from "./sandbox/interface.js";
import { SandboxType } from "./sandbox/interface.js";
/**
 * This function should never return a rejected promise: errors should be
 * mapped to a non-zero exit code and the error message should be in stderr.
 */
export declare function exec({ cmd, workdir, timeoutInMillis, additionalWritableRoots, }: ExecInput & {
    additionalWritableRoots: ReadonlyArray<string>;
}, sandbox: SandboxType, config: LibraryConfig, abortSignal?: AbortSignal): Promise<ExecResult>;
export declare function execApplyPatch(patchText: string, workdir?: string | undefined): ExecResult;
export declare function getBaseCmd(cmd: Array<string>): string;
