use crate::{
calendar::{DateTime, Utc},
http::session::{SessionCsrf, SessionKey},
};
#[derive(Clone, Copy, Debug, PartialEq, serde::Deserialize, serde::Serialize)]
pub struct SessionState<CS> {
pub custom_state: CS,
pub expires_at: Option<DateTime<Utc>>,
pub session_csrf: SessionCsrf,
pub session_key: SessionKey,
}
impl<CS> SessionState<CS> {
#[inline]
pub const fn new(
custom_state: CS,
expires_at: Option<DateTime<Utc>>,
session_csrf: SessionCsrf,
session_key: SessionKey,
) -> Self {
Self { custom_state, expires_at, session_csrf, session_key }
}
}