import Evaluator, { EvaluatorContext, EvaluatorEvaluation, EvaluatorRequest } from "./Evaluator"; export default abstract class ContextualEvaluator implements Evaluator { abstract supports(request: EvaluatorRequest): request is Request; protected abstract evaluateInternal(request: Request, context: EvaluatorContext): Evaluation; evaluate(request: EvaluatorRequest, context: EvaluatorContext): Evaluation; }