import type { StrictOmit } from 'ts-gems';
import { Expression } from '../abstract/expression.js';
export type ComparisonOperator = '<=' | '<' | '>' | '>=' | '=' | '!=' | 'in' | '!in' | 'like' | '!like' | 'ilike' | '!ilike';
export declare class ComparisonExpression extends Expression {
    op: ComparisonOperator;
    left: Expression;
    right: Expression;
    prepare?: (args: ComparisonExpression.PrepareArgs) => any;
    constructor(o: StrictOmit<ComparisonExpression, 'kind'>);
    toString(): string;
}
export declare namespace ComparisonExpression {
    interface PrepareArgs {
        left: string;
        right: any;
        op: ComparisonOperator;
        adapter: string;
    }
}
