import DynamicConfig from './DynamicConfig'; import Layer from './Layer'; import { CheckGateOptions, GetExperimentOptions, GetLayerOptions, InitializeResult } from './StatsigClient'; import { SynchronousStatsigOptions, StatsigOptions } from './StatsigSDKOptions'; import { EvaluationDetails } from './EvaluationMetadata'; import { StatsigUser } from './StatsigUser'; import { UserPersistedValues } from './utils/StickyValuesStorage'; export { default as DynamicConfig } from './DynamicConfig'; export { StatsigEnvironment, StatsigOptions, UserPersistentStorageInterface, } from './StatsigSDKOptions'; export { EvaluationReason } from './EvaluationMetadata'; export type { EvaluationDetails } from './EvaluationMetadata'; export { StatsigUser } from './StatsigUser'; export type { CheckGateOptions, GetExperimentOptions, GetLayerOptions, InitializeResult, UserPersistedValues, }; export default class Statsig { private static instance; static initializeAsync(sdkKey: string, options?: StatsigOptions | null): Promise; static initialize(sdkKey: string, options: SynchronousStatsigOptions): InitializeResult; static checkGate(user: StatsigUser, gateName: string, options?: CheckGateOptions): boolean; static manuallyLogGateExposure(user: StatsigUser, gateName: string): void; static getConfig(user: StatsigUser, configName: string): DynamicConfig; static manuallyLogConfigExposure(user: StatsigUser, configName: string): void; static getExperiment(user: StatsigUser, experimentName: string, options?: GetExperimentOptions): DynamicConfig; static manuallyLogExperimentExposure(user: StatsigUser, configName: string): void; static loadUserPersistedValues(user: StatsigUser, idType: string): UserPersistedValues; static loadUserPersistedValuesAsync(user: StatsigUser, idType: string): Promise; static getLayer(user: StatsigUser, layerName: string, options?: GetLayerOptions): Layer; static manuallyLogLayerParameterExposure(user: StatsigUser, layerName: string, parameterName: string): void; static logEvent(user: StatsigUser, eventName: string, value?: string | number | null, metadata?: Record | null): void; static shutdown(): void; /** * @returns The Statsig stable ID used for device level experiments */ static getStableID(): string; /** * * @returns The reason and time associated with the evaluation for the current set * of gates and configs */ static getEvaluationDetails(): EvaluationDetails; /** * * @returns true if initialize has already been called, false otherwise */ static initializeCalled(): boolean; }