# proto - inflation

# Table of Contents

Top

# nibiru/inflation/v1/event.proto

# EventInflationDistribution

EventInflationDistribution: Emitted when NIBI tokens are minted on the network based on Nibiru's inflation schedule.

Field Type Label Description
staking_rewards cosmos.base.v1beta1.Coin
strategic_reserve cosmos.base.v1beta1.Coin
community_pool cosmos.base.v1beta1.Coin

Top

# nibiru/inflation/v1/genesis.proto

# GenesisState

GenesisState defines the inflation module's genesis state.

Field Type Label Description
params Params params defines all the parameters of the module.
period uint64 period is the amount of past periods, based on the epochs per period param
skipped_epochs uint64 skipped_epochs is the number of epochs that have passed while inflation is disabled

# Params

Params holds parameters for the inflation module.

Field Type Label Description
inflation_enabled bool inflation_enabled is the parameter that enables inflation and halts increasing the skipped_epochs
polynomial_factors string repeated polynomial_factors takes in the variables to calculate polynomial inflation
inflation_distribution InflationDistribution inflation_distribution of the minted denom
epochs_per_period uint64 epochs_per_period is the number of epochs that must pass before a new period is created
periods_per_year uint64 periods_per_year is the number of periods that occur in a year
max_period uint64 max_period is the maximum number of periods that have inflation being paid off. After this period, inflation will be disabled.

Top

# nibiru/inflation/v1/inflation.proto

# InflationDistribution

InflationDistribution defines the distribution in which inflation is allocated through minting on each epoch (staking, community, strategic). It excludes the team vesting distribution.

Field Type Label Description
staking_rewards string staking_rewards defines the proportion of the minted_denom that is to be allocated as staking rewards
community_pool string community_pool defines the proportion of the minted_denom that is to be allocated to the community pool
strategic_reserves string strategic_reserves defines the proportion of the minted_denom that is to be allocated to the strategic reserves module address

Top

# nibiru/inflation/v1/query.proto

# QueryCirculatingSupplyRequest

QueryCirculatingSupplyRequest is the request type for the Query/CirculatingSupply RPC method.

# QueryCirculatingSupplyResponse

QueryCirculatingSupplyResponse is the response type for the Query/CirculatingSupply RPC method.

Field Type Label Description
circulating_supply cosmos.base.v1beta1.DecCoin circulating_supply is the total amount of coins in circulation

# QueryEpochMintProvisionRequest

QueryEpochMintProvisionRequest is the request type for the Query/EpochMintProvision RPC method.

# QueryEpochMintProvisionResponse

QueryEpochMintProvisionResponse is the response type for the Query/EpochMintProvision RPC method.

Field Type Label Description
epoch_mint_provision cosmos.base.v1beta1.DecCoin epoch_mint_provision is the current minting per epoch provision value.

# QueryInflationRateRequest

QueryInflationRateRequest is the request type for the Query/InflationRate RPC method.

# QueryInflationRateResponse

QueryInflationRateResponse is the response type for the Query/InflationRate RPC method.

Field Type Label Description
inflation_rate string inflation_rate by which the total supply increases within one period

# QueryParamsRequest

QueryParamsRequest is the request type for the Query/Params RPC method.

# QueryParamsResponse

QueryParamsResponse is the response type for the Query/Params RPC method.

Field Type Label Description
params Params params defines the parameters of the module.

# QueryPeriodRequest

QueryPeriodRequest is the request type for the Query/Period RPC method.

# QueryPeriodResponse

QueryPeriodResponse is the response type for the Query/Period RPC method.

Field Type Label Description
period uint64 period is the current minting per epoch provision value.

# QuerySkippedEpochsRequest

QuerySkippedEpochsRequest is the request type for the Query/SkippedEpochs RPC method.

# QuerySkippedEpochsResponse

QuerySkippedEpochsResponse is the response type for the Query/SkippedEpochs RPC method.

Field Type Label Description
skipped_epochs uint64 skipped_epochs is the number of epochs that the inflation module has been disabled.

# Query

Query provides defines the gRPC querier service.

Method Name Request Type Response Type Description
Period QueryPeriodRequest QueryPeriodResponse Period retrieves current period.
EpochMintProvision QueryEpochMintProvisionRequest QueryEpochMintProvisionResponse EpochMintProvision retrieves current minting epoch provision value.
SkippedEpochs QuerySkippedEpochsRequest QuerySkippedEpochsResponse SkippedEpochs retrieves the total number of skipped epochs.
CirculatingSupply QueryCirculatingSupplyRequest QueryCirculatingSupplyResponse CirculatingSupply retrieves the total number of tokens that are in circulation (i.e. excluding unvested tokens).
InflationRate QueryInflationRateRequest QueryInflationRateResponse InflationRate retrieves the inflation rate of the current period.
Params QueryParamsRequest QueryParamsResponse Params retrieves the total set of minting parameters.

# Scalar Value Types

.proto Type Notes C++ Java Python Go C# PHP Ruby
double double double float float64 double float Float
float float float float float32 float float Float
int32 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint32 instead. int32 int int int32 int integer Bignum or Fixnum (as required)
int64 Uses variable-length encoding. Inefficient for encoding negative numbers – if your field is likely to have negative values, use sint64 instead. int64 long int/long int64 long integer/string Bignum
uint32 Uses variable-length encoding. uint32 int int/long uint32 uint integer Bignum or Fixnum (as required)
uint64 Uses variable-length encoding. uint64 long int/long uint64 ulong integer/string Bignum or Fixnum (as required)
sint32 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int32s. int32 int int int32 int integer Bignum or Fixnum (as required)
sint64 Uses variable-length encoding. Signed int value. These more efficiently encode negative numbers than regular int64s. int64 long int/long int64 long integer/string Bignum
fixed32 Always four bytes. More efficient than uint32 if values are often greater than 2^28. uint32 int int uint32 uint integer Bignum or Fixnum (as required)
fixed64 Always eight bytes. More efficient than uint64 if values are often greater than 2^56. uint64 long int/long uint64 ulong integer/string Bignum
sfixed32 Always four bytes. int32 int int int32 int integer Bignum or Fixnum (as required)
sfixed64 Always eight bytes. int64 long int/long int64 long integer/string Bignum
bool bool boolean boolean bool bool boolean TrueClass/FalseClass
string A string must always contain UTF-8 encoded or 7-bit ASCII text. string String str/unicode string string string String (UTF-8)
bytes May contain any arbitrary sequence of bytes. string ByteString str []byte ByteString string String (ASCII-8BIT)