/** * Stage `script` under `os.tmpdir()/-` and return the runner path. * * The directory is per-uid because `os.tmpdir()` is shared between accounts: a * single shared name lets whichever account creates it first own it, and every * other account's runner write then fails with EACCES. The per-uid name is * still predictable, so an existing entry must be a real directory owned by us * with mode 0700; otherwise another account could block staging or plant the * runner file (whose name is a deterministic hash) for us to execute. A * squatted path falls back to a fresh `mkdtemp` directory for this process. * * The staged path is memoized per `dirName` but re-checked with `fs.existsSync` * before reuse, so a runner deleted mid-session is re-written on the next call * instead of handing back a path to a missing file (issue #8140). * * @param dirName Cache subdirectory prefix under the OS temp dir (unique per language). * @param ext Runner file extension without the dot (e.g. `py`). * @param script Runner source, hashed to key the cached file per version. */ export declare function stageRunnerScript(dirName: string, ext: string, script: string): Promise;