saltfish
Version:
An interactive video-guided tour system for web applications
52 lines • 1.68 kB
TypeScript
import type { UserData, SaltfishConfig } from '../types';
/**
* Manager class for handling session recording functionality
*
* This class is responsible for:
* - Initializing and managing Saltfish Session Recording
* - Identifying users for session recording
* - Starting session recording with sessionId and userId only
* - Session recording is independent of playlist runs
*/
export declare class SessionRecordingManager {
private initialized;
private sessionId;
private userId;
private clientId;
private isRecording;
/**
* Creates a new SessionRecordingManager
*/
constructor();
/**
* Initializes the session recording manager
* @param config - Saltfish configuration
* @param sessionId - Persistent session ID from SessionManager (required)
* @param userId - Optional user ID to include in recording context
*/
initialize(config: SaltfishConfig, sessionId: string, userId?: string): void;
/**
* Loads the Saltfish Session Recording script
*/
private loadSaltfishRecordingScript;
/**
* Starts the session recording with sessionId and userId only
* Recording is independent of playlist runs and runId
*/
private startRecording;
/**
* Identifies a user for session recording
* @param user - User data
*/
identifyUser(user: UserData): void;
/**
* Stops the current recording session
*/
stopRecording(): void;
/**
* Gets the current recording status
* @returns true if currently recording, false otherwise
*/
isCurrentlyRecording(): boolean;
}
//# sourceMappingURL=SessionRecordingManager.d.ts.map