ic_query/sns/report/model/reports/neurons/row.rs
1//! Module: sns::report::model::reports::neurons::row
2//!
3//! Responsibility: SNS neuron row DTO.
4//! Does not own: governance wire conversion, row ordering, or rendering.
5//! Boundary: preserves raw neuron fields used by live reports and snapshots.
6
7use serde::{Deserialize as SerdeDeserialize, Serialize};
8
9///
10/// SnsNeuronRow
11///
12/// Serializable row for one SNS neuron in live reports and cached snapshots.
13///
14
15#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
16pub struct SnsNeuronRow {
17 pub neuron_id: String,
18 pub cached_neuron_stake_e8s: u64,
19 pub maturity_e8s_equivalent: u64,
20 pub staked_maturity_e8s_equivalent: Option<u64>,
21 pub created_timestamp_seconds: u64,
22 pub created_at: String,
23}