ic_query/nns/governance/model/
events.rs1use super::NnsGovernanceReportContext;
8#[cfg(any(feature = "nns-host", feature = "canister"))]
9use candid::CandidType;
10use serde::{Deserialize as SerdeDeserialize, Serialize};
11
12#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
19pub struct NnsGovernanceRewardEventReport {
20 #[serde(flatten)]
22 pub context: NnsGovernanceReportContext,
23 pub reward_event: NnsGovernanceRewardEvent,
25}
26
27#[cfg_attr(any(feature = "nns-host", feature = "canister"), derive(CandidType))]
34#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
35pub struct NnsGovernanceRewardEvent {
36 pub rounds_since_last_distribution: Option<u64>,
38 pub day_after_genesis: u64,
40 pub actual_timestamp_seconds: u64,
42 pub total_available_e8s_equivalent: u64,
44 pub latest_round_available_e8s_equivalent: Option<u64>,
46 pub distributed_e8s_equivalent: u64,
48 pub settled_proposals: Vec<NnsGovernanceProposalId>,
50}
51
52#[cfg_attr(any(feature = "nns-host", feature = "canister"), derive(CandidType))]
59#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
60pub struct NnsGovernanceProposalId {
61 pub id: u64,
63}
64
65#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
72pub struct NnsGovernanceMaturityModulationReport {
73 #[serde(flatten)]
75 pub context: NnsGovernanceReportContext,
76 pub maturity_modulation: Option<NnsGovernanceMaturityModulation>,
78}
79
80#[cfg_attr(any(feature = "nns-host", feature = "canister"), derive(CandidType))]
87#[derive(Clone, Debug, Eq, PartialEq, SerdeDeserialize, Serialize)]
88pub struct NnsGovernanceMaturityModulation {
89 pub current_value_permyriad: Option<i32>,
91 pub updated_at_timestamp_seconds: Option<u64>,
93}