UNPKG

@devcycle/js-cloud-server-sdk

Version:

The DevCycle JS Cloud Bucketing Server SDK used for feature management.

29 lines (28 loc) 1.76 kB
import { DVCVariableValue, DVCVariableSet, DVCFeatureSet, DevCycleEvent } from './types'; import { DVCVariable } from './models/variable'; import { DevCyclePlatformDetails } from './models/populatedUser'; import { DVCLogger, InferredVariableType, VariableDefinitions } from '@devcycle/types'; import { DevCycleUser } from './models/user'; import { EvalHook } from './hooks/EvalHook'; import { DevCycleCloudOptions } from '.'; export declare class DevCycleCloudClient<Variables extends VariableDefinitions = VariableDefinitions> { private sdkKey; protected logger: DVCLogger; private options; protected platformDetails: DevCyclePlatformDetails; private hooksRunner; constructor(sdkKey: string, options: DevCycleCloudOptions, platformDetails: DevCyclePlatformDetails); /** * Always returns true for Cloud Client because once the client is created, * it is initialized as all request are async to the API. */ get isInitialized(): boolean; variable<K extends string & keyof Variables, T extends DVCVariableValue & Variables[K]>(user: DevCycleUser, key: K, defaultValue: T): Promise<DVCVariable<T>>; _variable<K extends string & keyof Variables, T extends DVCVariableValue & Variables[K]>(user: DevCycleUser, key: K, defaultValue: T): Promise<DVCVariable<T>>; variableValue<K extends string & keyof Variables, T extends DVCVariableValue & Variables[K]>(user: DevCycleUser, key: K, defaultValue: T): Promise<InferredVariableType<K, T>>; allVariables(user: DevCycleUser): Promise<DVCVariableSet>; allFeatures(user: DevCycleUser): Promise<DVCFeatureSet>; track(user: DevCycleUser, event: DevCycleEvent): Promise<void>; addHook(hook: EvalHook): Promise<void>; clearHooks(): Promise<void>; }