A better Rust ATProto crate
at oauth 6.4 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: app.bsky.labeler.defs 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8pub mod get_services; 9pub mod service; 10 11#[jacquard_derive::lexicon] 12#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 13#[serde(rename_all = "camelCase")] 14pub struct LabelerPolicies<'a> { 15 ///Label values created by this labeler and scoped exclusively to it. Labels defined here will override global label definitions for this labeler. 16 #[serde(skip_serializing_if = "std::option::Option::is_none")] 17 #[serde(borrow)] 18 pub label_value_definitions: std::option::Option< 19 Vec<crate::com_atproto::label::LabelValueDefinition<'a>>, 20 >, 21 ///The label values which this labeler publishes. May include global or custom labels. 22 #[serde(borrow)] 23 pub label_values: Vec<crate::com_atproto::label::LabelValue<'a>>, 24} 25 26impl jacquard_common::IntoStatic for LabelerPolicies<'_> { 27 type Output = LabelerPolicies<'static>; 28 fn into_static(self) -> Self::Output { 29 LabelerPolicies { 30 label_value_definitions: self.label_value_definitions.into_static(), 31 label_values: self.label_values.into_static(), 32 extra_data: self.extra_data.into_static(), 33 } 34 } 35} 36 37#[jacquard_derive::lexicon] 38#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 39#[serde(rename_all = "camelCase")] 40pub struct LabelerView<'a> { 41 #[serde(borrow)] 42 pub cid: jacquard_common::types::string::Cid<'a>, 43 #[serde(borrow)] 44 pub creator: crate::app_bsky::actor::ProfileView<'a>, 45 pub indexed_at: jacquard_common::types::string::Datetime, 46 #[serde(skip_serializing_if = "std::option::Option::is_none")] 47 #[serde(borrow)] 48 pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>, 49 #[serde(skip_serializing_if = "std::option::Option::is_none")] 50 pub like_count: std::option::Option<i64>, 51 #[serde(borrow)] 52 pub uri: jacquard_common::types::string::AtUri<'a>, 53 #[serde(skip_serializing_if = "std::option::Option::is_none")] 54 #[serde(borrow)] 55 pub viewer: std::option::Option<crate::app_bsky::labeler::LabelerViewerState<'a>>, 56} 57 58impl jacquard_common::IntoStatic for LabelerView<'_> { 59 type Output = LabelerView<'static>; 60 fn into_static(self) -> Self::Output { 61 LabelerView { 62 cid: self.cid.into_static(), 63 creator: self.creator.into_static(), 64 indexed_at: self.indexed_at.into_static(), 65 labels: self.labels.into_static(), 66 like_count: self.like_count.into_static(), 67 uri: self.uri.into_static(), 68 viewer: self.viewer.into_static(), 69 extra_data: self.extra_data.into_static(), 70 } 71 } 72} 73 74#[jacquard_derive::lexicon] 75#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 76#[serde(rename_all = "camelCase")] 77pub struct LabelerViewDetailed<'a> { 78 #[serde(borrow)] 79 pub cid: jacquard_common::types::string::Cid<'a>, 80 #[serde(borrow)] 81 pub creator: crate::app_bsky::actor::ProfileView<'a>, 82 pub indexed_at: jacquard_common::types::string::Datetime, 83 #[serde(skip_serializing_if = "std::option::Option::is_none")] 84 #[serde(borrow)] 85 pub labels: std::option::Option<Vec<crate::com_atproto::label::Label<'a>>>, 86 #[serde(skip_serializing_if = "std::option::Option::is_none")] 87 pub like_count: std::option::Option<i64>, 88 #[serde(borrow)] 89 pub policies: crate::app_bsky::labeler::LabelerPolicies<'a>, 90 ///The set of report reason 'codes' which are in-scope for this service to review and action. These usually align to policy categories. If not defined (distinct from empty array), all reason types are allowed. 91 #[serde(skip_serializing_if = "std::option::Option::is_none")] 92 #[serde(borrow)] 93 pub reason_types: std::option::Option< 94 Vec<crate::com_atproto::moderation::ReasonType<'a>>, 95 >, 96 ///Set of record types (collection NSIDs) which can be reported to this service. If not defined (distinct from empty array), default is any record type. 97 #[serde(skip_serializing_if = "std::option::Option::is_none")] 98 #[serde(borrow)] 99 pub subject_collections: std::option::Option< 100 Vec<jacquard_common::types::string::Nsid<'a>>, 101 >, 102 ///The set of subject types (account, record, etc) this service accepts reports on. 103 #[serde(skip_serializing_if = "std::option::Option::is_none")] 104 #[serde(borrow)] 105 pub subject_types: std::option::Option< 106 Vec<crate::com_atproto::moderation::SubjectType<'a>>, 107 >, 108 #[serde(borrow)] 109 pub uri: jacquard_common::types::string::AtUri<'a>, 110 #[serde(skip_serializing_if = "std::option::Option::is_none")] 111 #[serde(borrow)] 112 pub viewer: std::option::Option<crate::app_bsky::labeler::LabelerViewerState<'a>>, 113} 114 115impl jacquard_common::IntoStatic for LabelerViewDetailed<'_> { 116 type Output = LabelerViewDetailed<'static>; 117 fn into_static(self) -> Self::Output { 118 LabelerViewDetailed { 119 cid: self.cid.into_static(), 120 creator: self.creator.into_static(), 121 indexed_at: self.indexed_at.into_static(), 122 labels: self.labels.into_static(), 123 like_count: self.like_count.into_static(), 124 policies: self.policies.into_static(), 125 reason_types: self.reason_types.into_static(), 126 subject_collections: self.subject_collections.into_static(), 127 subject_types: self.subject_types.into_static(), 128 uri: self.uri.into_static(), 129 viewer: self.viewer.into_static(), 130 extra_data: self.extra_data.into_static(), 131 } 132 } 133} 134 135#[jacquard_derive::lexicon] 136#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)] 137#[serde(rename_all = "camelCase")] 138pub struct LabelerViewerState<'a> { 139 #[serde(skip_serializing_if = "std::option::Option::is_none")] 140 #[serde(borrow)] 141 pub like: std::option::Option<jacquard_common::types::string::AtUri<'a>>, 142} 143 144impl jacquard_common::IntoStatic for LabelerViewerState<'_> { 145 type Output = LabelerViewerState<'static>; 146 fn into_static(self) -> Self::Output { 147 LabelerViewerState { 148 like: self.like.into_static(), 149 extra_data: self.extra_data.into_static(), 150 } 151 } 152}