zkgroup/api/auth/auth_credential_with_pni/
v0.rs1use partial_default::PartialDefault;
7use serde::{Deserialize, Serialize};
8
9use crate::api::auth::auth_credential_with_pni::AuthCredentialWithPniVersion;
10use crate::common::serialization::VersionByte;
11use crate::common::simple_types::*;
12use crate::crypto;
13
14#[derive(Copy, Clone, Serialize, Deserialize, PartialDefault)]
15pub struct AuthCredentialWithPniV0 {
16 pub(crate) version: VersionByte<{ AuthCredentialWithPniVersion::V0 as u8 }>,
17 pub(crate) credential: crypto::credentials::AuthCredentialWithPni,
18 pub(crate) aci: crypto::uid_struct::UidStruct,
19 pub(crate) pni: crypto::uid_struct::UidStruct,
20 pub(crate) redemption_time: Timestamp,
21}
22
23#[derive(Clone, Serialize, Deserialize, PartialDefault)]
24pub struct AuthCredentialWithPniV0Response {
25 pub(crate) version: VersionByte<{ AuthCredentialWithPniVersion::V0 as u8 }>,
26 pub(crate) credential: crypto::credentials::AuthCredentialWithPni,
27 pub(crate) proof: crypto::proofs::AuthCredentialWithPniIssuanceProof,
28}