import type { TraceSpan } from "../../../lib/trace/types.js"; export interface SpanGraphProps { root: TraceSpan; selectedId: string | null; onSelect: (id: string) => void; /** Max spans before the honest "too large" state renders. Default 200. */ nodeCap?: number; className?: string; "aria-label"?: string; } /** * SpanGraph — a deterministic, dependency-free SVG rendering of the trace as a * layered agent graph (depth = distance from root, order = index within * depth). Edges follow parent/call order; the root→selected path is * highlighted. Over `nodeCap` spans it renders an honest "too large" state * instead of an unreadable hairball. No layout lib (elkjs/d3) — SVG-pure by * ADR D4. Nodes are focusable buttons; selection is controlled. */ export declare function SpanGraph({ root, selectedId, onSelect, nodeCap, className, "aria-label": ariaLabel, }: SpanGraphProps): import("react").JSX.Element;