import type { Spec } from '../../types/index.js';
export type EdgeKind = 'dependency' | 'supersedes' | 'depends_on';
export interface GraphNode {
    id: string;
    status: string;
    supersededBy?: string;
}
export interface GraphEdge {
    from: string;
    to: string;
    kind: EdgeKind;
}
export interface SupersedesCycleDiagnostic {
    code: 'SUPERSEDES_CYCLE';
    cycle: string[];
}
export interface SpecGraph {
    nodes: GraphNode[];
    edges: GraphEdge[];
    diagnostics: SupersedesCycleDiagnostic[];
}
/**
 * Build a full SpecGraph from an array of specs.
 * Ingests `supersedes`, `depends_on`, and legacy `dependencies` fields.
 */
export declare function buildSpecGraph(specs: Spec[]): SpecGraph;
//# sourceMappingURL=graph-builder.d.ts.map