syntax = "proto3";
package vulcanize.nameservice.v1beta1;

import "gogoproto/gogo.proto";
import "vulcanize/nameservice/v1beta1/nameservice.proto";

option go_package = "github.com/tharsis/ethermint/x/nameservice/types";

// GenesisState defines the nameservice module's genesis state.
message GenesisState {
  // params defines all the params of nameservice module.
  Params params = 1 [
    (gogoproto.nullable) = false
  ];
  // records
  repeated Record records = 2 [
    (gogoproto.nullable) = false,
    (gogoproto.moretags) = "json:\"records\" yaml:\"records\""
  ];
  // authorities
  repeated AuthorityEntry authorities = 3 [
    (gogoproto.nullable) = false,
    (gogoproto.moretags) = "json:\"authorities\" yaml:\"authorities\""
  ];
  // names
  repeated NameEntry names = 4 [
    (gogoproto.nullable) = false,
    (gogoproto.moretags) = "json:\"names\" yaml:\"names\""
  ];
}
