135 lines
5.5 KiB
Protocol Buffer
135 lines
5.5 KiB
Protocol Buffer
syntax = "proto3";
|
|
package vulcanize.registry.v1beta1;
|
|
|
|
import "google/protobuf/duration.proto";
|
|
import "google/protobuf/timestamp.proto";
|
|
import "gogoproto/gogo.proto";
|
|
import "cosmos/base/v1beta1/coin.proto";
|
|
import "google/protobuf/any.proto";
|
|
|
|
option go_package = "github.com/cerc-io/laconicd/x/registry/types";
|
|
|
|
// Params defines the registry 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\""
|
|
];
|
|
}
|
|
|
|
// Record defines a registry record
|
|
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\""];
|
|
google.protobuf.Any attributes = 7 [(gogoproto.moretags) = "json:\"attributes\" yaml:\"attributes\""];
|
|
repeated string names = 8 [(gogoproto.moretags) = "json:\"names\" yaml:\"names\""];
|
|
string type = 9 [(gogoproto.moretags) = "json:\"types\" yaml:\"types\""];
|
|
}
|
|
|
|
// AuthorityEntry defines a registry authority
|
|
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 defines a versioned name record
|
|
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\""];
|
|
}
|