syntax = "proto3";

package chart.v1;

option go_package = "chart/config/v1;chartconfig";

// UpdateChartConfigs command contains the list of missing chart configs from the cloud to agent
message UpdateChartConfigs {
  // claim_id, node_id pair is used to identify the Node Instance
  string claim_id = 1;
  string node_id = 2;
  // list of config hashes missing from cloud and requested from the agent
  repeated string config_hashes = 3;
}

message ChartConfigsUpdated {
  repeated ChartConfigUpdated configs = 1;
}

message ChartConfigUpdated {
  string type = 1;
  string family = 2;
  string context = 3;
  string title = 4;
  uint64 priority = 5;
  string plugin = 6;
  string module = 7;
  ChartType chart_type = 8;
  string units = 9;
  string config_hash = 10;
}

enum ChartType {
  LINE = 0;
  AREA = 1;
  STACKED = 2;
}
