import type { FlowStepSite } from '../check/flow-step-site.js'; import { type EdgeClassification } from './classify-edge.js'; /** A `@flow_step` site paired with the source path it was found in. */ export interface AnalyzerEntry { /** Source path relative to `cwd` — the node-id prefix and the diagnostic file. */ readonly file: string; readonly site: FlowStepSite; } export interface CardinalityViolation { readonly rule: string; readonly file: string; readonly line: number; readonly message: string; } export interface CardinalityResult { /** Structural verdict for every `@downstream` edge across the input. */ readonly classifications: readonly EdgeClassification[]; readonly violations: readonly CardinalityViolation[]; /** The Q7 step cap: longest chain of `step` edges through the flow graph. */ readonly structuralMax: number; /** Count of flow-step sites the analyzer classified. */ readonly analyzed: number; } /** Classifies every `@downstream` edge across `entries` and derives the step cap. */ export declare function analyzeCardinality(entries: readonly AnalyzerEntry[]): CardinalityResult; //# sourceMappingURL=analyze.d.ts.map