A better Rust ATProto crate
at main 2.9 kB view raw
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: place.atwork.getListings 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8/// A job listing record with metadata for strong references 9#[jacquard_derive::lexicon] 10#[derive( 11 serde::Serialize, 12 serde::Deserialize, 13 Debug, 14 Clone, 15 PartialEq, 16 Eq, 17 jacquard_derive::IntoStatic, 18 bon::Builder 19)] 20#[serde(rename_all = "camelCase")] 21pub struct ListingRecord<'a> { 22 /// CID of the listing record 23 #[serde(borrow)] 24 pub cid: jacquard_common::types::string::Cid<'a>, 25 /// AT-URI of the listing (at://did/place.atwork.listing/rkey) 26 #[serde(borrow)] 27 pub uri: jacquard_common::types::string::AtUri<'a>, 28 /// The full job listing record 29 #[serde(skip_serializing_if = "std::option::Option::is_none")] 30 #[builder(into)] 31 #[serde(borrow)] 32 pub value: Option<crate::place_atwork::listing::Listing<'a>>, 33} 34 35#[derive( 36 serde::Serialize, 37 serde::Deserialize, 38 Debug, 39 Clone, 40 PartialEq, 41 Eq, 42 bon::Builder, 43 jacquard_derive::IntoStatic 44)] 45#[builder(start_fn = new)] 46#[serde(rename_all = "camelCase")] 47pub struct GetListings<'a> { 48 #[serde(skip_serializing_if = "std::option::Option::is_none")] 49 #[serde(borrow)] 50 #[builder(into)] 51 pub identity: std::option::Option<jacquard_common::CowStr<'a>>, 52 #[serde(skip_serializing_if = "std::option::Option::is_none")] 53 #[serde(borrow)] 54 #[builder(into)] 55 pub tag: std::option::Option<jacquard_common::CowStr<'a>>, 56} 57 58#[jacquard_derive::lexicon] 59#[derive( 60 serde::Serialize, 61 serde::Deserialize, 62 Debug, 63 Clone, 64 PartialEq, 65 Eq, 66 jacquard_derive::IntoStatic 67)] 68#[serde(rename_all = "camelCase")] 69pub struct GetListingsOutput<'a> { 70 #[serde(borrow)] 71 pub listings: Vec<jacquard_common::types::value::Data<'a>>, 72} 73 74///Response type for 75///place.atwork.getListings 76pub struct GetListingsResponse; 77impl jacquard_common::xrpc::XrpcResp for GetListingsResponse { 78 const NSID: &'static str = "place.atwork.getListings"; 79 const ENCODING: &'static str = "application/json"; 80 type Output<'de> = GetListingsOutput<'de>; 81 type Err<'de> = jacquard_common::xrpc::GenericError<'de>; 82} 83 84impl<'a> jacquard_common::xrpc::XrpcRequest for GetListings<'a> { 85 const NSID: &'static str = "place.atwork.getListings"; 86 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 87 type Response = GetListingsResponse; 88} 89 90///Endpoint type for 91///place.atwork.getListings 92pub struct GetListingsRequest; 93impl jacquard_common::xrpc::XrpcEndpoint for GetListingsRequest { 94 const PATH: &'static str = "/xrpc/place.atwork.getListings"; 95 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 96 type Request<'de> = GetListings<'de>; 97 type Response = GetListingsResponse; 98}