import type { VC } from "../VC";
import type { RuleResult } from "./Rule";
import { Rule } from "./Rule";
/**
 * Returns TOLERATE if the predicate succeeds, otherwise DENY.
 * - Used mostly for write permission checks.
 * - This rule may still throw an exception if it's a wild one (i.e. not derived
 *   from EntAccessError).
 */
export declare class Require<TInput extends object> extends Rule<TInput> {
    readonly _TAG: "Require";
    evaluate(vc: VC, input: TInput): Promise<RuleResult>;
}
//# sourceMappingURL=Require.d.ts.map