import type { Logger } from './types.js'; import type { FsWatcher } from './fs-watcher.js'; import { type SystemctlRunner } from './systemd-scope.js'; export interface ReaperDeps { watcher: FsWatcher; recorderIdleTtlMs: number; killGraceMs: number; intervalMs: number; /** Cwd passed to /spawn for this manager; used to derive jsonl paths. */ spawnCwd: string; logger: Logger; /** Injectable clock for tests. Defaults to Date.now. */ now?: () => number; /** Task 250 — systemctl runner for the scope-stop call. Defaults to * spawnSync; tests inject a recording stub. */ runSystemctl?: SystemctlRunner; } export interface Reaper { start(): void; stop(): void; /** Run one reap pass synchronously. Exposed for tests. */ tickOnce(): { scanned: number; reaped: number; }; } export declare function createReaper(deps: ReaperDeps): Reaper; //# sourceMappingURL=reaper.d.ts.map