use super::*;
#[derive(Deserialize, Debug)]
#[cfg_attr(test, derive(serde::Serialize))]
pub struct ConnectEvent {
#[serde(rename = "v")]
pub version: u32,
pub config: crate::types::DiscordConfig,
pub user: User,
}
#[derive(Deserialize, Debug)]
#[cfg_attr(test, derive(serde::Serialize))]
pub struct UpdateEvent {
#[serde(flatten)]
pub user: User,
}
#[derive(Debug)]
pub struct DisconnectEvent {
pub reason: crate::Error,
}
#[derive(Debug)]
pub enum UserEvent {
Connect(ConnectEvent),
Disconnect(DisconnectEvent),
Update(UpdateEvent),
}