use chrono::{DateTime, Utc};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct MemberEntry {
pub pubkey: String,
pub joined_at: DateTime<Utc>,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct DekEnvelope {
pub schema: String,
pub team_id: String,
pub recipient_pubkey: String,
pub age_ciphertext_b64: String,
pub delivered_at: DateTime<Utc>,
}
impl DekEnvelope {
pub const SCHEMA: &'static str = "tsafe/collab-dek/v1";
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct InviteToken {
pub token: String,
pub team_id: String,
pub bound_pubkey: String,
}
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct InviteRecord {
pub token: String,
pub team_id: String,
pub invitee_pubkey: String,
pub expires_at: DateTime<Utc>,
}