import { State } from "../domain"; import { AWEvent, AWEventWithCoreCheck, EventData, EventForwarder, EventType, RecordingEndedReason } from "../eventDefinitions"; import { Recording } from "./recording"; declare class AWEventWithMetadata implements AWEvent { type: EventType; data: EventData; recordingId: string; counter: number; timestamp: number; constructor(type: EventType, data: EventData, recordingId: string, counter: number, timestamp: number); } export declare class EventBatch { token: string; events: AWEventWithMetadata[]; constructor(token: string, events: AWEventWithMetadata[]); } export declare class ApiConfig { url: string; constructor(url: string); } export declare class ApiForwarder implements EventForwarder { config: ApiConfig; recording: Recording; events: AWEventWithMetadata[]; sending: boolean; lastCoreEventTimestamp: number; state: State; failedRuns: number; constructor(token: string, config: ApiConfig, state: State); __sendBatch(events: AWEventWithMetadata[]): Promise; __sendFinalBeacons(): void; __startRecording(token: string, startingTraits?: Record): void; __updateRecording(event: AWEventWithCoreCheck): void; endRecording(reason: RecordingEndedReason): void; isIdle(): boolean; setIdle(): void; sendBatch(): Promise; enqueueEvent(event: AWEventWithCoreCheck, config?: { last?: boolean; }): void; } export {};