import { type PlanStage } from './scaffold.js'; export type TraceLinkStatus = 'local' | 'external' | 'missing' | 'unverified'; export type TraceLinkType = 'plan_file' | 'acceptance_criterion' | 'run_packet' | 'release_note' | 'evidence_reference' | 'pr_reference' | 'issue_reference' | 'generic_reference'; export interface TraceAcceptanceCriterion { id: `AC${number}`; text: string; checked: boolean; } export interface TraceLink { type: TraceLinkType; status: TraceLinkStatus; reference: string; detail: string; source_path?: string; target_path?: string; run_id?: string; title?: string; } export interface TraceWarning { code: string; message: string; path?: string; } export interface TraceReport { schema: 'open-scaffold.trace.v1'; root: string; query: { plan_slug: string; include_unverified: boolean; }; plan: { slug: string; stage: PlanStage; status: string; path: string; goal: string; acceptance_criteria: TraceAcceptanceCriterion[]; }; links: TraceLink[]; warnings: TraceWarning[]; summary: { local: number; external: number; missing: number; unverified: number; runs: number; release_notes: number; external_refs: number; }; } export interface TraceOptions { includeUnverified?: boolean; } export declare class TraceUsageError extends Error { } export declare function buildTrace(start: string, slug: string, options?: TraceOptions): TraceReport; export declare function formatTraceReport(report: TraceReport): string;