1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: com.atproto.identity.signPlcOperation
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[jacquard_derive::lexicon]
9#[derive(
10 serde::Serialize,
11 serde::Deserialize,
12 Debug,
13 Clone,
14 PartialEq,
15 Eq,
16 bon::Builder,
17 jacquard_derive::IntoStatic
18)]
19#[serde(rename_all = "camelCase")]
20#[builder(start_fn = new)]
21pub struct SignPlcOperation<'a> {
22 #[serde(skip_serializing_if = "std::option::Option::is_none")]
23 #[serde(borrow)]
24 pub also_known_as: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
25 #[serde(skip_serializing_if = "std::option::Option::is_none")]
26 #[serde(borrow)]
27 pub rotation_keys: std::option::Option<Vec<jacquard_common::CowStr<'a>>>,
28 #[serde(skip_serializing_if = "std::option::Option::is_none")]
29 #[serde(borrow)]
30 pub services: std::option::Option<jacquard_common::types::value::Data<'a>>,
31 ///A token received through com.atproto.identity.requestPlcOperationSignature
32 #[serde(skip_serializing_if = "std::option::Option::is_none")]
33 #[serde(borrow)]
34 #[builder(into)]
35 pub token: std::option::Option<jacquard_common::CowStr<'a>>,
36 #[serde(skip_serializing_if = "std::option::Option::is_none")]
37 #[serde(borrow)]
38 pub verification_methods: std::option::Option<
39 jacquard_common::types::value::Data<'a>,
40 >,
41 #[serde(flatten)]
42 #[serde(borrow)]
43 #[builder(default)]
44 pub extra_data: ::std::collections::BTreeMap<
45 ::jacquard_common::smol_str::SmolStr,
46 ::jacquard_common::types::value::Data<'a>,
47 >,
48}
49
50#[jacquard_derive::lexicon]
51#[derive(
52 serde::Serialize,
53 serde::Deserialize,
54 Debug,
55 Clone,
56 PartialEq,
57 Eq,
58 jacquard_derive::IntoStatic
59)]
60#[serde(rename_all = "camelCase")]
61pub struct SignPlcOperationOutput<'a> {
62 ///A signed DID PLC operation.
63 #[serde(borrow)]
64 pub operation: jacquard_common::types::value::Data<'a>,
65}
66
67///Response type for
68///com.atproto.identity.signPlcOperation
69pub struct SignPlcOperationResponse;
70impl jacquard_common::xrpc::XrpcResp for SignPlcOperationResponse {
71 const NSID: &'static str = "com.atproto.identity.signPlcOperation";
72 const ENCODING: &'static str = "application/json";
73 type Output<'de> = SignPlcOperationOutput<'de>;
74 type Err<'de> = jacquard_common::xrpc::GenericError<'de>;
75}
76
77impl<'de> jacquard_common::xrpc::XrpcRequest<'de> for SignPlcOperation<'de> {
78 const NSID: &'static str = "com.atproto.identity.signPlcOperation";
79 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
80 "application/json",
81 );
82 type Response = SignPlcOperationResponse;
83}
84
85///Endpoint type for
86///com.atproto.identity.signPlcOperation
87pub struct SignPlcOperationRequest;
88impl jacquard_common::xrpc::XrpcEndpoint for SignPlcOperationRequest {
89 const PATH: &'static str = "/xrpc/com.atproto.identity.signPlcOperation";
90 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Procedure(
91 "application/json",
92 );
93 type Request<'de> = SignPlcOperation<'de>;
94 type Response = SignPlcOperationResponse;
95}