import type { Adapter } from "../../adapters/types.js";
import type { StalenessStamp } from "../../staleness.js";
import type { GraphModel } from "../../views/graph-html.js";
export type GraphResult = {
ran: true;
outputPath: string;
model: GraphModel;
stamp: StalenessStamp;
repoResolved: boolean;
} | {
ran: false;
skippedReason: string;
};
export interface GraphOptions {
/** Repo checkout root — colors nodes by conformance resolved against real code. */
repoRoot?: string | undefined;
/** Adapter for queue-fact matching (optional). */
adapter?: Adapter | undefined;
/** Output path override; defaults to `
/.loopgraph/ws/graph.html`. */
out?: string | undefined;
cacheDir?: string | null | undefined;
}
/**
* `loopgraph graph`: write a self-contained, conformance-colored HTML view of
* the whole model into the gitignored `.loopgraph/ws/` side-channel (same posture
* as `view`: regenerated on demand, staleness-stamped, never committed — it is a
* projection of the model, not a source of truth).
*
* Same skip discipline as `coverage`/`conformance`: a missing model dir or an
* all-parse-error load is a loud `ran: false`, never a page rendering an empty
* or fictional graph. Without `--repo-root` the conformance colors are
* structural (declared, not verified) and the page says so.
*/
export declare function runGraph(targetDir: string, options?: GraphOptions): Promise;
//# sourceMappingURL=graph.d.ts.map