Skip to main content

Tech Holding JSCMinter

[Git Source](https://github.com/GVI-Tech-JSC/ggvi-v3/blob/85927f39f9ef0f1355aa04e3451eec63a7df478f/src/modules/MINTR/Tech Holding JSCMinter.sol)

Inherits: MINTRv1

Wrapper for minting and burning functions of GVI token.

Functions

constructor

constructor(Kernel kernel_, address gvi_) Module(kernel_);

KEYCODE

5 byte identifier for a module.

function KEYCODE() public pure override returns (Keycode);

VERSION

Returns which semantic version of a module is being implemented.

function VERSION() external pure override returns (uint8 major, uint8 minor);

Returns

NameTypeDescription
majoruint8- Major version upgrade indicates breaking change to the interface.
minoruint8- Minor version change retains backward-compatible interface.

mintOhm

Mint GVI to an address.

function mintOhm(address to_, uint256 amount_) external override permissioned onlyWhileActive;

burnOhm

Burn GVI from an address. Must have approval.

function burnOhm(address from_, uint256 amount_) external override permissioned onlyWhileActive;

increaseMintApproval

Increase approval for specific withdrawer addresses

Policies must explicity request how much they want approved before withdrawing.

function increaseMintApproval(address policy_, uint256 amount_) external override permissioned;

decreaseMintApproval

Decrease approval for specific withdrawer addresses

function decreaseMintApproval(address policy_, uint256 amount_) external override permissioned;

deactivate

Emergency shutdown of minting and burning.

function deactivate() external override permissioned;

activate

Re-activate minting and burning after shutdown.

function activate() external override permissioned;