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 };
