# proto - devgas
# Table of Contents
# nibiru/devgas/v1/devgas.proto
# FeeShare
FeeShare defines an instance that organizes fee distribution conditions for the owner of a given smart contract
Field | Type | Label | Description |
---|---|---|---|
contract_address | string | contract_address is the bech32 address of a registered contract in string form | |
deployer_address | string | deployer_address is the bech32 address of message sender. It must be the same as the contracts admin address. | |
withdrawer_address | string | withdrawer_address is the bech32 address of account receiving the transaction fees. |
# nibiru/devgas/v1/event.proto
# EventCancelDevGas
ABCI event emitted when a deployer cancels fee sharing for a contract, specifying the deployer and contract addresses.
Field | Type | Label | Description |
---|---|---|---|
deployer | string | deployer is the addess of the account that registered the smart contract to receive dev gas royalties. | |
contract | string | Address of the smart contract. This identifies the specific contract that will receive fee sharing payouts. |
# EventPayoutDevGas
ABCI event emitted when fee sharing payouts are made, containing details on the payouts in JSON format.
Field | Type | Label | Description |
---|---|---|---|
payouts | string |
# EventRegisterDevGas
ABCI event emitted when a deployer registers a contract to receive fee sharing payouts, specifying the deployer, contract, and withdrawer addresses.
Field | Type | Label | Description |
---|---|---|---|
deployer | string | deployer is the addess of the account that registered the smart contract to receive dev gas royalties. | |
contract | string | Address of the smart contract. This identifies the specific contract that will receive fee sharing payouts. | |
withdrawer | string | The address that will receive the fee sharing payouts for the registered contract. This could be the deployer address or a separate withdrawer address specified. |
# EventUpdateDevGas
ABCI event emitted when a deployer updates the fee sharing registration for a contract, specifying updated deployer, contract, and/or withdrawer addresses.
Field | Type | Label | Description |
---|---|---|---|
deployer | string | deployer is the addess of the account that registered the smart contract to receive dev gas royalties. | |
contract | string | Address of the smart contract. This identifies the specific contract that will receive fee sharing payouts. | |
withdrawer | string | The address that will receive the fee sharing payouts for the registered contract. This could be the deployer address or a separate withdrawer address specified. |
# nibiru/devgas/v1/genesis.proto
# GenesisState
GenesisState defines the module's genesis state.
Field | Type | Label | Description |
---|---|---|---|
params | ModuleParams | params are the feeshare module parameters | |
fee_share | FeeShare | repeated | FeeShare is a slice of active registered contracts for fee distribution |
# ModuleParams
ModuleParams defines the params for the devgas module
Field | Type | Label | Description |
---|---|---|---|
enable_fee_share | bool | enable_feeshare defines a parameter to enable the feeshare module | |
developer_shares | string | developer_shares defines the proportion of the transaction fees to be distributed to the registered contract owner | |
allowed_denoms | string | repeated | allowed_denoms defines the list of denoms that are allowed to be paid to the contract withdraw addresses. If said denom is not in the list, the fees will ONLY be sent to the community pool. If this list is empty, all denoms are allowed. |
# nibiru/devgas/v1/query.proto
# QueryFeeShareRequest
QueryFeeShareRequest is the request type for the Query/FeeShare RPC method.
Field | Type | Label | Description |
---|---|---|---|
contract_address | string | contract_address of a registered contract in bech32 format |
# QueryFeeShareResponse
QueryFeeShareResponse is the response type for the Query/FeeShare RPC method.
Field | Type | Label | Description |
---|---|---|---|
feeshare | FeeShare | FeeShare is a stored Reveneue for the queried contract |
# QueryFeeSharesByWithdrawerRequest
QueryFeeSharesByWithdrawerRequest is the request type for the Query/FeeSharesByWithdrawer RPC method.
Field | Type | Label | Description |
---|---|---|---|
withdrawer_address | string | withdrawer_address in bech32 format |
# QueryFeeSharesByWithdrawerResponse
QueryFeeSharesByWithdrawerResponse is the response type for the Query/FeeSharesByWithdrawer RPC method.
Field | Type | Label | Description |
---|---|---|---|
feeshare | FeeShare | repeated |
# QueryFeeSharesRequest
QueryFeeSharesRequest is the request type for the Query/FeeShares RPC method.
Field | Type | Label | Description |
---|---|---|---|
deployer | string | TODO feat(devgas): re-implement the paginated version TODO feat(colletions): add automatic pagination generation |
pagination defines an optional pagination for the request. cosmos.base.query.v1beta1.PageRequest pagination = 1; |
# QueryFeeSharesResponse
QueryFeeSharesResponse is the response type for the Query/FeeShares RPC method.
Field | Type | Label | Description |
---|---|---|---|
feeshare | FeeShare | repeated | FeeShare is the slice of all stored Reveneue for the deployer |
# 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 | ModuleParams | params is the returned FeeShare parameter |
# Query
Query defines the gRPC querier service.
Method Name | Request Type | Response Type | Description |
---|---|---|---|
FeeShares | QueryFeeSharesRequest | QueryFeeSharesResponse | FeeShares retrieves all FeeShares that a deployer has registered |
FeeShare | QueryFeeShareRequest | QueryFeeShareResponse | FeeShare retrieves a registered FeeShare for a given contract address |
Params | QueryParamsRequest | QueryParamsResponse | Params retrieves the module params |
FeeSharesByWithdrawer | QueryFeeSharesByWithdrawerRequest | QueryFeeSharesByWithdrawerResponse | FeeSharesByWithdrawer retrieves all FeeShares with a given withdrawer address |
# nibiru/devgas/v1/tx.proto
# MsgCancelFeeShare
MsgCancelFeeShare defines a message that cancels a registered FeeShare
Field | Type | Label | Description |
---|---|---|---|
contract_address | string | contract_address in bech32 format | |
deployer_address | string | deployer_address is the bech32 address of message sender. It must be the same the contract's admin address |
# MsgCancelFeeShareResponse
MsgCancelFeeShareResponse defines the MsgCancelFeeShare response type
# MsgRegisterFeeShare
MsgRegisterFeeShare defines a message that registers a FeeShare
Field | Type | Label | Description |
---|---|---|---|
contract_address | string | contract_address in bech32 format | |
deployer_address | string | deployer_address is the bech32 address of message sender. It must be the same the contract's admin address | |
withdrawer_address | string | withdrawer_address is the bech32 address of account receiving the transaction fees |
# MsgRegisterFeeShareResponse
MsgRegisterFeeShareResponse defines the MsgRegisterFeeShare response type
# MsgUpdateFeeShare
MsgUpdateFeeShare defines a message that updates the withdrawer address for a registered FeeShare
Field | Type | Label | Description |
---|---|---|---|
contract_address | string | contract_address in bech32 format | |
deployer_address | string | deployer_address is the bech32 address of message sender. It must be the same the contract's admin address | |
withdrawer_address | string | withdrawer_address is the bech32 address of account receiving the transaction fees |
# MsgUpdateFeeShareResponse
MsgUpdateFeeShareResponse defines the MsgUpdateFeeShare response type
# MsgUpdateParams
MsgUpdateParams is the Msg/UpdateParams request type.
Since: cosmos-sdk 0.47
Field | Type | Label | Description |
---|---|---|---|
authority | string | authority is the address that controls the module (defaults to x/gov unless overwritten). | |
params | ModuleParams | params defines the x/feeshare parameters to update. |
NOTE: All parameters must be supplied. |
# MsgUpdateParamsResponse
MsgUpdateParamsResponse defines the response structure for executing a MsgUpdateParams message.
Since: cosmos-sdk 0.47
# Msg
Msg defines the fees Msg service.
Method Name | Request Type | Response Type | Description |
---|---|---|---|
RegisterFeeShare | MsgRegisterFeeShare | MsgRegisterFeeShareResponse | RegisterFeeShare registers a new contract for receiving transaction fees |
UpdateFeeShare | MsgUpdateFeeShare | MsgUpdateFeeShareResponse | UpdateFeeShare updates the withdrawer address of a FeeShare |
CancelFeeShare | MsgCancelFeeShare | MsgCancelFeeShareResponse | CancelFeeShare cancels a contract's fee registration and further receival of transaction fees |
UpdateParams | MsgUpdateParams | MsgUpdateParamsResponse | Update the params of the module through gov v1 type. |