export declare const CALL_SNAPSHOT_SCHEMA_VERSION = "3.1.0"; export type MediaDevice = { id?: string; kind?: "videoinput" | "audioinput" | "audiooutput"; label?: string; }; export type CalculationRemark = { severity: 'none' | 'minor' | 'major' | 'critical'; text: string; }; export type CalculatedScore = { score: number; remarks: CalculationRemark[]; debugText?: string; timestamp: number; }; export type ClientSnapshotCallEvent = { timestamp: number; name: string; peerConnectionId?: string; trackId?: string; message?: string; value?: string; attachments?: string; }; export interface ClientIssue extends Record { severity: 'critical' | 'major' | 'minor'; timestamp: number; description?: string; peerConnectionId?: string; trackId?: string; attachments?: Record; } export type InboundAudioTrackDatapoint = { bitrateInKbps?: number; fractionLoss?: number; jitter?: number; packetsReceived?: number; packetsLost?: number; statsTimestamp: number; }; export type InboundVideoTrackDatapoint = { bitrateInKbps?: number; fractionLoss?: number; jitter?: number; framesReceived?: number; framesDecoded?: number; width?: number; height?: number; packetsReceived?: number; packetsLost?: number; framesDropped?: number; statsTimestamp: number; }; export type OutboundAudioTrackDatapoint = { bitrateInKbps?: number; fractionLoss?: number; jitter?: number; rttInMs?: number; packetsSent?: number; statsTimestamp: number; }; export type OutboundVideoTrackDatapoint = { bitrateInKbps?: number; fractionLoss?: number; rttInMs?: number; jitter?: number; pliCount?: number; framesEncoded?: number; framesSent?: number; width?: number; height?: number; packetsSent?: number; ssrc: number; statsTimestamp: number; }; export type PeerConnectionDataPoint = { rttInMs?: number; availableOutboundBitrateInKbps?: number; availableInboundBitrateInKbps?: number; outboundBitrateInKbps?: number; inboundBitrateInKbps?: number; statsTimestamp: number; }; type ClientSnapshotTrack = { trackId: string; added?: number; removed?: number; codec?: string; producerId?: string; scores: CalculatedScore[]; datapoints: DataPoint[]; }; export type ClientSnapshotInboundAudioTrack = ClientSnapshotTrack & { consumerId?: string; }; export type ClientSnapshotInboundVideoTrack = ClientSnapshotTrack & { consumerId?: string; }; export type ClientSnapshotOutboundAudioTrack = ClientSnapshotTrack; export type ClientSnapshotOutboundVideoTrack = ClientSnapshotTrack; export type PeerConnectionSnapshot = { peerConnectionId: string; label?: string; opened?: number; closed?: number; scores: CalculatedScore[]; datapoints: PeerConnectionDataPoint[]; inboundAudioTracks: ClientSnapshotInboundAudioTrack[]; inboundVideoTracks: ClientSnapshotInboundVideoTrack[]; outboundAudioTracks: ClientSnapshotOutboundAudioTrack[]; outboundVideoTracks: ClientSnapshotOutboundVideoTrack[]; }; export type ClientSnapshot = { roomId: string; serviceId: string; callId: string; mediaUnitId?: string; clientId: string; peerId?: string; displayName?: string; joined?: number; left?: number; operationSystem?: { name?: string; version?: string; }; browser?: { name?: string; version?: string; }; coordinates?: { latitude: number; longitude: number; }; mediaDevices: MediaDevice[]; mediaConstraints: string[]; scores: CalculatedScore[]; events: ClientSnapshotCallEvent[]; issues: ClientIssue[]; latenciesInMs?: { min: number; max: number; }; peerConnections: PeerConnectionSnapshot[]; totalReceivedBytes: number; totalSentBytes: number; marker?: string; timestamp: number; }; export type CallSnapshot = { meta?: { snapshotSchemaVersion: string; workerVersion: string; errors: string[]; }; roomId: string; serviceId: string; callId: string; started?: number; ended?: number; observedTimeInMs: number; numberOfIssues: number; totalReceivedBytes: number; totalSentBytes: number; scores: CalculatedScore[]; clientIds: string[]; timestamp: number; }; export {}; //# sourceMappingURL=CallSnapshotSchema.d.ts.map