lastid_sdk/types/
credential_response.rs1use std::fmt;
4
5use serde::{Deserialize, Serialize};
6
7use crate::types::RequestId;
8
9#[derive(Debug, Clone, Serialize, Deserialize)]
14pub struct CredentialRequestResponse {
15 pub request_id: RequestId,
17
18 pub request_uri: String,
23
24 pub expires_in: u64,
26
27 pub nonce: String,
29}
30
31impl CredentialRequestResponse {
32 #[must_use]
34 pub const fn new(
35 request_id: RequestId,
36 request_uri: String,
37 expires_in: u64,
38 nonce: String,
39 ) -> Self {
40 Self {
41 request_id,
42 request_uri,
43 expires_in,
44 nonce,
45 }
46 }
47
48 #[must_use]
50 pub const fn request_id(&self) -> &RequestId {
51 &self.request_id
52 }
53
54 #[must_use]
56 pub fn request_uri(&self) -> &str {
57 &self.request_uri
58 }
59
60 #[must_use]
62 pub const fn expires_in(&self) -> u64 {
63 self.expires_in
64 }
65
66 #[must_use]
68 pub fn nonce(&self) -> &str {
69 &self.nonce
70 }
71}
72
73impl fmt::Display for CredentialRequestResponse {
74 fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
75 write!(
76 f,
77 "CredentialRequestResponse {{ request_id: {}, expires_in: {}s }}",
78 self.request_id, self.expires_in
79 )
80 }
81}