export interface EngineHeapInputs { readonly runsOnNode: boolean; readonly totalMemoryBytes: number; /** The process's cgroup memory limit from `process.constrainedMemory()`; absent or `0` when unconstrained. */ readonly constrainedMemoryBytes: number | undefined; readonly currentHeapLimitBytes: number; readonly nodeOptions: string | undefined; readonly execArgv: readonly string[]; readonly configuredHeapMb: string | undefined; } /** Splits `NODE_OPTIONS` the way Node does: whitespace separates options, double quotes group, `\` escapes. */ export declare function splitNodeOptions(nodeOptions: string): string[]; /** * Node flags that size the interactive engine's V8 heap. The engine hosts every in-process subagent and workflow * stage, so V8's default limit (about 4 GiB) caps the whole fleet regardless of machine size. Under Node the engine * gets half of system memory, or of its container's memory limit when that is smaller, when this exceeds the * current limit. An explicit `--max-old-space-size` in * `NODE_OPTIONS` (inherited by the engine) or on the host's own command line wins, the last command-line flag first, * as Node applies it, and `ATOMIC_HEAP_MB` sets * the size in MiB or, as `0`, turns automatic sizing off. Other runtimes do not use V8 and get no flags. */ export declare function engineHeapRuntimeArgs(inputs: EngineHeapInputs): string[]; export declare function engineHeapRuntimeArgsForHost(runsOnNode: boolean): string[]; //# sourceMappingURL=engine-heap.d.ts.map