1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
use serde::{Deserialize, Serialize};
use uuid::Uuid;
#[derive(Default, Debug, Clone, Serialize, Deserialize)]
pub struct BaseData {}
#[derive(Default, Debug, Clone, Serialize, Deserialize)]
pub struct BaseMeta {
pub id: Uuid,
#[serde(rename = "type")]
pub event_type: String,
pub version: String,
pub time: u64,
}
#[derive(Default, Debug, PartialEq, Eq, PartialOrd, Ord, Clone, Serialize, Deserialize)]
pub struct BaseLink {
#[serde(rename = "type")]
pub link_type: String,
pub target: Uuid,
}
#[derive(Default, Debug, Clone, Serialize, Deserialize)]
pub struct BaseEvent {
pub meta: BaseMeta,
pub data: BaseData,
pub links: Vec<BaseLink>,
}