use std::{collections::BTreeMap, sync::Arc}; use ruma::{events::TimelineEventType, EventId, MilliSecondsSinceUnixEpoch}; use serde::Deserialize; use serde_json::value::RawValue as RawJsonValue; /// Build the start of a PDU in order to add it to the Database. #[derive(Debug, Deserialize)] pub struct PduBuilder { #[serde(rename = "type")] pub event_type: TimelineEventType, pub content: Box, pub unsigned: Option>, pub state_key: Option, pub redacts: Option>, /// For timestamped messaging, should only be used for appservices /// /// Will be set to current time if None pub timestamp: Option, }