/**
 * Trajectory — ordered, structured view over a run's spans.
 *
 * A pure function `buildTrajectory(store, runId) → Trajectory` returns
 * a topologically ordered list of `TrajectoryStep` with parent-child
 * grouping collapsed into a single line-of-agent-work. Separate
 * analyzers (stuck-loop detection, waste ratio) live in
 * `pipelines/` and consume the trajectory.
 */
import type { Span, TraceEvent } from './trace/schema';
import type { TraceStore } from './trace/store';
export interface TrajectoryStep {
    index: number;
    span: Span;
    /** Depth in the span tree from the root. 0 = top-level. */
    depth: number;
    /** Events attached to this span. */
    events: TraceEvent[];
}
export interface Trajectory {
    runId: string;
    steps: TrajectoryStep[];
    llmTurns: number;
    toolCalls: number;
    judgeVerdicts: number;
    retrievals: number;
    totalDurationMs: number;
}
export declare function buildTrajectory(store: TraceStore, runId: string): Promise<Trajectory>;
export type { Span, TraceEvent } from './trace/schema';
export type { TraceStore } from './trace/store';
//# sourceMappingURL=trajectory.d.ts.map