authentik_client/models/
token_model.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct TokenModel {
17 #[serde(rename = "pk")]
18 pub pk: i32,
19 #[serde(rename = "provider")]
20 pub provider: models::OAuth2Provider,
21 #[serde(rename = "user")]
22 pub user: models::User,
23 #[serde(rename = "is_expired")]
25 pub is_expired: bool,
26 #[serde(
27 rename = "expires",
28 default,
29 with = "::serde_with::rust::double_option",
30 skip_serializing_if = "Option::is_none"
31 )]
32 pub expires: Option<Option<String>>,
33 #[serde(rename = "scope")]
34 pub scope: Vec<String>,
35 #[serde(rename = "id_token")]
37 pub id_token: String,
38 #[serde(rename = "revoked", skip_serializing_if = "Option::is_none")]
39 pub revoked: Option<bool>,
40}
41
42impl TokenModel {
43 pub fn new(
45 pk: i32,
46 provider: models::OAuth2Provider,
47 user: models::User,
48 is_expired: bool,
49 scope: Vec<String>,
50 id_token: String,
51 ) -> TokenModel {
52 TokenModel {
53 pk,
54 provider,
55 user,
56 is_expired,
57 expires: None,
58 scope,
59 id_token,
60 revoked: None,
61 }
62 }
63}