1pub trait ReceivedMessage {
2 fn server_shutdown_event_time(&self) -> Option<u64>;
3}
4
5#[derive(Debug)]
6pub enum Command<T> {
7 Connect,
8 Send(T),
9 Disconnect,
10}
11
12#[derive(Debug)]
13pub enum Event<T> {
14 Connected,
15 Message(T),
16 ParseError(String),
19 Reconnecting {
20 attempt: u32,
21 delay_ms: u64,
22 },
23 Disconnected {
24 reason: DisconnectReason,
25 },
26}
27
28#[derive(Debug, Clone)]
29pub enum DisconnectReason {
30 Requested,
31 RemoteClosed,
32 PongTimeout,
33 Error(String),
34}