UNPKG

@ninetailed/experience.js-plugin-analytics

Version:
23 lines (22 loc) 1.19 kB
import { AnalyticsPlugin } from 'analytics'; import { AnalyticsInstance } from './AnalyticsInstance'; import { HasComponentViewTrackingThreshold } from './types/interfaces/HasComponentViewTrackingThreshold'; import { ElementSeenPayload, VariableSeenPayload } from './ElementSeenPayload'; import { HAS_SEEN_ELEMENT, HAS_SEEN_VARIABLE } from './constants'; export type EventHandlerParams<T = unknown> = { payload: T; instance: AnalyticsInstance; abort: (reason?: string) => unknown; }; export type EventHandler<T = unknown> = (params: EventHandlerParams<T>) => void; export declare abstract class NinetailedPlugin implements AnalyticsPlugin, HasComponentViewTrackingThreshold { [x: string]: unknown; private componentViewTrackingThreshold; abstract readonly name: string; [HAS_SEEN_ELEMENT]: EventHandler<ElementSeenPayload>; [HAS_SEEN_VARIABLE]: EventHandler<VariableSeenPayload>; protected onHasSeenElement: EventHandler<ElementSeenPayload>; protected onHasSeenVariable: EventHandler<VariableSeenPayload>; setComponentViewTrackingThreshold: (threshold: number) => void; getComponentViewTrackingThreshold: () => number; }