import { LDEvaluationReason, LDFlagValue } from '../../api';
import Context from '../../Context';
import { InputCustomEvent, InputEvalEvent, InputIdentifyEvent } from '../events';
export type EvalEventArgs = {
    addExperimentData?: boolean;
    context: Context;
    debugEventsUntilDate?: number;
    defaultVal: any;
    excludeFromSummaries?: boolean;
    flagKey: string;
    prereqOfFlagKey?: string;
    reason?: LDEvaluationReason;
    samplingRatio?: number;
    trackEvents: boolean;
    value: LDFlagValue;
    variation?: number;
    version: number;
};
export default class EventFactoryBase {
    private readonly _withReasons;
    constructor(_withReasons: boolean);
    evalEvent(e: EvalEventArgs): InputEvalEvent;
    unknownFlagEvent(key: string, defVal: LDFlagValue, context: Context): InputEvalEvent;
    identifyEvent(context: Context): InputIdentifyEvent;
    customEvent(key: string, context: Context, data?: any, metricValue?: number, samplingRatio?: number): InputCustomEvent;
}
//# sourceMappingURL=EventFactoryBase.d.ts.map