#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RecordData {
pub created_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub labels: core::option::Option<crate::types::Union<RecordLabelsRefs>>,
pub policies: crate::app::bsky::labeler::defs::LabelerPolicies,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub reason_types: core::option::Option<Vec<crate::com::atproto::moderation::defs::ReasonType>>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub subject_collections: core::option::Option<Vec<crate::types::string::Nsid>>,
#[serde(skip_serializing_if = "core::option::Option::is_none")]
pub subject_types:
core::option::Option<Vec<crate::com::atproto::moderation::defs::SubjectType>>,
}
pub type Record = crate::types::Object<RecordData>;
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum RecordLabelsRefs {
#[serde(rename = "com.atproto.label.defs#selfLabels")]
ComAtprotoLabelDefsSelfLabels(Box<crate::com::atproto::label::defs::SelfLabels>),
}