sui_graphql_rpc/types/stake_subsidy.rs
1// Copyright (c) Mysten Labs, Inc.
2// SPDX-License-Identifier: Apache-2.0
3
4use super::big_int::BigInt;
5use async_graphql::*;
6
7/// Parameters that control the distribution of the stake subsidy.
8#[derive(Clone, Debug, PartialEq, Eq, SimpleObject)]
9pub(crate) struct StakeSubsidy {
10 /// SUI set aside for stake subsidies -- reduces over time as stake subsidies are paid out over
11 /// time.
12 pub balance: Option<BigInt>,
13
14 /// Number of times stake subsidies have been distributed subsidies are distributed with other
15 /// staking rewards, at the end of the epoch.
16 pub distribution_counter: Option<u64>,
17
18 /// Amount of stake subsidy deducted from the balance per distribution -- decays over time.
19 pub current_distribution_amount: Option<BigInt>,
20
21 /// Maximum number of stake subsidy distributions that occur with the same distribution amount
22 /// (before the amount is reduced).
23 pub period_length: Option<u64>,
24
25 /// Percentage of the current distribution amount to deduct at the end of the current subsidy
26 /// period, expressed in basis points.
27 pub decrease_rate: Option<u64>,
28}