1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.bsky.feed.getRepostedBy
4//
5// This file was automatically generated from Lexicon schemas.
6// Any manual changes will be overwritten on the next regeneration.
7
8#[derive(
9 serde::Serialize,
10 serde::Deserialize,
11 Debug,
12 Clone,
13 PartialEq,
14 Eq,
15 bon::Builder
16)]
17#[builder(start_fn = new)]
18#[serde(rename_all = "camelCase")]
19pub struct GetRepostedBy<'a> {
20 #[serde(skip_serializing_if = "std::option::Option::is_none")]
21 #[serde(borrow)]
22 pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>,
23 #[serde(skip_serializing_if = "std::option::Option::is_none")]
24 #[serde(borrow)]
25 #[builder(into)]
26 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
27 ///(default: 50, min: 1, max: 100)
28 #[serde(skip_serializing_if = "std::option::Option::is_none")]
29 pub limit: std::option::Option<i64>,
30 #[serde(borrow)]
31 pub uri: jacquard_common::types::string::AtUri<'a>,
32}
33
34impl jacquard_common::IntoStatic for GetRepostedBy<'_> {
35 type Output = GetRepostedBy<'static>;
36 fn into_static(self) -> Self::Output {
37 GetRepostedBy {
38 cid: self.cid.into_static(),
39 cursor: self.cursor.into_static(),
40 limit: self.limit.into_static(),
41 uri: self.uri.into_static(),
42 }
43 }
44}
45
46#[jacquard_derive::lexicon]
47#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
48#[serde(rename_all = "camelCase")]
49pub struct GetRepostedByOutput<'a> {
50 #[serde(skip_serializing_if = "std::option::Option::is_none")]
51 #[serde(borrow)]
52 pub cid: std::option::Option<jacquard_common::types::string::Cid<'a>>,
53 #[serde(skip_serializing_if = "std::option::Option::is_none")]
54 #[serde(borrow)]
55 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
56 #[serde(borrow)]
57 pub reposted_by: Vec<crate::app_bsky::actor::ProfileView<'a>>,
58 #[serde(borrow)]
59 pub uri: jacquard_common::types::string::AtUri<'a>,
60}
61
62impl jacquard_common::IntoStatic for GetRepostedByOutput<'_> {
63 type Output = GetRepostedByOutput<'static>;
64 fn into_static(self) -> Self::Output {
65 GetRepostedByOutput {
66 cid: self.cid.into_static(),
67 cursor: self.cursor.into_static(),
68 reposted_by: self.reposted_by.into_static(),
69 uri: self.uri.into_static(),
70 extra_data: self.extra_data.into_static(),
71 }
72 }
73}
74
75impl jacquard_common::types::xrpc::XrpcRequest for GetRepostedBy<'_> {
76 const NSID: &'static str = "app.bsky.feed.getRepostedBy";
77 const METHOD: jacquard_common::types::xrpc::XrpcMethod = jacquard_common::types::xrpc::XrpcMethod::Query;
78 const OUTPUT_ENCODING: &'static str = "application/json";
79 type Output<'de> = GetRepostedByOutput<'de>;
80 type Err<'de> = jacquard_common::types::xrpc::GenericError<'de>;
81}