import type { Environment } from "../../env";
import { type Expr, type FnCallExpr } from "../../expr";
import type { Type } from "../../types/definitions";
import type { EvaluatorContext } from "../context";
export declare function getNumericBounds(type: Type): {
    min: number | bigint;
    max: number | bigint;
} | undefined;
export declare function isConvertibleNumericType(type: Type): boolean;
export declare function tryToConvertToNumericType({ targetType, argExpr, expr, callerEnv, context, }: {
    targetType: Type;
    argExpr: Expr;
    expr: FnCallExpr;
    callerEnv: Environment;
    context: EvaluatorContext;
}): {
    expr: Expr;
    env: Environment;
} | undefined;
