use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
#[non_exhaustive]
pub struct ActivityOrigin {
#[serde(default)]
pub ip: Option<String>,
#[serde(default, rename = "user-agent", alias = "user_agent")]
pub user_agent: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
#[non_exhaustive]
pub struct Activity {
pub id: i64,
pub event: String,
#[serde(default)]
pub message: Option<String>,
#[serde(default)]
pub payload: serde_json::Value,
#[serde(default)]
pub origin: Option<ActivityOrigin>,
pub created_at: String,
}