cal-core 0.2.158

Callable core lib
Documentation
// File: cal-core/src/authentication/jwt.rs

use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct Claims {
    pub sub: String,         // user_id
    pub username: String,    // email
    pub agent_id: String,
    pub exp: i64,
    pub iat: i64,
    pub permissions: Vec<String>, // groups
    // Optional fields for session management
    #[serde(skip_serializing_if = "Option::is_none")]
    pub session_id: Option<String>,
    #[serde(skip_serializing_if = "Option::is_none")]
    pub account_id: Option<String>,
}

#[derive(Debug, Serialize, Deserialize)]
pub struct TokenResponse {
    pub access_token: String,
    pub token_type: String,
    pub expires_in: i64,
}