syntax = "proto3";

package akash.take.v1beta3;

import "gogoproto/gogo.proto";

option go_package = "github.com/akash-network/akash-api/go/node/take/v1beta3";

// DenomTakeRate describes take rate for specified denom
message DenomTakeRate {
  string denom = 1 [
    (gogoproto.customname) = "Denom",
    (gogoproto.jsontag)    = "denom",
    (gogoproto.moretags)   = "yaml:\"denom\""
  ];
  uint32 rate = 2 [
    (gogoproto.customname) = "Rate",
    (gogoproto.jsontag)    = "rate",
    (gogoproto.moretags)   = "yaml:\"rate\""
  ];
}

// Params defines the parameters for the x/take package
message Params {
  // denom -> % take rate
  repeated DenomTakeRate denom_take_rates = 1 [
    (gogoproto.nullable)     = false,
    (gogoproto.castrepeated) = "DenomTakeRates",
    (gogoproto.customname)   = "DenomTakeRates",
    (gogoproto.jsontag)      = "denom_take_rates",
    (gogoproto.moretags)     = "yaml:\"denom_take_rates\""
  ];

  uint32 default_take_rate = 2  [
    (gogoproto.customname) = "DefaultTakeRate",
    (gogoproto.jsontag)    = "default_take_rate",
    (gogoproto.moretags)   = "yaml:\"default_take_rate\""
  ];
}
