import type { Context, Experiment, FeatureResult, Result, SubscriptionFunction, FeatureDefinition, Attributes, WidenPrimitives, LoadFeaturesOptions, RefreshFeaturesOptions, ApiHost, ClientKey, AutoExperimentVariation, AutoExperiment } from "./types/growthbook"; export declare class GrowthBook = Record> { private context; debug: boolean; ready: boolean; private _ctx; private _renderer; private _trackedExperiments; private _trackedFeatures; private _subscriptions; private _rtQueue; private _rtTimer; private _assigned; private _forcedFeatureValues; private _attributeOverrides; private _activeAutoExperiments; constructor(context?: Context); loadFeatures(options?: LoadFeaturesOptions): Promise; refreshFeatures(options?: RefreshFeaturesOptions): Promise; getApiInfo(): [ApiHost, ClientKey]; private _refresh; private _render; setFeatures(features: Record): void; setEncryptedFeatures(encryptedString: string, decryptionKey?: string, subtle?: SubtleCrypto): Promise; setExperiments(experiments: AutoExperiment[]): void; setEncryptedExperiments(encryptedString: string, decryptionKey?: string, subtle?: SubtleCrypto): Promise; setAttributes(attributes: Attributes): void; setAttributeOverrides(overrides: Attributes): void; setForcedVariations(vars: Record): void; setForcedFeatures(map: Map): void; setURL(url: string): void; getAttributes(): { [x: string]: any; }; getFeatures(): Record>; getExperiments(): AutoExperiment[]; subscribe(cb: SubscriptionFunction): () => void; getAllResults(): Map; result: Result; }>; destroy(): void; setRenderer(renderer: () => void): void; forceVariation(key: string, variation: number): void; run(experiment: Experiment): Result; triggerExperiment(key: string): Result | null; private _runAutoExperiment; private _undoActiveAutoExperiment; private _updateAllAutoExperiments; private _fireSubscriptions; private _trackFeatureUsage; private _getFeatureResult; isOn(key: K): boolean; isOff(key: K): boolean; getFeatureValue(key: K, defaultValue: V): WidenPrimitives; /** * @deprecated Use {@link evalFeature} * @param id */ feature(id: K): FeatureResult; evalFeature(id: K): FeatureResult; private _isIncludedInRollout; private _conditionPasses; private _isFilteredOut; private _run; log(msg: string, ctx: Record): void; private _track; private _mergeOverrides; private _getHashAttribute; private _getResult; private _getContextUrl; private _urlIsValid; private _hasGroupOverlap; private _applyDOMChanges; } //# sourceMappingURL=GrowthBook.d.ts.map