// @generated by jacquard-lexicon. DO NOT EDIT. // // Lexicon: app.bsky.feed.threadgate // // This file was automatically generated from Lexicon schemas. // Any manual changes will be overwritten on the next regeneration. ///Allow replies from actors who follow you. #[jacquard_derive::lexicon] #[derive( serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq, jacquard_derive::IntoStatic )] #[serde(rename_all = "camelCase")] pub struct FollowerRule<'a> {} ///Allow replies from actors you follow. #[jacquard_derive::lexicon] #[derive( serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq, jacquard_derive::IntoStatic )] #[serde(rename_all = "camelCase")] pub struct FollowingRule<'a> {} ///Allow replies from actors on a list. #[jacquard_derive::lexicon] #[derive( serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq, jacquard_derive::IntoStatic )] #[serde(rename_all = "camelCase")] pub struct ListRule<'a> { #[serde(borrow)] pub list: jacquard_common::types::string::AtUri<'a>, } ///Record defining interaction gating rules for a thread (aka, reply controls). The record key (rkey) of the threadgate record must match the record key of the thread's root post, and that record must be in the same repository. #[jacquard_derive::lexicon] #[derive( serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq, jacquard_derive::IntoStatic )] #[serde(rename_all = "camelCase")] pub struct Threadgate<'a> { ///List of rules defining who can reply to this post. If value is an empty array, no one can reply. If value is undefined, anyone can reply. #[serde(skip_serializing_if = "std::option::Option::is_none")] #[serde(borrow)] pub allow: std::option::Option>>, pub created_at: jacquard_common::types::string::Datetime, ///List of hidden reply URIs. #[serde(skip_serializing_if = "std::option::Option::is_none")] #[serde(borrow)] pub hidden_replies: std::option::Option< Vec>, >, ///Reference (AT-URI) to the post record. #[serde(borrow)] pub post: jacquard_common::types::string::AtUri<'a>, } impl jacquard_common::types::collection::Collection for Threadgate<'_> { const NSID: &'static str = "app.bsky.feed.threadgate"; } ///Allow replies from actors mentioned in your post. #[jacquard_derive::lexicon] #[derive( serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq, jacquard_derive::IntoStatic )] #[serde(rename_all = "camelCase")] pub struct MentionRule<'a> {}