1// @generated by jacquard-lexicon. DO NOT EDIT.
2//
3// Lexicon: app.bsky.unspecced.getSuggestionsSkeleton
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 GetSuggestionsSkeleton<'a> {
20 #[serde(skip_serializing_if = "std::option::Option::is_none")]
21 #[serde(borrow)]
22 #[builder(into)]
23 pub cursor: std::option::Option<jacquard_common::CowStr<'a>>,
24 ///(default: 50, min: 1, max: 100)
25 #[serde(skip_serializing_if = "std::option::Option::is_none")]
26 pub limit: std::option::Option<i64>,
27 #[serde(skip_serializing_if = "std::option::Option::is_none")]
28 #[serde(borrow)]
29 pub relative_to_did: std::option::Option<jacquard_common::types::string::Did<'a>>,
30 #[serde(skip_serializing_if = "std::option::Option::is_none")]
31 #[serde(borrow)]
32 pub viewer: std::option::Option<jacquard_common::types::string::Did<'a>>,
33}
34
35impl jacquard_common::IntoStatic for GetSuggestionsSkeleton<'_> {
36 type Output = GetSuggestionsSkeleton<'static>;
37 fn into_static(self) -> Self::Output {
38 GetSuggestionsSkeleton {
39 cursor: self.cursor.into_static(),
40 limit: self.limit.into_static(),
41 relative_to_did: self.relative_to_did.into_static(),
42 viewer: self.viewer.into_static(),
43 }
44 }
45}
46
47#[jacquard_derive::lexicon]
48#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
49#[serde(rename_all = "camelCase")]
50pub struct GetSuggestionsSkeletonOutput<'a> {
51 #[serde(borrow)]
52 pub actors: Vec<crate::app_bsky::unspecced::SkeletonSearchActor<'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 ///Snowflake for this recommendation, use when submitting recommendation events.
57 #[serde(skip_serializing_if = "std::option::Option::is_none")]
58 pub rec_id: std::option::Option<i64>,
59 ///DID of the account these suggestions are relative to. If this is returned undefined, suggestions are based on the viewer.
60 #[serde(skip_serializing_if = "std::option::Option::is_none")]
61 #[serde(borrow)]
62 pub relative_to_did: std::option::Option<jacquard_common::types::string::Did<'a>>,
63}
64
65impl jacquard_common::IntoStatic for GetSuggestionsSkeletonOutput<'_> {
66 type Output = GetSuggestionsSkeletonOutput<'static>;
67 fn into_static(self) -> Self::Output {
68 GetSuggestionsSkeletonOutput {
69 actors: self.actors.into_static(),
70 cursor: self.cursor.into_static(),
71 rec_id: self.rec_id.into_static(),
72 relative_to_did: self.relative_to_did.into_static(),
73 extra_data: self.extra_data.into_static(),
74 }
75 }
76}
77
78impl jacquard_common::types::xrpc::XrpcRequest for GetSuggestionsSkeleton<'_> {
79 const NSID: &'static str = "app.bsky.unspecced.getSuggestionsSkeleton";
80 const METHOD: jacquard_common::types::xrpc::XrpcMethod = jacquard_common::types::xrpc::XrpcMethod::Query;
81 const OUTPUT_ENCODING: &'static str = "application/json";
82 type Output<'de> = GetSuggestionsSkeletonOutput<'de>;
83 type Err<'de> = jacquard_common::types::xrpc::GenericError<'de>;
84}