import type { AbortSignal } from 'bare-abort-controller'; import { callEngineFit } from './engine-fit.js'; import type { FitProbeRequest } from './engine-fit.js'; import type { FitRunResult } from './fit-outcome.js'; export interface RunInProcessFitOptions { signal?: AbortSignal; stateDir?: string; callFit?: typeof callEngineFit; } export declare function crashMarkerPath(stateDir: string, probe: FitProbeRequest): string; export declare function crashedMarkerPath(stateDir: string, probe: FitProbeRequest): string; /** * Runs one engine's fitter in this process, for hosts that cannot spawn a * disposable child. * * There is no boundary here to contain a fitter that aborts: it takes the host * with it. A leftover `.running` marker is that abort, observed on the next * launch, and it is promoted to `.crashed` so the same request skips native * rather than repeating the abort. `timeoutMs` is not applied on this path. * * Fits of the same request can be in flight together. A `.running` marker this * process holds is not an abort, so it is shared and removed by the last fit. */ export declare function runInProcessFit(probe: FitProbeRequest, options?: RunInProcessFitOptions): Promise;