syntax = "proto3";
package akash.deployment.v1beta1;

import "gogoproto/gogo.proto";
import "akash/deployment/v1beta1/deployment.proto";
import "akash/deployment/v1beta1/group.proto";
import "akash/deployment/v1beta1/params.proto";

option go_package = "github.com/akash-network/akash-api/go/node/deployment/v1beta1";

// GenesisDeployment defines the basic genesis state used by deployment module
message GenesisDeployment {
  Deployment deployment = 1
      [(gogoproto.nullable) = false, (gogoproto.jsontag) = "deployment", (gogoproto.moretags) = "yaml:\"deployment\""];

  repeated Group groups = 2
      [(gogoproto.nullable) = false, (gogoproto.jsontag) = "groups", (gogoproto.moretags) = "yaml:\"groups\""];
}

// GenesisState stores slice of genesis deployment instance
message GenesisState {
  repeated GenesisDeployment deployments = 1 [
    (gogoproto.nullable) = false,
    (gogoproto.jsontag)  = "deployments",
    (gogoproto.moretags) = "yaml:\"deployments\""
  ];

  Params params = 2 [
    (gogoproto.nullable) = false,
    (gogoproto.jsontag)  = "params",
    (gogoproto.moretags) = "yaml:\"params\""
  ];
}
