syntax = "proto3";

package alerts;

import "gogoproto/gogo.proto";
import "github.com/prometheus/alertmanager/cluster/clusterpb/cluster.proto";

option go_package = "alertspb";
option (gogoproto.marshaler_all) = true;
option (gogoproto.unmarshaler_all) = true;

message AlertConfigDesc {
    string user = 1;
    string raw_config = 2;

    repeated TemplateDesc templates = 3;
}

message TemplateDesc {
    string filename = 1;
    string body = 2;
}

message FullStateDesc {
  // Alertmanager (clusterpb) types do not have Equal methods.
  option (gogoproto.equal) = false;

  clusterpb.FullState state = 1;
}
