import { PlainTransportCreatedCallback } from "../ServerHandler"; import { WebSocketMessageBody } from "../websocket/EachSocketConnectionHandler"; import { Logs } from "./Logs"; import { Participant } from "./Participant"; export declare enum VaniEvent { OnNewMeetingStarted = "onNewMeetingStarted", OnNewMeetingEnded = "onNewMeetingEnded", OnLocalRedisMessage = "onLocalRedisMessage", OnNewMeetingStartedOnCurrentServer = "OnNewMeetingStartedOnCurrentServer", OnAllParticipantLeftOnServer = "OnAllParticipantLeftOnServer", OnUserJoined = "onUserJoined", OnUserLeft = "onUserLeft", OnError = "onError", OnServerStarted = "onServerStarted", OnPlainTransportCreated = "onPlainTransportCreated", OnPlainTransportCreateError = "onPlainTransportCreateError", OnLog = "OnLog", OnNewChatMessageReceived = "OnNewChatMessageReceived", OnClientPingRecieved = "OnClientPingRecieved", OnConsumerScoreChange = "OnConsumerScoreChange", OnConsumerLayerChange = "OnConsumerLayerChange", OnProducerScoreChange = "OnProducerScoreChange" } interface VaniConnectionEvents { [VaniEvent.OnNewMeetingStarted]: (roomId: string) => any; [VaniEvent.OnNewMeetingEnded]: (roomId: string) => any; [VaniEvent.OnAllParticipantLeftOnServer]: (roomId: string) => any; [VaniEvent.OnUserJoined]: (participant: Participant) => any; [VaniEvent.OnLocalRedisMessage]: (message: any) => any; [VaniEvent.OnUserLeft]: (participant: Participant) => any; [VaniEvent.OnError]: (error: Error) => any; [VaniEvent.OnServerStarted]: () => any; [VaniEvent.OnPlainTransportCreated]: (plainTransportCreatedCallback: PlainTransportCreatedCallback) => any; [VaniEvent.OnPlainTransportCreateError]: (plainTransportCreatedCallback: PlainTransportCreatedCallback) => any; [VaniEvent.OnLog]: (log: Logs) => any; [VaniEvent.OnClientPingRecieved]: (participant: Participant) => any; [VaniEvent.OnNewChatMessageReceived]: (payload: WebSocketMessageBody) => any; } export declare interface VaniEventListener { on(event: U, listener: VaniConnectionEvents[U]): this; off(event: U, listener: VaniConnectionEvents[U]): this; emit(event: U, ...args: Parameters): boolean; } export interface Device { id: string; label: string; } export {};