2022-08-23 17:04:40 +00:00
|
|
|
syntax = "proto3";
|
|
|
|
package kava.evmutil.v1beta1;
|
|
|
|
|
|
|
|
import "cosmos/base/v1beta1/coin.proto";
|
|
|
|
import "cosmos_proto/cosmos.proto";
|
2022-11-22 23:22:07 +00:00
|
|
|
import "gogoproto/gogo.proto";
|
2022-08-23 17:04:40 +00:00
|
|
|
|
2022-11-22 23:22:07 +00:00
|
|
|
option go_package = "github.com/kava-labs/kava/x/evmutil/types";
|
|
|
|
option (gogoproto.equal_all) = true;
|
2022-08-23 17:04:40 +00:00
|
|
|
option (gogoproto.verbose_equal_all) = true;
|
|
|
|
|
|
|
|
// Msg defines the evmutil Msg service.
|
|
|
|
service Msg {
|
|
|
|
// ConvertCoinToERC20 defines a method for converting sdk.Coin to Kava ERC20.
|
|
|
|
rpc ConvertCoinToERC20(MsgConvertCoinToERC20) returns (MsgConvertCoinToERC20Response);
|
|
|
|
|
|
|
|
// ConvertERC20ToCoin defines a method for converting Kava ERC20 to sdk.Coin.
|
|
|
|
rpc ConvertERC20ToCoin(MsgConvertERC20ToCoin) returns (MsgConvertERC20ToCoinResponse);
|
|
|
|
}
|
|
|
|
|
|
|
|
// MsgConvertCoinToERC20 defines a conversion from sdk.Coin to Kava ERC20.
|
|
|
|
message MsgConvertCoinToERC20 {
|
|
|
|
// Kava bech32 address initiating the conversion.
|
|
|
|
string initiator = 1 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
|
|
// EVM 0x hex address that will receive the converted Kava ERC20 tokens.
|
|
|
|
string receiver = 2;
|
|
|
|
// Amount is the sdk.Coin amount to convert.
|
|
|
|
cosmos.base.v1beta1.Coin amount = 3;
|
|
|
|
}
|
|
|
|
|
|
|
|
// MsgConvertCoinToERC20Response defines the response value from Msg/ConvertCoinToERC20.
|
|
|
|
message MsgConvertCoinToERC20Response {}
|
|
|
|
|
|
|
|
// MsgConvertERC20ToCoin defines a conversion from Kava ERC20 to sdk.Coin.
|
|
|
|
message MsgConvertERC20ToCoin {
|
|
|
|
// EVM 0x hex address initiating the conversion.
|
|
|
|
string initiator = 1;
|
|
|
|
// Kava bech32 address that will receive the converted sdk.Coin.
|
|
|
|
string receiver = 2 [(cosmos_proto.scalar) = "cosmos.AddressString"];
|
|
|
|
// EVM 0x hex address of the ERC20 contract.
|
|
|
|
string kava_erc20_address = 3 [(gogoproto.customname) = "KavaERC20Address"];
|
|
|
|
// ERC20 token amount to convert.
|
|
|
|
string amount = 4 [
|
2022-11-22 23:22:07 +00:00
|
|
|
(cosmos_proto.scalar) = "cosmos.Int",
|
2022-08-23 17:04:40 +00:00
|
|
|
(gogoproto.customtype) = "github.com/cosmos/cosmos-sdk/types.Int",
|
2022-11-22 23:22:07 +00:00
|
|
|
(gogoproto.nullable) = false
|
2022-08-23 17:04:40 +00:00
|
|
|
];
|
|
|
|
}
|
|
|
|
|
|
|
|
// MsgConvertERC20ToCoinResponse defines the response value from
|
|
|
|
// Msg/MsgConvertERC20ToCoin.
|
|
|
|
message MsgConvertERC20ToCoinResponse {}
|