syntax = "proto3";
package kava.earn.v1beta1;

import "gogoproto/gogo.proto";
import "kava/earn/v1beta1/params.proto";
import "kava/earn/v1beta1/vault.proto";

option go_package = "github.com/kava-labs/kava/x/earn/types";

// GenesisState defines the earn module's genesis state.
message GenesisState {
  // params defines all the paramaters related to earn
  Params params = 1 [(gogoproto.nullable) = false];
  // vault_records defines the available vaults
  repeated VaultRecord vault_records = 2 [
    (gogoproto.castrepeated) = "VaultRecords",
    (gogoproto.nullable) = false
  ];
  // share_records defines the owned shares of each vault
  repeated VaultShareRecord vault_share_records = 3 [
    (gogoproto.castrepeated) = "VaultShareRecords",
    (gogoproto.nullable) = false
  ];
}