atrium_api/app/bsky/feed/
postgate.rs

1// @generated - This file is generated by atrium-codegen. DO NOT EDIT.
2//!Definitions for the `app.bsky.feed.postgate` namespace.
3#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
4#[serde(rename_all = "camelCase")]
5pub struct RecordData {
6    pub created_at: crate::types::string::Datetime,
7    ///List of AT-URIs embedding this post that the author has detached from.
8    #[serde(skip_serializing_if = "core::option::Option::is_none")]
9    pub detached_embedding_uris: core::option::Option<Vec<String>>,
10    ///List of rules defining who can embed this post. If value is an empty array or is undefined, no particular rules apply and anyone can embed.
11    #[serde(skip_serializing_if = "core::option::Option::is_none")]
12    pub embedding_rules: core::option::Option<Vec<crate::types::Union<RecordEmbeddingRulesItem>>>,
13    ///Reference (AT-URI) to the post record.
14    pub post: String,
15}
16pub type Record = crate::types::Object<RecordData>;
17///Disables embedding of this post.
18#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
19#[serde(rename_all = "camelCase")]
20pub struct DisableRuleData {}
21pub type DisableRule = crate::types::Object<DisableRuleData>;
22#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
23#[serde(tag = "$type")]
24pub enum RecordEmbeddingRulesItem {
25    #[serde(rename = "app.bsky.feed.postgate#disableRule")]
26    DisableRule(Box<DisableRule>),
27}