treasury module keeps account of currency in a
pot and manages the subsequent
deployment of these funds.
Funds for treasury are raised in two ways:
- By minting new tokens, leading to inflation, and
- By channeling tokens from transaction fees and slashing.
Treasury funds can be used to pay for developers who provide software updates, any changes decided by referenda, and to generally keep the system running smoothly.
Treasury can be used with other modules, such as to tax validator rewards in the
The treasury module provides an implementation for the following trait:
OnDilution- Mint extra funds upon dilution; maintain the ratio of
propose_spend- Propose a spending proposal and stake a proposal deposit.
set_pot- Set the spendable balance of funds.
configure- Configure the module's proposal requirements.
reject_proposal- Reject a proposal and slash the deposit.
approve_proposal- Accept the proposal and return the deposit.
Please refer to the
Call enum and its associated variants for documentation on each function.
See the module for details on publicly available functions.
The treasury module depends on the
srml_support modules as well as
Substrate Core libraries and the Rust standard library.
A spending proposal.
Events for this module.