/**
 * Numeric Proof Guard Facts — Int32 guard fact collection from conditional expressions
 *
 * Extracts Int32 guard facts from expressions like:
 * - Number.isInteger(x) — proves x is integer
 * - x >= min && x <= max — proves bounds
 *
 * Used by numeric-proof-proving.ts and numeric-proof-walk.ts.
 */
import { Diagnostic, SourceLocation } from "../../types/diagnostic.js";
import { IrExpression, NumericKind } from "../types.js";
/**
 * Context for tracking numeric proofs during IR walk
 */
export type ProofContext = {
    readonly filePath: string;
    readonly diagnostics: Diagnostic[];
    /** Maps variable names to their proven numeric kinds */
    readonly provenVariables: Map<string, NumericKind>;
    /** Maps parameter names to their numeric kinds */
    readonly provenParameters: Map<string, NumericKind>;
};
/**
 * Create a source location for a module
 */
export declare const moduleLocation: (ctx: ProofContext) => SourceLocation;
export declare const cloneProofContext: (ctx: ProofContext) => ProofContext;
export declare const withInt32ProofsFromTruthyCondition: (ctx: ProofContext, condition: IrExpression) => ProofContext;
//# sourceMappingURL=numeric-proof-guard-facts.d.ts.map