import type { SandboxSession } from "eve/sandbox"; export interface PostEditDiagnostic { readonly check: "git-diff" | "syntax" | "typescript" | "whitespace"; readonly code?: number; readonly column?: number; readonly line?: number; readonly message: string; readonly path?: string; } type DiagnosticsSandbox = Pick; export declare function runPostEditDiagnostics(input: { readonly addedPaths?: readonly string[]; readonly changedPaths: readonly string[]; readonly deletedPaths: readonly string[]; readonly patchRoot: string; /** Content each written path had before the patch; null or absent for new files. */ readonly previousContents?: ReadonlyMap; readonly sandbox: DiagnosticsSandbox; }): Promise; /** * Type diagnostics through the worker installed by `installCodeTooling`. * Silently contributes nothing when the worker is absent, so consumers that * skip the tooling still get every other check. */ export declare function runTypeScriptDiagnostics(input: { readonly paths: readonly string[]; readonly patchRoot: string; readonly sandbox: DiagnosticsSandbox; }): Promise; /** Drop type diagnostics that already existed before the patch, matched by path, code, and message. */ export declare function onlyNewTypeDiagnostics(diagnostics: readonly PostEditDiagnostic[], baseline: readonly PostEditDiagnostic[]): PostEditDiagnostic[]; export {};