sinan 0.1.0

A Boilerplate for Rapid Axum Web Service Deployment.
Documentation
use serde::{Deserialize, Serialize};

#[derive(Debug, Serialize, Deserialize, Clone)]
pub struct JWTClaims {
    aud: Option<String>, // Optional. Audience
    exp: i64, // Required (validate_exp defaults to true in validation). Expiration time (as UTC timestamp)
    iat: Option<i64>, // Optional. Issued at (as UTC timestamp)
    iss: Option<String>, // Optional. Issuer
    nbf: Option<usize>, // Optional. Not Before (as UTC timestamp)
    sub: Option<String>, // Optional. Subject (whom token refers to)
}

impl JWTClaims {
    pub fn new(
        aud: Option<String>,
        exp: i64,
        iat: Option<i64>,
        iss: Option<String>,
        nbf: Option<usize>,
        sub: Option<String>,
    ) -> Self {
        Self {
            aud,
            exp,
            iat,
            iss,
            nbf,
            sub,
        }
    }
}