import type { Store } from "./types.js"; export interface GcStats { total: number; reachable: number; collected: number; scanned: number; } /** * Garbage collection: mark-and-sweep algorithm * - Roots: all variable values (global, not scoped), excluding * `@ocas/template/text/*` variables — those are added in a follow-up * phase only when their referenced schema is itself reachable. * - Mark: recursively walk refs from roots * - Template phase: for every reachable schema, walk the contents of its * `@ocas/template/text/` template variable (mirrors * `computeClosure` Phase 3). * - Sweep: delete unmarked nodes * - Schema preservation: schemas of reachable nodes are also marked */ export declare function gc(store: Store): GcStats; //# sourceMappingURL=gc.d.ts.map