use chrono::Utc;
use serde::Deserialize;
use crate::{
events::EventInfo,
exports,
};
#[derive(Deserialize, Debug)]
pub struct AccountEvent {
#[serde(flatten)]
pub info: EventInfo,
pub account: AccountData,
}
#[derive(Deserialize, Debug)]
pub struct AccountData {
pub active: bool,
pub did: exports::Did,
pub seq: u64,
pub time: chrono::DateTime<Utc>,
pub status: Option<AccountStatus>,
}
#[derive(Deserialize, Debug)]
#[serde(rename_all = "lowercase")]
pub enum AccountStatus {
Deactivated,
Deleted,
Suspended,
TakenDown,
}