1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: tools.ozone.verification.grantVerifications
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8///Error object for failed verifications.
9#[jacquard_derive::lexicon]
10#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
11#[serde(rename_all = "camelCase")]
12pub struct GrantError<'a> {
13 ///Error message describing the reason for failure.
14 #[serde(borrow)]
15 pub error: jacquard_common::CowStr<'a>,
16 ///The did of the subject being verified
17 #[serde(borrow)]
18 pub subject: jacquard_common::types::string::Did<'a>,
19}
20
21impl jacquard_common::IntoStatic for GrantError<'_> {
22 type Output = GrantError<'static>;
23 fn into_static(self) -> Self::Output {
24 GrantError {
25 error: self.error.into_static(),
26 subject: self.subject.into_static(),
27 extra_data: self.extra_data.into_static(),
28 }
29 }
30}
31
32#[jacquard_derive::lexicon]
33#[derive(
34 serde::Serialize,
35 serde::Deserialize,
36 Debug,
37 Clone,
38 PartialEq,
39 Eq,
40 bon::Builder
41)]
42#[serde(rename_all = "camelCase")]
43#[builder(start_fn = new)]
44pub struct GrantVerifications<'a> {
45 ///Array of verification requests to process
46 #[serde(borrow)]
47 pub verifications: Vec<jacquard_common::types::value::Data<'a>>,
48 #[serde(flatten)]
49 #[serde(borrow)]
50 #[builder(default)]
51 pub extra_data: ::std::collections::BTreeMap<
52 ::jacquard_common::smol_str::SmolStr,
53 ::jacquard_common::types::value::Data<'a>,
54 >,
55}
56
57impl jacquard_common::IntoStatic for GrantVerifications<'_> {
58 type Output = GrantVerifications<'static>;
59 fn into_static(self) -> Self::Output {
60 GrantVerifications {
61 verifications: self.verifications.into_static(),
62 extra_data: self.extra_data.into_static(),
63 }
64 }
65}
66
67#[jacquard_derive::lexicon]
68#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
69#[serde(rename_all = "camelCase")]
70pub struct GrantVerificationsOutput<'a> {
71 #[serde(borrow)]
72 pub failed_verifications: Vec<jacquard_common::types::value::Data<'a>>,
73 #[serde(borrow)]
74 pub verifications: Vec<crate::tools_ozone::verification::VerificationView<'a>>,
75}
76
77impl jacquard_common::IntoStatic for GrantVerificationsOutput<'_> {
78 type Output = GrantVerificationsOutput<'static>;
79 fn into_static(self) -> Self::Output {
80 GrantVerificationsOutput {
81 failed_verifications: self.failed_verifications.into_static(),
82 verifications: self.verifications.into_static(),
83 extra_data: self.extra_data.into_static(),
84 }
85 }
86}
87
88impl jacquard_common::types::xrpc::XrpcRequest for GrantVerifications<'_> {
89 const NSID: &'static str = "tools.ozone.verification.grantVerifications";
90 const METHOD: jacquard_common::types::xrpc::XrpcMethod = jacquard_common::types::xrpc::XrpcMethod::Procedure(
91 "application/json",
92 );
93 const OUTPUT_ENCODING: &'static str = "application/json";
94 type Output<'de> = GrantVerificationsOutput<'de>;
95 type Err<'de> = jacquard_common::types::xrpc::GenericError<'de>;
96}
97
98#[jacquard_derive::lexicon]
99#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
100#[serde(rename_all = "camelCase")]
101pub struct VerificationInput<'a> {
102 ///Timestamp for verification record. Defaults to current time when not specified.
103 #[serde(skip_serializing_if = "std::option::Option::is_none")]
104 pub created_at: std::option::Option<jacquard_common::types::string::Datetime>,
105 ///Display name of the subject the verification applies to at the moment of verifying.
106 #[serde(borrow)]
107 pub display_name: jacquard_common::CowStr<'a>,
108 ///Handle of the subject the verification applies to at the moment of verifying.
109 #[serde(borrow)]
110 pub handle: jacquard_common::types::string::Handle<'a>,
111 ///The did of the subject being verified
112 #[serde(borrow)]
113 pub subject: jacquard_common::types::string::Did<'a>,
114}
115
116impl jacquard_common::IntoStatic for VerificationInput<'_> {
117 type Output = VerificationInput<'static>;
118 fn into_static(self) -> Self::Output {
119 VerificationInput {
120 created_at: self.created_at.into_static(),
121 display_name: self.display_name.into_static(),
122 handle: self.handle.into_static(),
123 subject: self.subject.into_static(),
124 extra_data: self.extra_data.into_static(),
125 }
126 }
127}