UNPKG

@croct/plug

Version:

A fully-featured devkit for building natively personalized applications.

65 lines (62 loc) 1.94 kB
import { CidAssigner } from '@croct/sdk/cid'; import { ContextFactory } from '@croct/sdk/facade/evaluatorFacade'; import { Campaign, Page } from '@croct/sdk/evaluator'; import { Plugin, PluginFactory } from './plugin.cjs'; import { SdkEventSubscriber } from './sdk/index.cjs'; import { TokenProvider } from '@croct/sdk/token'; import { Tab } from '@croct/sdk/tab'; import { Logger } from '@croct/sdk/logging'; import '@croct/sdk/facade/trackerFacade'; import '@croct/sdk/facade/userFacade'; import '@croct/sdk/facade/sessionFacade'; import '@croct/sdk/eventManager'; import '@croct/sdk/sdkEvents'; type Configuration = { appId: string; connectionId?: string; sdkVersion: string; tab: Tab; contextFactory: ContextFactory; storage: Storage; eventSubscriber: SdkEventSubscriber; cidAssigner: CidAssigner; tokenProvider: TokenProvider; logger: Logger; }; type SyncPayload = { appId: string; connectionId: string; sdkVersion: string; cid: string; tabId: string; token: string | null; context: { campaign?: Campaign; page?: Page; timezone?: string; }; }; declare class PlaygroundPlugin implements Plugin { private readonly sdkVersion; private readonly appId; private readonly connectionId?; private readonly tab; private readonly contextFactory; private readonly storage; private readonly eventSubscriber; private readonly cidAssigner; private readonly tokenProvider; private readonly logger; private syncListener?; constructor(configuration: Configuration); enable(): Promise<void> | void; private resolveConnectionId; disable(): Promise<void> | void; private syncToken; private createContext; } type Options = { connectionId?: string; }; declare const factory: PluginFactory<Options>; export { type Configuration, type Options, PlaygroundPlugin, type SyncPayload, factory };