import { DevCycleUser, DVCVariable, DVCVariableValue } from '../types';
export declare class HookContext<T extends DVCVariableValue> {
    readonly user: DevCycleUser;
    readonly variableKey: string;
    readonly defaultValue: T;
    readonly metadata: {
        [key: string]: string;
    };
    evaluationContext?: Pick<DVCVariable<T>, "key" | "value" | "isDefaulted" | "eval"> | undefined;
    constructor(user: DevCycleUser, variableKey: string, defaultValue: T, metadata: {
        [key: string]: string;
    }, evaluationContext?: Pick<DVCVariable<T>, "key" | "value" | "isDefaulted" | "eval"> | undefined);
}
