import { PrecomputedEvaluationsInterface, StatsigPlugin } from '@statsig/client-core'; import { EndReason, SessionReplayBase } from './SessionReplayBase'; import { RRWebConfig, ReplayEvent, ReplaySessionData } from './SessionReplayClient'; export type SessionReplayOptions = { rrwebConfig?: RRWebConfig; forceRecording?: boolean; }; export type TriggeredSessionReplayOptions = { autoStartRecording?: boolean; keepRollingWindow?: boolean; } & SessionReplayOptions; export declare class StatsigTriggeredSessionReplayPlugin implements StatsigPlugin { private readonly options?; readonly __plugin = "triggered-session-replay"; constructor(options?: TriggeredSessionReplayOptions | undefined); bind(client: PrecomputedEvaluationsInterface): void; } export declare function runStatsigTriggeredSessionReplay(client: PrecomputedEvaluationsInterface, options?: TriggeredSessionReplayOptions): void; export declare class TriggeredSessionReplay extends SessionReplayBase { private _runningEventData; private _isActiveRecording; constructor(client: PrecomputedEvaluationsInterface, options?: TriggeredSessionReplayOptions); private _subscribeToClientEvents; private _subscribeToValuesUpdated; private _subscribeToLogEventCalled; private _subscribeToGateEvaluation; private _subscribeToExperimentEvaluation; private _tryStartExposureRecording; forceStartRecording(): void; stopRecording(): void; private _handleStartActiveRecording; protected _shutdown(endReason?: EndReason): void; protected _onRecordingEvent(event: ReplayEvent, data: ReplaySessionData, isCheckOut?: boolean): void; protected _attemptToStartRollingWindow(): void; protected _attemptToStartRecording(force?: boolean): void; }