syntax = "proto3"; package vulcanize.auction.v1beta1; import "gogoproto/gogo.proto"; import "google/api/annotations.proto"; import "google/protobuf/duration.proto"; import "cosmos/base/v1beta1/coin.proto"; import "vulcanize/auction/v1beta1/types.proto"; option go_package = "github.com/cerc-io/laconicd/x/auction/types"; // MsgCreateAuction defines a create auction message message MsgCreateAuction { option (gogoproto.goproto_getters) = false; // Duration of the commits phase in seconds google.protobuf.Duration commits_duration = 1 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"commits_duration\" yaml:\"commits_duration\"" ]; // Duration of the reveals phase in seconds google.protobuf.Duration reveals_duration = 2 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"reveals_duration\" yaml:\"reveals_duration\"" ]; // Commit fees cosmos.base.v1beta1.Coin commit_fee = 3 [(gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"commit_fee\" yaml:\"commit_fee\""]; // Reveal fees cosmos.base.v1beta1.Coin reveal_fee = 4 [(gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"reveal_fee\" yaml:\"reveal_fee\""]; // Minimum acceptable bid amount cosmos.base.v1beta1.Coin minimum_bid = 5 [(gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"minimum_bid\" yaml:\"minimum_bid\""]; // Address of the signer string signer = 6 [(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""]; } // MsgCreateAuctionResponse returns the details of the created auction message MsgCreateAuctionResponse { option (gogoproto.goproto_getters) = false; // Auction details Auction auction = 1 [(gogoproto.moretags) = "json:\"auction\" yaml:\"auction\""]; } // CommitBid defines the message to commit a bid message MsgCommitBid { option (gogoproto.goproto_getters) = false; // Auction ID string auction_id = 1 [(gogoproto.moretags) = "json:\"auction_id\" yaml:\"auction_id\""]; // Commit Hash string commit_hash = 2 [(gogoproto.moretags) = "json:\"commit_hash\" yaml:\"commit_hash\""]; // Address of the signer string signer = 3 [(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""]; } // RevealBid defines the message to reveal a bid message MsgRevealBid { option (gogoproto.goproto_getters) = false; // Auction ID string auction_id = 1 [(gogoproto.moretags) = "json:\"auction_id\" yaml:\"auction_id\""]; // Commit Hash string reveal = 2 [(gogoproto.moretags) = "json:\"reveal\" yaml:\"reveal\""]; // Address of the signer string signer = 3 [(gogoproto.moretags) = "json:\"signer\" yaml:\"signer\""]; } // MsgCommitBidResponse returns the state of the auction after the bid creation message MsgCommitBidResponse { option (gogoproto.goproto_getters) = false; // Auction details Bid bid = 1 [(gogoproto.moretags) = "json:\"bid\" yaml:\"bid\""]; } // MsgRevealBidResponse returns the state of the auction after the bid reveal message MsgRevealBidResponse { option (gogoproto.goproto_getters) = false; // Auction details Auction auction = 1 [(gogoproto.moretags) = "json:\"auction\" yaml:\"auction\""]; } // Tx defines the gRPC tx interface service Msg { // CreateAuction is the command for creating an auction rpc CreateAuction(MsgCreateAuction) returns (MsgCreateAuctionResponse) { option (google.api.http).post = "/vulcanize/auction/v1beta1/create_auction"; }; // CommitBid is the command for committing a bid rpc CommitBid(MsgCommitBid) returns (MsgCommitBidResponse) { option (google.api.http).post = "/vulcanize/auction/v1beta1/commit_bid"; }; // RevealBid is the command for revealing a bid rpc RevealBid(MsgRevealBid) returns (MsgRevealBidResponse) { option (google.api.http).post = "/vulcanize/auction/v1beta1/reveal_bid"; }; }