ic_query/sns/report/model/reports/
governance.rs1use candid::{CandidType, Deserialize};
8use serde::Serialize;
9
10#[derive(Clone, Debug, Eq, PartialEq, CandidType, Deserialize, Serialize)]
17pub struct SnsGovernanceParameters {
18 pub max_dissolve_delay_seconds: Option<u64>,
19 pub max_dissolve_delay_bonus_percentage: Option<u64>,
20 pub max_followees_per_function: Option<u64>,
21 pub neuron_claimer_permissions: Option<SnsNeuronPermissionList>,
22 pub neuron_minimum_stake_e8s: Option<u64>,
23 pub max_neuron_age_for_age_bonus: Option<u64>,
24 pub initial_voting_period_seconds: Option<u64>,
25 pub neuron_minimum_dissolve_delay_to_vote_seconds: Option<u64>,
26 pub reject_cost_e8s: Option<u64>,
27 pub max_proposals_to_keep_per_action: Option<u32>,
28 pub wait_for_quiet_deadline_increase_seconds: Option<u64>,
29 pub max_number_of_neurons: Option<u64>,
30 pub transaction_fee_e8s: Option<u64>,
31 pub max_number_of_proposals_with_ballots: Option<u64>,
32 pub max_age_bonus_percentage: Option<u64>,
33 pub neuron_grantable_permissions: Option<SnsNeuronPermissionList>,
34 pub voting_rewards_parameters: Option<SnsVotingRewardsParameters>,
35 pub maturity_modulation_disabled: Option<bool>,
36 pub max_number_of_principals_per_neuron: Option<u64>,
37 pub automatically_advance_target_version: Option<bool>,
38 pub custom_proposal_criticality: Option<SnsCustomProposalCriticality>,
39}
40
41#[derive(Clone, Debug, Eq, PartialEq, CandidType, Deserialize, Serialize)]
48pub struct SnsNeuronPermissionList {
49 pub permissions: Vec<i32>,
50}
51
52#[derive(Clone, Debug, Eq, PartialEq, CandidType, Deserialize, Serialize)]
59pub struct SnsVotingRewardsParameters {
60 pub final_reward_rate_basis_points: Option<u64>,
61 pub initial_reward_rate_basis_points: Option<u64>,
62 pub reward_rate_transition_duration_seconds: Option<u64>,
63 pub round_duration_seconds: Option<u64>,
64}
65
66#[derive(Clone, Debug, Eq, PartialEq, CandidType, Deserialize, Serialize)]
73pub struct SnsCustomProposalCriticality {
74 pub additional_critical_native_action_ids: Vec<u64>,
75}