import type { DiffFile } from "./diff-parser.js"; import type { Finding } from "./types.js"; /** A single-line, mechanical correction to one `+` line of the diff — the raw-index-addressed * edit `fix.ts` applies directly to the diff text. */ export interface CastFixEdit { readonly rawIndex: number; readonly newContent: string; } export declare function analyzeCastNecessity(files: readonly DiffFile[], readOriginal: (path: string) => string | null): Finding[]; /** Mechanical corrections for the `unnecessary-cast` findings this module can safely apply on its * own: only the trivially-redundant-literal-cast shape (`"x" as string` -> `"x"`). `as any` and * the double-unknown cast are never auto-fixed — removing them changes what the surrounding code * type-checks as, which is a judgment call for a human, not a mechanical rewrite. */ export declare function findFixableCastEdits(files: readonly DiffFile[], readOriginal: (path: string) => string | null): CastFixEdit[];