#![allow(
missing_docs,
clippy::doc_markdown,
clippy::struct_excessive_bools,
clippy::derive_partial_eq_without_eq,
clippy::large_enum_variant
)]
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct DeliberationOutcome {
#[serde(default, skip_serializing_if = "Option::is_none")]
pub adopted: Option<Vec<crate::generated::dev::idiolect::defs::StrongRecordRef>>,
pub computed_at: idiolect_records::Datetime,
pub deliberation: crate::generated::dev::idiolect::defs::StrongRecordRef,
pub occurred_at: idiolect_records::Datetime,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub stance_vocab: Option<crate::generated::dev::idiolect::defs::VocabRef>,
pub statement_tallies: Vec<StatementTally>,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub tool: Option<crate::generated::dev::idiolect::defs::Tool>,
}
impl crate::Record for DeliberationOutcome {
const NSID: &'static str = "dev.idiolect.deliberationOutcome";
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct StanceCount {
pub count: i64,
pub stance: String,
}
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct StatementTally {
pub counts: Vec<StanceCount>,
pub statement: crate::generated::dev::idiolect::defs::StrongRecordRef,
#[serde(default, skip_serializing_if = "Option::is_none")]
pub weighted_counts: Option<Vec<StanceCount>>,
}