#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct AccountView {
pub did: crate::types::string::Did,
#[serde(skip_serializing_if = "Option::is_none")]
pub email: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub email_confirmed_at: Option<crate::types::string::Datetime>,
pub handle: crate::types::string::Handle,
pub indexed_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "Option::is_none")]
pub invite_note: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invited_by: Option<crate::com::atproto::server::defs::InviteCode>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invites: Option<Vec<crate::com::atproto::server::defs::InviteCode>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invites_disabled: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub related_records: Option<Vec<crate::records::Record>>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct BlobView {
pub cid: crate::types::string::Cid,
pub created_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "Option::is_none")]
pub details: Option<BlobViewDetailsEnum>,
pub mime_type: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub moderation: Option<Moderation>,
pub size: i64,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct CommunicationTemplateView {
pub content_markdown: String,
pub created_at: crate::types::string::Datetime,
pub disabled: bool,
pub id: String,
pub last_updated_by: crate::types::string::Did,
pub name: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject: Option<String>,
pub updated_at: crate::types::string::Datetime,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ImageDetails {
pub height: i64,
pub width: i64,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventAcknowledge {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventComment {
pub comment: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub sticky: Option<bool>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventEmail {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub subject_line: String,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventEscalate {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventLabel {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub create_label_vals: Vec<String>,
pub negate_label_vals: Vec<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventMute {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub duration_in_hours: i64,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventReport {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub report_type: crate::com::atproto::moderation::defs::ReasonType,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventResolveAppeal {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventReverseTakedown {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventTag {
pub add: Vec<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub remove: Vec<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventTakedown {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub duration_in_hours: Option<i64>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventUnmute {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventView {
pub created_at: crate::types::string::Datetime,
pub created_by: crate::types::string::Did,
#[serde(skip_serializing_if = "Option::is_none")]
pub creator_handle: Option<String>,
pub event: ModEventViewEventEnum,
pub id: i64,
pub subject: ModEventViewSubjectEnum,
pub subject_blob_cids: Vec<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_handle: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModEventViewDetail {
pub created_at: crate::types::string::Datetime,
pub created_by: crate::types::string::Did,
pub event: ModEventViewDetailEventEnum,
pub id: i64,
pub subject: ModEventViewDetailSubjectEnum,
pub subject_blobs: Vec<BlobView>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct Moderation {
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_status: Option<SubjectStatusView>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ModerationDetail {
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_status: Option<SubjectStatusView>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RecordView {
pub blob_cids: Vec<crate::types::string::Cid>,
pub cid: crate::types::string::Cid,
pub indexed_at: crate::types::string::Datetime,
pub moderation: Moderation,
pub repo: RepoView,
pub uri: String,
pub value: crate::records::Record,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RecordViewDetail {
pub blobs: Vec<BlobView>,
pub cid: crate::types::string::Cid,
pub indexed_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<Vec<crate::com::atproto::label::defs::Label>>,
pub moderation: ModerationDetail,
pub repo: RepoView,
pub uri: String,
pub value: crate::records::Record,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RecordViewNotFound {
pub uri: String,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RepoBlobRef {
pub cid: crate::types::string::Cid,
pub did: crate::types::string::Did,
#[serde(skip_serializing_if = "Option::is_none")]
pub record_uri: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RepoRef {
pub did: crate::types::string::Did,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RepoView {
pub did: crate::types::string::Did,
#[serde(skip_serializing_if = "Option::is_none")]
pub email: Option<String>,
pub handle: crate::types::string::Handle,
pub indexed_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "Option::is_none")]
pub invite_note: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invited_by: Option<crate::com::atproto::server::defs::InviteCode>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invites_disabled: Option<bool>,
pub moderation: Moderation,
pub related_records: Vec<crate::records::Record>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RepoViewDetail {
pub did: crate::types::string::Did,
#[serde(skip_serializing_if = "Option::is_none")]
pub email: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub email_confirmed_at: Option<crate::types::string::Datetime>,
pub handle: crate::types::string::Handle,
pub indexed_at: crate::types::string::Datetime,
#[serde(skip_serializing_if = "Option::is_none")]
pub invite_note: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invited_by: Option<crate::com::atproto::server::defs::InviteCode>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invites: Option<Vec<crate::com::atproto::server::defs::InviteCode>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub invites_disabled: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub labels: Option<Vec<crate::com::atproto::label::defs::Label>>,
pub moderation: ModerationDetail,
pub related_records: Vec<crate::records::Record>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct RepoViewNotFound {
pub did: crate::types::string::Did,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ReportView {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub created_at: crate::types::string::Datetime,
pub id: i64,
pub reason_type: crate::com::atproto::moderation::defs::ReasonType,
pub reported_by: crate::types::string::Did,
pub resolved_by_action_ids: Vec<i64>,
pub subject: ReportViewSubjectEnum,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_repo_handle: Option<String>,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct ReportViewDetail {
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub created_at: crate::types::string::Datetime,
pub id: i64,
pub reason_type: crate::com::atproto::moderation::defs::ReasonType,
pub reported_by: crate::types::string::Did,
pub resolved_by_actions: Vec<crate::com::atproto::admin::defs::ModEventView>,
pub subject: ReportViewDetailSubjectEnum,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_status: Option<crate::com::atproto::admin::defs::SubjectStatusView>,
}
pub struct ReviewClosed;
pub struct ReviewEscalated;
pub struct ReviewOpen;
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct StatusAttr {
pub applied: bool,
#[serde(skip_serializing_if = "Option::is_none")]
pub r#ref: Option<String>,
}
pub type SubjectReviewState = String;
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct SubjectStatusView {
#[serde(skip_serializing_if = "Option::is_none")]
pub appealed: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub comment: Option<String>,
pub created_at: crate::types::string::Datetime,
pub id: i64,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_appealed_at: Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_reported_at: Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_reviewed_at: Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_reviewed_by: Option<crate::types::string::Did>,
#[serde(skip_serializing_if = "Option::is_none")]
pub mute_until: Option<crate::types::string::Datetime>,
pub review_state: SubjectReviewState,
pub subject: SubjectStatusViewSubjectEnum,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_blob_cids: Option<Vec<crate::types::string::Cid>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub subject_repo_handle: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub suspend_until: Option<crate::types::string::Datetime>,
#[serde(skip_serializing_if = "Option::is_none")]
pub tags: Option<Vec<String>>,
#[serde(skip_serializing_if = "Option::is_none")]
pub takendown: Option<bool>,
pub updated_at: crate::types::string::Datetime,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(rename_all = "camelCase")]
pub struct VideoDetails {
pub height: i64,
pub length: i64,
pub width: i64,
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum BlobViewDetailsEnum {
#[serde(rename = "com.atproto.admin.defs#imageDetails")]
ImageDetails(Box<ImageDetails>),
#[serde(rename = "com.atproto.admin.defs#videoDetails")]
VideoDetails(Box<VideoDetails>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ModEventViewDetailEventEnum {
#[serde(rename = "com.atproto.admin.defs#modEventTakedown")]
ModEventTakedown(Box<ModEventTakedown>),
#[serde(rename = "com.atproto.admin.defs#modEventReverseTakedown")]
ModEventReverseTakedown(Box<ModEventReverseTakedown>),
#[serde(rename = "com.atproto.admin.defs#modEventComment")]
ModEventComment(Box<ModEventComment>),
#[serde(rename = "com.atproto.admin.defs#modEventReport")]
ModEventReport(Box<ModEventReport>),
#[serde(rename = "com.atproto.admin.defs#modEventLabel")]
ModEventLabel(Box<ModEventLabel>),
#[serde(rename = "com.atproto.admin.defs#modEventAcknowledge")]
ModEventAcknowledge(Box<ModEventAcknowledge>),
#[serde(rename = "com.atproto.admin.defs#modEventEscalate")]
ModEventEscalate(Box<ModEventEscalate>),
#[serde(rename = "com.atproto.admin.defs#modEventMute")]
ModEventMute(Box<ModEventMute>),
#[serde(rename = "com.atproto.admin.defs#modEventEmail")]
ModEventEmail(Box<ModEventEmail>),
#[serde(rename = "com.atproto.admin.defs#modEventResolveAppeal")]
ModEventResolveAppeal(Box<ModEventResolveAppeal>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ModEventViewDetailSubjectEnum {
#[serde(rename = "com.atproto.admin.defs#repoView")]
RepoView(Box<RepoView>),
#[serde(rename = "com.atproto.admin.defs#repoViewNotFound")]
RepoViewNotFound(Box<RepoViewNotFound>),
#[serde(rename = "com.atproto.admin.defs#recordView")]
RecordView(Box<RecordView>),
#[serde(rename = "com.atproto.admin.defs#recordViewNotFound")]
RecordViewNotFound(Box<RecordViewNotFound>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ModEventViewEventEnum {
#[serde(rename = "com.atproto.admin.defs#modEventTakedown")]
ModEventTakedown(Box<ModEventTakedown>),
#[serde(rename = "com.atproto.admin.defs#modEventReverseTakedown")]
ModEventReverseTakedown(Box<ModEventReverseTakedown>),
#[serde(rename = "com.atproto.admin.defs#modEventComment")]
ModEventComment(Box<ModEventComment>),
#[serde(rename = "com.atproto.admin.defs#modEventReport")]
ModEventReport(Box<ModEventReport>),
#[serde(rename = "com.atproto.admin.defs#modEventLabel")]
ModEventLabel(Box<ModEventLabel>),
#[serde(rename = "com.atproto.admin.defs#modEventAcknowledge")]
ModEventAcknowledge(Box<ModEventAcknowledge>),
#[serde(rename = "com.atproto.admin.defs#modEventEscalate")]
ModEventEscalate(Box<ModEventEscalate>),
#[serde(rename = "com.atproto.admin.defs#modEventMute")]
ModEventMute(Box<ModEventMute>),
#[serde(rename = "com.atproto.admin.defs#modEventEmail")]
ModEventEmail(Box<ModEventEmail>),
#[serde(rename = "com.atproto.admin.defs#modEventResolveAppeal")]
ModEventResolveAppeal(Box<ModEventResolveAppeal>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ModEventViewSubjectEnum {
#[serde(rename = "com.atproto.admin.defs#repoRef")]
RepoRef(Box<RepoRef>),
#[serde(rename = "com.atproto.repo.strongRef")]
ComAtprotoRepoStrongRefMain(Box<crate::com::atproto::repo::strong_ref::Main>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ReportViewDetailSubjectEnum {
#[serde(rename = "com.atproto.admin.defs#repoView")]
RepoView(Box<RepoView>),
#[serde(rename = "com.atproto.admin.defs#repoViewNotFound")]
RepoViewNotFound(Box<RepoViewNotFound>),
#[serde(rename = "com.atproto.admin.defs#recordView")]
RecordView(Box<RecordView>),
#[serde(rename = "com.atproto.admin.defs#recordViewNotFound")]
RecordViewNotFound(Box<RecordViewNotFound>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum ReportViewSubjectEnum {
#[serde(rename = "com.atproto.admin.defs#repoRef")]
RepoRef(Box<RepoRef>),
#[serde(rename = "com.atproto.repo.strongRef")]
ComAtprotoRepoStrongRefMain(Box<crate::com::atproto::repo::strong_ref::Main>),
}
#[derive(serde::Serialize, serde::Deserialize, Debug, Clone, PartialEq, Eq)]
#[serde(tag = "$type")]
pub enum SubjectStatusViewSubjectEnum {
#[serde(rename = "com.atproto.admin.defs#repoRef")]
RepoRef(Box<RepoRef>),
#[serde(rename = "com.atproto.repo.strongRef")]
ComAtprotoRepoStrongRefMain(Box<crate::com::atproto::repo::strong_ref::Main>),
}