import { Engine } from './engine';
import { ConditionJson } from './interfaces';
/**
 * Condition.
 */
export declare class Condition {
    constructor(config: ConditionJson, engine: Engine);
    /**
     * Condition fact.
     */
    private fact;
    /**
     * Condition operator.
     */
    private operator;
    /**
     * Condition value.
     */
    private value;
    /**
     * Engine instance.
     */
    private engine;
    /**
     * Evaluate a rule's conditions against the provided data.
     *
     * @param data Data object to use.
     */
    evaluate(data: Record<string, unknown>): boolean;
    /**
     * To json.
     */
    toJSON(): {
        fact: string;
        operator: string;
        value: any;
    };
    /**
     * Init condition from configuration object.
     *
     * @param json Json object.
     * @param engine Engine instance to use.
     */
    private init;
}
