export declare enum ClientEventTypes {
    CLIENT_JOINED = "CLIENT_JOINED",
    CLIENT_LEFT = "CLIENT_LEFT",
    PEER_CONNECTION_OPENED = "PEER_CONNECTION_OPENED",
    PEER_CONNECTION_CLOSED = "PEER_CONNECTION_CLOSED",
    MEDIA_TRACK_ADDED = "MEDIA_TRACK_ADDED",
    MEDIA_TRACK_REMOVED = "MEDIA_TRACK_REMOVED",
    MEDIA_TRACK_RESUMED = "MEDIA_TRACK_RESUMED",
    MEDIA_TRACK_MUTED = "MEDIA_TRACK_MUTED",
    MEDIA_TRACK_UNMUTED = "MEDIA_TRACK_UNMUTED",
    ICE_GATHERING_STATE_CHANGED = "ICE_GATHERING_STATE_CHANGED",
    PEER_CONNECTION_STATE_CHANGED = "PEER_CONNECTION_STATE_CHANGED",
    ICE_CONNECTION_STATE_CHANGED = "ICE_CONNECTION_STATE_CHANGED",
    DATA_CHANNEL_OPEN = "DATA_CHANNEL_OPEN",
    DATA_CHANNEL_CLOSED = "DATA_CHANNEL_CLOSED",
    DATA_CHANNEL_ERROR = "DATA_CHANNEL_ERROR",
    NEGOTIATION_NEEDED = "NEGOTIATION_NEEDED",
    SIGNALING_STATE_CHANGE = "SIGNALING_STATE_CHANGE",
    ICE_CANDIDATE = "ICE_CANDIDATE",
    ICE_CANDIDATE_ERROR = "ICE_CANDIDATE_ERROR",
    PEER_CONNECTION_ICE_PATH_CHANGED = "PEER_CONNECTION_ICE_PATH_CHANGED",
    ICE_RESTART = "ICE_RESTART",
    ICE_RESTART_RECOMMENDED = "ICE_RESTART_RECOMMENDED",
    LONG_PC_CONNECTION_ESTABLISHMENT = "LONG_PC_CONNECTION_ESTABLISHMENT",
    EXCESSIVE_SYNTHESIZED_AUDIO = "EXCESSIVE_SYNTHESIZED_AUDIO",
    CODEC_CHANGED = "CODEC_CHANGED",
    VIDEO_RESOLUTION_CHANGED = "VIDEO_RESOLUTION_CHANGED",
    SIMULCAST_LAYER_CHANGED = "SIMULCAST_LAYER_CHANGED",
    CAPTURE_TRACK_ENDED = "CAPTURE_TRACK_ENDED",
    CAPTURE_TRACK_MUTED = "CAPTURE_TRACK_MUTED",
    STATS_COLLECTION_GAP = "STATS_COLLECTION_GAP",
    PRODUCER_ADDED = "PRODUCER_ADDED",
    PRODUCER_REMOVED = "PRODUCER_REMOVED",
    PRODUCER_PAUSED = "PRODUCER_PAUSED",
    PRODUCER_RESUMED = "PRODUCER_RESUMED",
    CONSUMER_ADDED = "CONSUMER_ADDED",
    CONSUMER_REMOVED = "CONSUMER_REMOVED",
    CONSUMER_PAUSED = "CONSUMER_PAUSED",
    CONSUMER_RESUMED = "CONSUMER_RESUMED",
    DATA_PRODUCER_CREATED = "DATA_PRODUCER_CREATED",
    DATA_PRODUCER_CLOSED = "DATA_PRODUCER_CLOSED",
    DATA_CONSUMER_CREATED = "DATA_CONSUMER_CREATED",
    DATA_CONSUMER_CLOSED = "DATA_CONSUMER_CLOSED"
}
export type ClientJoinedEventPayload = Record<string, unknown>;
export type ClientLeftEventPayload = Record<string, unknown>;
export interface PeerConnectionOpenedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    iceConnectionState?: string;
    iceGatheringState?: string;
    signalingState?: string;
}
export interface PeerConnectionClosedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    iceConnectionState?: string;
    iceGatheringState?: string;
    signalingState?: string;
}
export interface MediaTrackAddedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: 'audio' | 'video';
    label?: string;
    muted: boolean;
    enabled: boolean;
    readyState: string;
    contentHint?: string;
    constraints: MediaTrackConstraints;
    capabilities: MediaTrackCapabilities;
    settings: MediaTrackSettings;
}
export interface MediaTrackRemovedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: 'audio' | 'video';
    label?: string;
    muted: boolean;
    enabled: boolean;
    readyState: string;
    contentHint?: string;
}
export interface MediaTrackMutedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: 'audio' | 'video';
    label?: string;
    muted: boolean;
    enabled: boolean;
    readyState: string;
    contentHint?: string;
}
export interface MediaTrackUnmutedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: 'audio' | 'video';
    label?: string;
    muted: boolean;
    enabled: boolean;
    readyState: string;
    contentHint?: string;
}
export interface IceGatheringStateChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    iceGatheringState: string;
}
export interface PeerConnectionStateChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    connectionState: string;
}
export interface IceConnectionStateChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    iceConnectionState: string;
}
export interface DataChannelErrorEventPayload extends Record<string, unknown> {
    label: string;
    peerConnectionId: string;
    readyState: string;
    dataChannelId: string | number | null;
    error: string | null;
}
export interface DataChannelOpenEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    label: string;
    readyState: string;
    dataChannelId: string | number | null;
}
export interface DataChannelClosedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    label: string;
    readyState: string;
    dataChannelId: string | number | null;
}
export interface NegotiationNeededEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
}
export interface IceCandidateEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    address?: string | null;
    candidate?: string;
    component?: RTCIceComponent | null;
    foundation?: string | null;
    port?: number | null;
    priority?: number | null;
    protocol?: RTCIceProtocol | null;
    relatedAddress?: string | null;
    relatedPort?: number | null;
    sdpMLineIndex?: number | null;
    sdpMid?: string | null;
    tcpType?: RTCIceTcpCandidateType | null;
    type?: RTCIceCandidateType | null;
    usernameFragment?: string | null;
}
export interface IceCandidateErrorEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    errorCode?: number;
    errorText?: string;
    address?: string | null;
    port?: number | null;
    url?: string | null;
}
export interface SignalingStateChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    signalingState: string;
}
export interface ProducerAddedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
}
export interface ProducerRemovedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
}
export interface ProducerPausedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
}
export interface ProducerResumedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
}
export interface ConsumerAddedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
    consumerId: string;
    trackId: string;
}
export interface ConsumerRemovedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
    consumerId: string;
    trackId: string;
}
export interface ConsumerPausedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
    consumerId: string;
    trackId: string;
}
export interface ConsumerResumedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    producerId: string;
    consumerId: string;
    trackId: string;
}
export interface DataProducerCreatedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    dataProducerId: string;
}
export interface DataProducerClosedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    dataProducerId: string;
}
export interface DataConsumerCreatedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    dataProducerId: string;
    dataConsumerId: string;
}
export interface DataConsumerClosedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    dataProducerId: string;
    dataConsumerId: string;
}
export interface PeerConnectionIcePathChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    transition: string;
    from?: Record<string, unknown>;
    to: Record<string, unknown>;
}
export interface IceRestartEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    transportId: string;
    iceGeneration: number;
    outcome: string;
    iceState?: string;
    evidence: string;
    timestamp: number;
}
export interface LongPcConnectionEstablishmentEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    duration: number;
}
export interface ExcessiveSynthesizedAudioEventPayload extends Record<string, unknown> {
    deltaSynthesizedSamplesDuration?: number;
}
export interface CodecChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    direction: string;
    kind: string;
    fromMimeType?: string;
    fromSdpFmtpLine?: string;
    mimeType: string;
    sdpFmtpLine?: string;
    payloadType?: number;
    clockRate?: number;
    channels?: number;
}
export interface VideoResolutionChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    direction: string;
    change: string;
    fromWidth: number;
    fromHeight: number;
    width: number;
    height: number;
    framesPerSecond?: number;
    qualityLimitationReason?: string;
}
export interface SimulcastLayerChangedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    activeLayerIds: string[];
    previousActiveLayerIds: string[];
    layers: Record<string, unknown>[];
}
export interface CaptureTrackEndedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: string;
    deviceLabel?: string;
}
export interface CaptureTrackMutedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    trackId: string;
    kind: string;
    deviceLabel?: string;
}
export interface StatsCollectionGapEventPayload extends Record<string, unknown> {
    expectedPeriodInMs: number;
    actualPeriodInMs: number;
    gapInMs: number;
    durationOfCollectingStatsInMs?: number;
}
export interface IceRestartRecommendedEventPayload extends Record<string, unknown> {
    peerConnectionId: string;
    transportId?: string;
    reason: string;
    conditionDurationInMs: number;
    iceGeneration: number;
    recommendationCount: number;
    iceState?: string;
    dtlsState?: string;
    selectedCandidatePairId?: string;
}
