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