import { Channel, ChannelChanges } from './channel.js'; import { MumbleSocket } from './mumble-socket.js'; import { SpeakingStateChange } from './speaking-state-change.js'; import { User, UserChanges } from './user.js'; export type Events = { socketConnect: (socket: MumbleSocket) => void; connect: () => void; disconnect: (payload?: { reason?: string; }) => void; error: (error: unknown) => void; channelCreate: (channel: Channel) => void; channelUpdate: (channel: Channel, changes: ChannelChanges) => void; channelRemove: (channel: Channel) => void; userCreate: (user: User) => void; userUpdate: (user: User, changes: UserChanges) => void; userRemove: (user: User) => void; speakingStateChange: (stateChange: SpeakingStateChange) => void; };