import { Expr } from "./Expr.js";
import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
import { ExprEvalResult } from "./ExprEvalResult.js";
import { ExprKind } from "./ExprKind.js";
import { ExprType } from "../type/ExprType.js";
export declare class ExprFacade<T> {
    private readonly delegate;
    constructor(delegate: Expr<T>);
    evaluate(ctx: IfcExpressionContext): ExprEvalResult<T>;
    getKind(): ExprKind;
    getType(): ExprType;
    toExprString(): string;
}
