/** * Dead Symbol Detection — find symbols removed and never re-added. * * A symbol is "dead" when it existed at one tick but is absent at a * later tick and never reappears. This identifies cleanup candidates, * tracks deprecations, and measures API surface shrinkage. * * Uses the WARP graph's temporal observer to compare symbol snapshots * across ticks. Walks commits in tick order, detects removals by * diff, then filters out any symbol that reappears later. */ import { type WarpContext } from "./context.js"; /** A symbol that was removed and never re-added. */ export interface DeadSymbol { /** The symbol name (e.g. "myFunction"). */ readonly name: string; /** The kind of symbol (e.g. "function", "class"). */ readonly kind: string; /** The file path the symbol belonged to. */ readonly filePath: string; /** Whether the symbol was exported. */ readonly exported: boolean; /** The commit SHA that removed the symbol. */ readonly removedInCommit: string; } /** Options for the dead-symbol query. */ export interface DeadSymbolOptions { /** Limit the search to the last N commits (by tick order). */ readonly maxCommits?: number | undefined; } /** * Find symbols that were removed and never re-added. * * For each commit in tick order, compares the sym-node set at the previous * indexed commit tick vs this commit's tick to find removals (present before, * absent after). A single Git commit can span multiple WARP Lamport ticks * because lazy indexing writes one bounded patch per file. */ export declare function findDeadSymbols(ctx: WarpContext, options?: DeadSymbolOptions): Promise; //# sourceMappingURL=dead-symbols.d.ts.map