use serde::{Deserialize, Serialize};
use crate::UserId;
#[derive(Debug, Deserialize, Serialize, Clone, PartialEq, Eq)]
pub struct User {
#[serde(rename = "_id")]
pub id: UserId,
pub created_at: chrono::DateTime<chrono::Utc>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub first_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub last_name: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub email: Option<String>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub access_granted_at: Option<chrono::DateTime<chrono::Utc>>,
}