/**
 * @desc Instead of evaluating the result of a regular validator, a ResultValidator looks
 * at the total result of regular Validators. Instead of an execute function, it uses a
 * 'executeOnResults' Validator.
 * ResultValidators cannot be async, and should not contain an execute method.
 */
export class ResultValidator extends Validator {
    /**
     * @param {Object} context
     * @param {Validator[]} context.regularValidationResult
     * @param {Validator[]} context.prevValidationResult
     * @param {Validator[]} context.prevShownValidationResult
     * @param {Validator[]} [context.validators]
     * @returns {boolean}
     */
    executeOnResults({ regularValidationResult, prevValidationResult, prevShownValidationResult, validators, }: {
        regularValidationResult: Validator[];
        prevValidationResult: Validator[];
        prevShownValidationResult: Validator[];
        validators?: Validator[] | undefined;
    }): boolean;
}
import { Validator } from "./Validator.js";
