// This file is generated by atrium-codegen. DO NOT EDIT.
//!Definitions for the `com.atproto.label.defs` namespace.
///Metadata tag on an atproto resource (eg, repo or record).
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct Label {
///Optionally, CID specifying the specific version of 'uri' resource this label applies to.
#[serde(skip_serializing_if = "Option::is_none")]
pub cid: Option<crate::types::string::Cid>,
///Timestamp when this label was created.
pub cts: crate::types::string::Datetime,
///If true, this is a negation label, overwriting a previous label.
#[serde(skip_serializing_if = "Option::is_none")]
pub neg: Option<bool>,
///DID of the actor who created this label.
pub src: crate::types::string::Did,
///AT URI of the record, repository (account), or other resource that this label applies to.
pub uri: String,
///The short string name of the value or type of this label.
pub val: String,
}
///Metadata tag on an atproto record, published by the author within the record. Note that schemas should use #selfLabels, not #selfLabel.
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct SelfLabel {
///The short string name of the value or type of this label.
pub val: String,
}
///Metadata tags on an atproto record, published by the author within the record.
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct SelfLabels {
pub values: Vec<SelfLabel>,
}