UNPKG

@absmartly/javascript-sdk

Version:

A/B Smartly Javascript SDK

34 lines 1.71 kB
import Client, { ClientOptions, ClientRequestOptions } from "./client"; import Context, { ContextData, ContextOptions, ContextParams, Exposure, Goal } from "./context"; import { ContextPublisher, PublishParams } from "./publisher"; import { ContextDataProvider } from "./provider"; export type EventLoggerData = Error | Exposure | Goal | ContextData | PublishParams; export type EventName = "error" | "ready" | "refresh" | "publish" | "exposure" | "goal" | "finalize"; export type EventLogger = (context: Context, eventName: EventName, data?: EventLoggerData) => void; export type SDKOptions = { client?: Client; eventLogger?: EventLogger; publisher?: ContextPublisher; provider?: ContextDataProvider; }; export default class SDK { static defaultEventLogger: EventLogger; private _eventLogger; private _publisher; private _provider; private readonly _client; constructor(options: ClientOptions & SDKOptions); getContextData(requestOptions: ClientRequestOptions): any; createContext(params: ContextParams, options?: Partial<ContextOptions>, requestOptions?: Partial<ClientRequestOptions>): Context; setEventLogger(logger: EventLogger): void; getEventLogger(): EventLogger; setContextPublisher(publisher: ContextPublisher): void; getContextPublisher(): ContextPublisher; setContextDataProvider(provider: ContextDataProvider): void; getContextDataProvider(): ContextDataProvider; getClient(): Client; createContextWith(params: ContextParams, data: ContextData | Promise<ContextData>, options?: Partial<ContextOptions>): Context; private static _contextOptions; private static _validateParams; } //# sourceMappingURL=sdk.d.ts.map