1
2
3
4
5
6
7
8
9
10
11
12
13
14
use serde::{Serialize, Deserialize};
use serde_with::rust::deserialize_ignore_any;

use crate::{Frame, InputEvent};

/// The payload of a message.
#[derive(Debug, Serialize, Deserialize, PartialEq, Eq, Clone)]
#[serde(untagged)]
pub enum Payload {
    Frame(Frame),
    InputEvent(InputEvent),
    #[serde(deserialize_with = "deserialize_ignore_any")]
    Empty,
}