UNPKG

@coralogix/browser

Version:

Official Coralogix SDK for browsers

55 lines (54 loc) 1.96 kB
import { SessionRecordingConfig } from './session.model'; import { SessionManager } from './sessionManager'; export declare class SessionRecorder { private sessionWorker; private readonly isAutoStartRecording; private readonly maxMutations; private readonly onlySessionWithErrorMode; private readonly maxRecordTimeForSessionWithError; private recordEvents; private recordEventsForSessionWithError; private recordRef; private recordConfig; private segmentIndexCounter; private sessionManager; private hasRecording; private hasScreenshot; private recordingStopped; private batchingTimeInterval; private batchTimeDelay; private batchTimeout; private isErrorOccurred; private debugMode; private _recordingStopDueToTimeout; private mutationObserver; private request; private workerManager; private isWorkerReady; constructor(sessionManager: SessionManager, recordConfig: SessionRecordingConfig); getSessionHasScreenshot(): boolean; getSessionHasRecording(): boolean; updateSegmentIndexCounter(segmentIndexCounter: Record<string, number>): void; getIsAutoStartRecording(): boolean; set recordingStopDueToTimeout(value: boolean); get recordingStopDueToTimeout(): boolean; startRecording(): Promise<void>; screenshot(id: string): void; stopRecording(): void; private stopMutationObserver; private startMutationObserver; private clearIntervals; private prepareRecordConfig; private handleRecordEvent; private handleRecordEventForSessionWithError; private prepareRecordEventsBeforeSend; private prepareRecordEventsForSessionWithError; private compressRecordData; private registerToWorkerMessages; private resetBatching; private getMetadata; private sendRecordEvents; private handleSessionRecordingResponse; private startBatchingRecords; private initializeSessionWorker; }