import { SessionReplayEventsManager as AmplitudeSessionReplayEventsManager, EventType, StoreType } from '../typings/session-replay'; import { SessionReplayJoinedConfig } from '../config/types'; import { PayloadBatcher, SessionReplayTrackDestination } from '../track-destination'; export type EventsManagerWithBeacon = AmplitudeSessionReplayEventsManager & { /** * Returns current pending events (since last flush) for synchronous access on page exit. * Used to populate a sendBeacon payload when the page is unloading. */ getBeaconEvents(): string[]; /** * Drops all pending beacon events. Used when the session is decided to be below * the min duration threshold so its events don't leak into a later session's beacon. */ dropPendingBeaconEvents(): void; trackDestination: SessionReplayTrackDestination; }; export declare const createEventsManager: ({ config, minInterval, maxInterval, type, payloadBatcher, storeType, trackDestinationWorkerScript, shouldSend, }: { config: SessionReplayJoinedConfig; type: Type; minInterval?: number | undefined; maxInterval?: number | undefined; payloadBatcher?: PayloadBatcher | undefined; storeType: StoreType; trackDestinationWorkerScript?: string | undefined; shouldSend?: (() => boolean) | undefined; }) => Promise>; //# sourceMappingURL=events-manager.d.ts.map