import type { DiffAddition } from './compiler.js';
export interface AstGateOptions {
    /** Working directory to resolve file paths against */
    cwd?: string;
    /** Optional callback for non-fatal warnings (e.g., file not readable) */
    onWarn?: (msg: string) => void;
    /**
     * Optional content injection seam (C1 — wind-tunnel parity).
     * When provided, classifyFile uses this instead of git-show / disk reads,
     * so regex astContext classification sees the same post-image content as
     * the AST engine. Returning null skips classification for that file (same
     * as an unreadable file). Throwing propagates — callers must not silently
     * swallow (C2: missing blob is corpus shrinkage, not a clean no-match).
     */
    readStrategy?: (file: string) => Promise<string | null>;
}
/**
 * Enrich diff additions with AST context by parsing the actual files.
 *
 * Groups additions by file, reads each file from disk, runs Tree-sitter
 * classification, and sets `astContext` on each addition.
 *
 * Additions for unsupported file types or unreadable files are left
 * with `astContext: undefined` (fail-open — treated as code by the shield).
 */
export declare function enrichWithAstContext(additions: DiffAddition[], options?: AstGateOptions): Promise<void>;
//# sourceMappingURL=ast-gate.d.ts.map