import TargetMatcher from "../match/TargetMatcher"; import ActionResolver from "../action/ActionResolver"; import { Variation } from "../../model/model"; import { ManualOverrideStorage } from "./ManualOverrideStorage"; import ExperimentRequest from "../evalautor/experiment/ExperimentRequest"; import { EvaluatorContext } from "../evalautor/Evaluator"; export default class OverrideResolver { private readonly manualOverrideStorage; private readonly targetMatcher; private readonly actionResolver; constructor(manualOverrideStorage: ManualOverrideStorage, targetMatcher: TargetMatcher, actionResolver: ActionResolver); resolveOrNull(request: ExperimentRequest, context: EvaluatorContext): Variation | undefined; private resolveManualOverride; _resolveUserOverride(request: ExperimentRequest): Variation | undefined; _resolveSegmentOverride(request: ExperimentRequest, context: EvaluatorContext): Variation | undefined; }