Skip to main content

atrium_api/chat/bsky/group/
list_join_requests.rs

1// @generated - This file is generated by atrium-codegen. DO NOT EDIT.
2//!Definitions for the `chat.bsky.group.listJoinRequests` namespace.
3pub const NSID: &str = "chat.bsky.group.listJoinRequests";
4#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
5#[serde(rename_all = "camelCase")]
6pub struct ParametersData {
7    pub convo_id: String,
8    #[serde(skip_serializing_if = "core::option::Option::is_none")]
9    pub cursor: core::option::Option<String>,
10    #[serde(skip_serializing_if = "core::option::Option::is_none")]
11    pub limit: core::option::Option<crate::types::LimitedNonZeroU8<100u8>>,
12}
13pub type Parameters = crate::types::Object<ParametersData>;
14#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
15#[serde(rename_all = "camelCase")]
16pub struct OutputData {
17    #[serde(skip_serializing_if = "core::option::Option::is_none")]
18    pub cursor: core::option::Option<String>,
19    pub requests: Vec<crate::chat::bsky::group::defs::JoinRequestView>,
20}
21pub type Output = crate::types::Object<OutputData>;
22#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
23#[serde(tag = "error", content = "message")]
24pub enum Error {
25    InvalidConvo(Option<String>),
26    InsufficientRole(Option<String>),
27}
28impl std::fmt::Display for Error {
29    fn fmt(&self, _f: &mut std::fmt::Formatter) -> std::fmt::Result {
30        match self {
31            Error::InvalidConvo(msg) => {
32                write!(_f, "InvalidConvo")?;
33                if let Some(msg) = msg {
34                    write!(_f, ": {msg}")?;
35                }
36            }
37            Error::InsufficientRole(msg) => {
38                write!(_f, "InsufficientRole")?;
39                if let Some(msg) = msg {
40                    write!(_f, ": {msg}")?;
41                }
42            }
43        }
44        Ok(())
45    }
46}