0g-chain/proto/zgc/issuance/v1beta1/tx.proto
2024-08-02 19:26:50 +08:00

90 lines
3.0 KiB
Protocol Buffer

syntax = "proto3";
package zgc.issuance.v1beta1;
import "cosmos/base/v1beta1/coin.proto";
import "gogoproto/gogo.proto";
option go_package = "github.com/0glabs/0g-chain/x/issuance/types";
// Msg defines the issuance Msg service.
service Msg {
// IssueTokens message type used by the issuer to issue new tokens
rpc IssueTokens(MsgIssueTokens) returns (MsgIssueTokensResponse);
// RedeemTokens message type used by the issuer to redeem (burn) tokens
rpc RedeemTokens(MsgRedeemTokens) returns (MsgRedeemTokensResponse);
// BlockAddress message type used by the issuer to block an address from holding or transferring tokens
rpc BlockAddress(MsgBlockAddress) returns (MsgBlockAddressResponse);
// UnblockAddress message type used by the issuer to unblock an address from holding or transferring tokens
rpc UnblockAddress(MsgUnblockAddress) returns (MsgUnblockAddressResponse);
// SetPauseStatus message type used to pause or unpause status
rpc SetPauseStatus(MsgSetPauseStatus) returns (MsgSetPauseStatusResponse);
}
// MsgIssueTokens represents a message used by the issuer to issue new tokens
message MsgIssueTokens {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
string sender = 1;
cosmos.base.v1beta1.Coin tokens = 2 [(gogoproto.nullable) = false];
string receiver = 3;
}
// MsgIssueTokensResponse defines the Msg/IssueTokens response type.
message MsgIssueTokensResponse {}
// MsgRedeemTokens represents a message used by the issuer to redeem (burn) tokens
message MsgRedeemTokens {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
string sender = 1;
cosmos.base.v1beta1.Coin tokens = 2 [(gogoproto.nullable) = false];
}
// MsgRedeemTokensResponse defines the Msg/RedeemTokens response type.
message MsgRedeemTokensResponse {}
// MsgBlockAddress represents a message used by the issuer to block an address from holding or transferring tokens
message MsgBlockAddress {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
string sender = 1;
string denom = 2;
string blocked_address = 3;
}
// MsgBlockAddressResponse defines the Msg/BlockAddress response type.
message MsgBlockAddressResponse {}
// MsgUnblockAddress message type used by the issuer to unblock an address from holding or transferring tokens
message MsgUnblockAddress {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
string sender = 1;
string denom = 2;
string blocked_address = 3;
}
// MsgUnblockAddressResponse defines the Msg/UnblockAddress response type.
message MsgUnblockAddressResponse {}
// MsgSetPauseStatus message type used by the issuer to pause or unpause status
message MsgSetPauseStatus {
option (gogoproto.equal) = false;
option (gogoproto.goproto_getters) = false;
string sender = 1;
string denom = 2;
bool status = 3;
}
// MsgSetPauseStatusResponse defines the Msg/SetPauseStatus response type.
message MsgSetPauseStatusResponse {}