0g-chain/proto/kava/precisebank/v1/genesis.proto
2024-09-25 15:31:20 +00:00

43 lines
1.4 KiB
Protocol Buffer

syntax = "proto3";
package kava.precisebank.v1;
import "cosmos_proto/cosmos.proto";
import "gogoproto/gogo.proto";
option go_package = "github.com/0glabs/0g-chain/x/precisebank/types";
// GenesisState defines the precisebank module's genesis state.
message GenesisState {
// balances is a list of all the balances in the precisebank module.
repeated FractionalBalance balances = 1 [
(gogoproto.castrepeated) = "FractionalBalances",
(gogoproto.nullable) = false
];
// remainder is an internal value of how much extra fractional digits are
// still backed by the reserve, but not assigned to any account.
string remainder = 2 [
(cosmos_proto.scalar) = "cosmos.Int",
(gogoproto.customtype) = "cosmossdk.io/math.Int",
(gogoproto.nullable) = false
];
}
// FractionalBalance defines the fractional portion of an account balance
message FractionalBalance {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
// address is the address of the balance holder.
string address = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
// amount indicates amount of only the fractional balance owned by the
// address. FractionalBalance currently only supports tracking 1 single asset,
// e.g. fractional balances of ukava.
string amount = 2 [
(cosmos_proto.scalar) = "cosmos.Int",
(gogoproto.customtype) = "cosmossdk.io/math.Int",
(gogoproto.nullable) = false
];
}