import type { TraceSpan } from "../../../lib/trace/types.js"; type Bounds = { startNs: bigint; endNs: bigint; }; export interface SpanWaterfallProps { root: TraceSpan; /** Trace window; defaults to the honest min-start/max-end envelope of the whole tree. */ bounds?: Bounds; selectedId: string | null; onSelect: (id: string) => void; collapsed: Set; /** ns → label for the hover-needle. Default ISO datetime. */ formatTimestamp?: (ns: bigint) => string; /** USD cost formatter for the ∑ rollup badge. Default `$0.0000`. */ formatCostUsd?: (usd: number) => string; className?: string; "aria-label"?: string; } /** * SpanWaterfall — a nice-interval time axis over row-packed span bars, a * hover-needle reading the absolute wall-clock time under the pointer, and a * `∑` rollup-cost badge on parent rows. Bars are percentage-positioned via * `computeBarLayout` (clock-skew / in-flight → dashed unbounded). Controlled: * selection lives in the consumer. Escaped text only — no HTML injection. */ export declare function SpanWaterfall({ root, bounds, selectedId, onSelect, collapsed, formatTimestamp, formatCostUsd, className, "aria-label": ariaLabel, }: SpanWaterfallProps): import("react").JSX.Element; export {};