UNPKG

@easyflow/pixel

Version:

Easyflow client-side pixel SDK

43 lines (42 loc) 1.45 kB
import { PixelEvent } from './pixel-event.enum'; import { AtLeastOne, EventsBufferRecord, TrackBy } from './@types/types'; export declare class EasyflowPixel { private readonly ownerId; private readonly fingerprintId; private readonly urlBase; private readonly minBufferSize; private readonly minFlushIntervalMs; private lastFlushTimestamp; private isFlushing; private STORE_KEY; private SESSION_KEY; private readonly sessionTtlMs; private sessionId; private payloadHashCache; private readonly MAX_CACHE_SIZE; private pixelMap; private eventsBuffer; private readonly trackBy; private readonly debouncedFlush; private readonly circuitBreaker; private readonly retryBackoff; constructor(ownerId: string, fingerprintId: string, trackBy: AtLeastOne<TrackBy>); init(): Promise<void>; private loadPixels; private loadPixelsWithDedupe; private loadLifeCycleEvents; private getPlatformSender; track(event: PixelEvent, payload?: Record<string, any>): void; private generateCanonicalStr; private getOptimizedPayloadHash; private clearOldestCacheEntries; private mapToApiRecord; storeChunkEvents(events: EventsBufferRecord[]): void; replayFallbackEvents(): void; private flush; private platformCaller; private prepareDataToBeSent; private hashedData; private mapMetaTestCodeIfNeeded; } export { PixelEvent };