syntax = "proto3"; package vulcanize.nameservice.v1beta1; import "google/protobuf/duration.proto"; import "google/protobuf/timestamp.proto"; import "gogoproto/gogo.proto"; import "cosmos/base/v1beta1/coin.proto"; option go_package = "github.com/cerc-io/laconicd/x/nameservice/types"; // Params defines the nameservice module parameters message Params { cosmos.base.v1beta1.Coin record_rent = 1 [ (gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"record_rent\" yaml:\"record_rent\"" ]; google.protobuf.Duration record_rent_duration = 2 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"record_rent_duration\" yaml:\"record_rent_duration\"" ]; cosmos.base.v1beta1.Coin authority_rent = 3 [ (gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"authority_rent\" yaml:\"authority_rent\"" ]; google.protobuf.Duration authority_rent_duration = 4 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"authority_rent_duration\" yaml:\"authority_rent_duration\"" ]; google.protobuf.Duration authority_grace_period = 5 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"authority_grace_period\" yaml:\"authority_grace_period\"" ]; bool authority_auction_enabled = 6 [ (gogoproto.moretags) = "json:\"authority_auction_enabled\" yaml:\"authority_auction_enabled\"" ]; google.protobuf.Duration authority_auction_commits_duration = 7 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"authority_auction_commits_duration\" yaml:\"authority_auction_commits_duration\"" ]; google.protobuf.Duration authority_auction_reveals_duration = 8 [ (gogoproto.nullable) = false, (gogoproto.stdduration) = true, (gogoproto.moretags) = "json:\"authority_auction_reveals_duration\" yaml:\"authority_auction_reveals_duration\"" ]; cosmos.base.v1beta1.Coin authority_auction_commit_fee = 9 [ (gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"authority_auction_commit_fee\" yaml:\"authority_auction_commit_fee\"" ]; cosmos.base.v1beta1.Coin authority_auction_reveal_fee = 10 [ (gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"authority_auction_reveal_fee\" yaml:\"authority_auction_reveal_fee\"" ]; cosmos.base.v1beta1.Coin authority_auction_minimum_bid = 11 [ (gogoproto.nullable) = false, (gogoproto.moretags) = "json:\"authority_auction_minimum_bid\" yaml:\"authority_auction_minimum_bid\"" ]; } // Params defines the nameservice module records message Record { string id = 1 [ (gogoproto.moretags) = "json:\"id\" yaml:\"id\"" ]; string bond_id = 2 [ (gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\"" ]; string create_time = 3 [ (gogoproto.moretags) = "json:\"createTime\" yaml:\"createTime\"" ]; string expiry_time = 4 [ (gogoproto.moretags) = "json:\"expiryTime\" yaml:\"expiryTime\"" ]; bool deleted = 5; repeated string owners = 6 [ (gogoproto.moretags) = "json:\"owners\" yaml:\"owners\"" ]; string attributes = 7 [ (gogoproto.moretags) = "json:\"attributes\" yaml:\"attributes\"" ]; repeated string names = 8 [ (gogoproto.moretags) = "json:\"names\" yaml:\"names\"" ]; } // AuthorityEntry defines the nameservice module AuthorityEntries message AuthorityEntry{ string name = 1; NameAuthority entry = 2; } // NameAuthority message NameAuthority { // Owner public key. string owner_public_key = 1 [ (gogoproto.moretags) = "json:\"ownerPublicKey\" yaml:\"ownerPublicKey\"" ]; // Owner address. string owner_address = 2 [ (gogoproto.moretags) = "json:\"ownerAddress\" yaml:\"ownerAddress\"" ]; // height at which name/authority was created. uint64 height = 3; string status = 4; string auction_id = 5 [ (gogoproto.moretags) = "json:\"auctionID\" yaml:\"auctionID\"" ]; string bond_id = 6 [ (gogoproto.moretags) = "json:\"bondID\" yaml:\"bondID\"" ]; google.protobuf.Timestamp expiry_time = 7 [ (gogoproto.nullable) = false, (gogoproto.stdtime) = true, (gogoproto.moretags) = "json:\"expiryTime\" yaml:\"expiryTime\"" ]; } // NameEntry message NameEntry{ string name = 1; NameRecord entry = 2; } // NameRecord message NameRecord { NameRecordEntry latest = 1; repeated NameRecordEntry history = 2; } // NameRecordEntry message NameRecordEntry{ string id = 1; uint64 height = 2; } // Signature message Signature{ string sig = 1 [ (gogoproto.moretags) = "json:\"sig\" yaml:\"sig\"" ]; string pub_key = 2 [ (gogoproto.moretags) = "json:\"pubKey\" yaml:\"pubKey\"" ]; } // BlockChangeSet message BlockChangeSet{ int64 height = 1; repeated string records = 2; repeated string auctions = 3; repeated AuctionBidInfo auction_bids = 4 [ (gogoproto.moretags) = "json:\"auctionBids\" yaml:\"auctionBids\"" ]; repeated string authorities = 5; repeated string names = 6; } // AuctionBidInfo message AuctionBidInfo { string auction_id = 1 [ (gogoproto.moretags) = "json:\"auctionID\" yaml:\"auctionID\"" ]; string bidder_address = 2 [ (gogoproto.moretags) = "json:\"bidderAddress\" yaml:\"bidderAddress\"" ]; }