// Code generated by protoc-gen-go. DO NOT EDIT.
// source: backend.proto

package pluginv2

import (
	context "context"
	fmt "fmt"
	proto "github.com/golang/protobuf/proto"
	grpc "google.golang.org/grpc"
	codes "google.golang.org/grpc/codes"
	status "google.golang.org/grpc/status"
	math "math"
)

// Reference imports to suppress errors if they are not otherwise used.
var _ = proto.Marshal
var _ = fmt.Errorf
var _ = math.Inf

// This is a compile-time assertion to ensure that this generated file
// is compatible with the proto package it is being compiled against.
// A compilation error at this line likely means your copy of the
// proto package needs to be updated.
const _ = proto.ProtoPackageIsVersion3 // please upgrade the proto package

type CheckHealthResponse_HealthStatus int32

const (
	CheckHealthResponse_UNKNOWN CheckHealthResponse_HealthStatus = 0
	CheckHealthResponse_OK      CheckHealthResponse_HealthStatus = 1
	CheckHealthResponse_ERROR   CheckHealthResponse_HealthStatus = 2
)

var CheckHealthResponse_HealthStatus_name = map[int32]string{
	0: "UNKNOWN",
	1: "OK",
	2: "ERROR",
}

var CheckHealthResponse_HealthStatus_value = map[string]int32{
	"UNKNOWN": 0,
	"OK":      1,
	"ERROR":   2,
}

func (x CheckHealthResponse_HealthStatus) String() string {
	return proto.EnumName(CheckHealthResponse_HealthStatus_name, int32(x))
}

func (CheckHealthResponse_HealthStatus) EnumDescriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{13, 0}
}

type DataSourceConfig struct {
	Id               int64  `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	Name             string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Url              string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"`
	User             string `protobuf:"bytes,4,opt,name=user,proto3" json:"user,omitempty"`
	Database         string `protobuf:"bytes,5,opt,name=database,proto3" json:"database,omitempty"`
	BasicAuthEnabled bool   `protobuf:"varint,6,opt,name=basicAuthEnabled,proto3" json:"basicAuthEnabled,omitempty"`
	BasicAuthUser    string `protobuf:"bytes,7,opt,name=basicAuthUser,proto3" json:"basicAuthUser,omitempty"`
	// from [data_source.json_data] field in the database
	JsonData []byte `protobuf:"bytes,8,opt,name=jsonData,proto3" json:"jsonData,omitempty"`
	// from [data_source.secure_json_data] field in the database
	DecryptedSecureJsonData map[string]string `protobuf:"bytes,9,rep,name=decryptedSecureJsonData,proto3" json:"decryptedSecureJsonData,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	LastUpdatedMS           int64             `protobuf:"varint,10,opt,name=lastUpdatedMS,proto3" json:"lastUpdatedMS,omitempty"`
	XXX_NoUnkeyedLiteral    struct{}          `json:"-"`
	XXX_unrecognized        []byte            `json:"-"`
	XXX_sizecache           int32             `json:"-"`
}

func (m *DataSourceConfig) Reset()         { *m = DataSourceConfig{} }
func (m *DataSourceConfig) String() string { return proto.CompactTextString(m) }
func (*DataSourceConfig) ProtoMessage()    {}
func (*DataSourceConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{0}
}

func (m *DataSourceConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DataSourceConfig.Unmarshal(m, b)
}
func (m *DataSourceConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DataSourceConfig.Marshal(b, m, deterministic)
}
func (m *DataSourceConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DataSourceConfig.Merge(m, src)
}
func (m *DataSourceConfig) XXX_Size() int {
	return xxx_messageInfo_DataSourceConfig.Size(m)
}
func (m *DataSourceConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_DataSourceConfig.DiscardUnknown(m)
}

var xxx_messageInfo_DataSourceConfig proto.InternalMessageInfo

func (m *DataSourceConfig) GetId() int64 {
	if m != nil {
		return m.Id
	}
	return 0
}

func (m *DataSourceConfig) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *DataSourceConfig) GetUrl() string {
	if m != nil {
		return m.Url
	}
	return ""
}

func (m *DataSourceConfig) GetUser() string {
	if m != nil {
		return m.User
	}
	return ""
}

func (m *DataSourceConfig) GetDatabase() string {
	if m != nil {
		return m.Database
	}
	return ""
}

func (m *DataSourceConfig) GetBasicAuthEnabled() bool {
	if m != nil {
		return m.BasicAuthEnabled
	}
	return false
}

func (m *DataSourceConfig) GetBasicAuthUser() string {
	if m != nil {
		return m.BasicAuthUser
	}
	return ""
}

func (m *DataSourceConfig) GetJsonData() []byte {
	if m != nil {
		return m.JsonData
	}
	return nil
}

func (m *DataSourceConfig) GetDecryptedSecureJsonData() map[string]string {
	if m != nil {
		return m.DecryptedSecureJsonData
	}
	return nil
}

func (m *DataSourceConfig) GetLastUpdatedMS() int64 {
	if m != nil {
		return m.LastUpdatedMS
	}
	return 0
}

type PluginConfig struct {
	OrgId    int64  `protobuf:"varint,1,opt,name=orgId,proto3" json:"orgId,omitempty"`
	PluginId string `protobuf:"bytes,2,opt,name=pluginId,proto3" json:"pluginId,omitempty"`
	// from [plugin_setting.json_data] field in the database
	JsonData []byte `protobuf:"bytes,3,opt,name=jsonData,proto3" json:"jsonData,omitempty"`
	// from [plugin_setting.secure_json_data] field in the database
	DecryptedSecureJsonData map[string]string `protobuf:"bytes,4,rep,name=decryptedSecureJsonData,proto3" json:"decryptedSecureJsonData,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	LastUpdatedMS           int64             `protobuf:"varint,5,opt,name=lastUpdatedMS,proto3" json:"lastUpdatedMS,omitempty"`
	DatasourceConfig        *DataSourceConfig `protobuf:"bytes,6,opt,name=datasourceConfig,proto3" json:"datasourceConfig,omitempty"`
	XXX_NoUnkeyedLiteral    struct{}          `json:"-"`
	XXX_unrecognized        []byte            `json:"-"`
	XXX_sizecache           int32             `json:"-"`
}

func (m *PluginConfig) Reset()         { *m = PluginConfig{} }
func (m *PluginConfig) String() string { return proto.CompactTextString(m) }
func (*PluginConfig) ProtoMessage()    {}
func (*PluginConfig) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{1}
}

func (m *PluginConfig) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_PluginConfig.Unmarshal(m, b)
}
func (m *PluginConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_PluginConfig.Marshal(b, m, deterministic)
}
func (m *PluginConfig) XXX_Merge(src proto.Message) {
	xxx_messageInfo_PluginConfig.Merge(m, src)
}
func (m *PluginConfig) XXX_Size() int {
	return xxx_messageInfo_PluginConfig.Size(m)
}
func (m *PluginConfig) XXX_DiscardUnknown() {
	xxx_messageInfo_PluginConfig.DiscardUnknown(m)
}

var xxx_messageInfo_PluginConfig proto.InternalMessageInfo

func (m *PluginConfig) GetOrgId() int64 {
	if m != nil {
		return m.OrgId
	}
	return 0
}

func (m *PluginConfig) GetPluginId() string {
	if m != nil {
		return m.PluginId
	}
	return ""
}

func (m *PluginConfig) GetJsonData() []byte {
	if m != nil {
		return m.JsonData
	}
	return nil
}

func (m *PluginConfig) GetDecryptedSecureJsonData() map[string]string {
	if m != nil {
		return m.DecryptedSecureJsonData
	}
	return nil
}

func (m *PluginConfig) GetLastUpdatedMS() int64 {
	if m != nil {
		return m.LastUpdatedMS
	}
	return 0
}

func (m *PluginConfig) GetDatasourceConfig() *DataSourceConfig {
	if m != nil {
		return m.DatasourceConfig
	}
	return nil
}

type User struct {
	Login                string   `protobuf:"bytes,1,opt,name=login,proto3" json:"login,omitempty"`
	Name                 string   `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Email                string   `protobuf:"bytes,3,opt,name=email,proto3" json:"email,omitempty"`
	Role                 string   `protobuf:"bytes,4,opt,name=role,proto3" json:"role,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *User) Reset()         { *m = User{} }
func (m *User) String() string { return proto.CompactTextString(m) }
func (*User) ProtoMessage()    {}
func (*User) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{2}
}

func (m *User) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_User.Unmarshal(m, b)
}
func (m *User) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_User.Marshal(b, m, deterministic)
}
func (m *User) XXX_Merge(src proto.Message) {
	xxx_messageInfo_User.Merge(m, src)
}
func (m *User) XXX_Size() int {
	return xxx_messageInfo_User.Size(m)
}
func (m *User) XXX_DiscardUnknown() {
	xxx_messageInfo_User.DiscardUnknown(m)
}

var xxx_messageInfo_User proto.InternalMessageInfo

func (m *User) GetLogin() string {
	if m != nil {
		return m.Login
	}
	return ""
}

func (m *User) GetName() string {
	if m != nil {
		return m.Name
	}
	return ""
}

func (m *User) GetEmail() string {
	if m != nil {
		return m.Email
	}
	return ""
}

func (m *User) GetRole() string {
	if m != nil {
		return m.Role
	}
	return ""
}

type StringList struct {
	Values               []string `protobuf:"bytes,1,rep,name=values,proto3" json:"values,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *StringList) Reset()         { *m = StringList{} }
func (m *StringList) String() string { return proto.CompactTextString(m) }
func (*StringList) ProtoMessage()    {}
func (*StringList) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{3}
}

func (m *StringList) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_StringList.Unmarshal(m, b)
}
func (m *StringList) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_StringList.Marshal(b, m, deterministic)
}
func (m *StringList) XXX_Merge(src proto.Message) {
	xxx_messageInfo_StringList.Merge(m, src)
}
func (m *StringList) XXX_Size() int {
	return xxx_messageInfo_StringList.Size(m)
}
func (m *StringList) XXX_DiscardUnknown() {
	xxx_messageInfo_StringList.DiscardUnknown(m)
}

var xxx_messageInfo_StringList proto.InternalMessageInfo

func (m *StringList) GetValues() []string {
	if m != nil {
		return m.Values
	}
	return nil
}

type CallResourceRequest struct {
	Config               *PluginConfig          `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	User                 *User                  `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
	Path                 string                 `protobuf:"bytes,3,opt,name=path,proto3" json:"path,omitempty"`
	Method               string                 `protobuf:"bytes,4,opt,name=method,proto3" json:"method,omitempty"`
	Url                  string                 `protobuf:"bytes,5,opt,name=url,proto3" json:"url,omitempty"`
	Headers              map[string]*StringList `protobuf:"bytes,6,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Body                 []byte                 `protobuf:"bytes,7,opt,name=body,proto3" json:"body,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *CallResourceRequest) Reset()         { *m = CallResourceRequest{} }
func (m *CallResourceRequest) String() string { return proto.CompactTextString(m) }
func (*CallResourceRequest) ProtoMessage()    {}
func (*CallResourceRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{4}
}

func (m *CallResourceRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CallResourceRequest.Unmarshal(m, b)
}
func (m *CallResourceRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CallResourceRequest.Marshal(b, m, deterministic)
}
func (m *CallResourceRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CallResourceRequest.Merge(m, src)
}
func (m *CallResourceRequest) XXX_Size() int {
	return xxx_messageInfo_CallResourceRequest.Size(m)
}
func (m *CallResourceRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CallResourceRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CallResourceRequest proto.InternalMessageInfo

func (m *CallResourceRequest) GetConfig() *PluginConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *CallResourceRequest) GetUser() *User {
	if m != nil {
		return m.User
	}
	return nil
}

func (m *CallResourceRequest) GetPath() string {
	if m != nil {
		return m.Path
	}
	return ""
}

func (m *CallResourceRequest) GetMethod() string {
	if m != nil {
		return m.Method
	}
	return ""
}

func (m *CallResourceRequest) GetUrl() string {
	if m != nil {
		return m.Url
	}
	return ""
}

func (m *CallResourceRequest) GetHeaders() map[string]*StringList {
	if m != nil {
		return m.Headers
	}
	return nil
}

func (m *CallResourceRequest) GetBody() []byte {
	if m != nil {
		return m.Body
	}
	return nil
}

type CallResourceResponse struct {
	Code                 int32                  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
	Headers              map[string]*StringList `protobuf:"bytes,2,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	Body                 []byte                 `protobuf:"bytes,3,opt,name=body,proto3" json:"body,omitempty"`
	XXX_NoUnkeyedLiteral struct{}               `json:"-"`
	XXX_unrecognized     []byte                 `json:"-"`
	XXX_sizecache        int32                  `json:"-"`
}

func (m *CallResourceResponse) Reset()         { *m = CallResourceResponse{} }
func (m *CallResourceResponse) String() string { return proto.CompactTextString(m) }
func (*CallResourceResponse) ProtoMessage()    {}
func (*CallResourceResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{5}
}

func (m *CallResourceResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CallResourceResponse.Unmarshal(m, b)
}
func (m *CallResourceResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CallResourceResponse.Marshal(b, m, deterministic)
}
func (m *CallResourceResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CallResourceResponse.Merge(m, src)
}
func (m *CallResourceResponse) XXX_Size() int {
	return xxx_messageInfo_CallResourceResponse.Size(m)
}
func (m *CallResourceResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CallResourceResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CallResourceResponse proto.InternalMessageInfo

func (m *CallResourceResponse) GetCode() int32 {
	if m != nil {
		return m.Code
	}
	return 0
}

func (m *CallResourceResponse) GetHeaders() map[string]*StringList {
	if m != nil {
		return m.Headers
	}
	return nil
}

func (m *CallResourceResponse) GetBody() []byte {
	if m != nil {
		return m.Body
	}
	return nil
}

type TimeRange struct {
	FromEpochMS          int64    `protobuf:"varint,1,opt,name=fromEpochMS,proto3" json:"fromEpochMS,omitempty"`
	ToEpochMS            int64    `protobuf:"varint,2,opt,name=toEpochMS,proto3" json:"toEpochMS,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *TimeRange) Reset()         { *m = TimeRange{} }
func (m *TimeRange) String() string { return proto.CompactTextString(m) }
func (*TimeRange) ProtoMessage()    {}
func (*TimeRange) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{6}
}

func (m *TimeRange) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_TimeRange.Unmarshal(m, b)
}
func (m *TimeRange) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_TimeRange.Marshal(b, m, deterministic)
}
func (m *TimeRange) XXX_Merge(src proto.Message) {
	xxx_messageInfo_TimeRange.Merge(m, src)
}
func (m *TimeRange) XXX_Size() int {
	return xxx_messageInfo_TimeRange.Size(m)
}
func (m *TimeRange) XXX_DiscardUnknown() {
	xxx_messageInfo_TimeRange.DiscardUnknown(m)
}

var xxx_messageInfo_TimeRange proto.InternalMessageInfo

func (m *TimeRange) GetFromEpochMS() int64 {
	if m != nil {
		return m.FromEpochMS
	}
	return 0
}

func (m *TimeRange) GetToEpochMS() int64 {
	if m != nil {
		return m.ToEpochMS
	}
	return 0
}

type DataQuery struct {
	RefId                string     `protobuf:"bytes,1,opt,name=refId,proto3" json:"refId,omitempty"`
	MaxDataPoints        int64      `protobuf:"varint,2,opt,name=maxDataPoints,proto3" json:"maxDataPoints,omitempty"`
	IntervalMS           int64      `protobuf:"varint,3,opt,name=intervalMS,proto3" json:"intervalMS,omitempty"`
	TimeRange            *TimeRange `protobuf:"bytes,4,opt,name=timeRange,proto3" json:"timeRange,omitempty"`
	Json                 []byte     `protobuf:"bytes,5,opt,name=json,proto3" json:"json,omitempty"`
	XXX_NoUnkeyedLiteral struct{}   `json:"-"`
	XXX_unrecognized     []byte     `json:"-"`
	XXX_sizecache        int32      `json:"-"`
}

func (m *DataQuery) Reset()         { *m = DataQuery{} }
func (m *DataQuery) String() string { return proto.CompactTextString(m) }
func (*DataQuery) ProtoMessage()    {}
func (*DataQuery) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{7}
}

func (m *DataQuery) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_DataQuery.Unmarshal(m, b)
}
func (m *DataQuery) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_DataQuery.Marshal(b, m, deterministic)
}
func (m *DataQuery) XXX_Merge(src proto.Message) {
	xxx_messageInfo_DataQuery.Merge(m, src)
}
func (m *DataQuery) XXX_Size() int {
	return xxx_messageInfo_DataQuery.Size(m)
}
func (m *DataQuery) XXX_DiscardUnknown() {
	xxx_messageInfo_DataQuery.DiscardUnknown(m)
}

var xxx_messageInfo_DataQuery proto.InternalMessageInfo

func (m *DataQuery) GetRefId() string {
	if m != nil {
		return m.RefId
	}
	return ""
}

func (m *DataQuery) GetMaxDataPoints() int64 {
	if m != nil {
		return m.MaxDataPoints
	}
	return 0
}

func (m *DataQuery) GetIntervalMS() int64 {
	if m != nil {
		return m.IntervalMS
	}
	return 0
}

func (m *DataQuery) GetTimeRange() *TimeRange {
	if m != nil {
		return m.TimeRange
	}
	return nil
}

func (m *DataQuery) GetJson() []byte {
	if m != nil {
		return m.Json
	}
	return nil
}

// QueryDataRequest
type QueryDataRequest struct {
	// Plugin Configuration
	Config *PluginConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	//Info about the user who calls the plugin.
	User *User `protobuf:"bytes,2,opt,name=user,proto3" json:"user,omitempty"`
	// Environment info
	Headers map[string]string `protobuf:"bytes,3,rep,name=headers,proto3" json:"headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	// List of data queries
	Queries              []*DataQuery `protobuf:"bytes,4,rep,name=queries,proto3" json:"queries,omitempty"`
	XXX_NoUnkeyedLiteral struct{}     `json:"-"`
	XXX_unrecognized     []byte       `json:"-"`
	XXX_sizecache        int32        `json:"-"`
}

func (m *QueryDataRequest) Reset()         { *m = QueryDataRequest{} }
func (m *QueryDataRequest) String() string { return proto.CompactTextString(m) }
func (*QueryDataRequest) ProtoMessage()    {}
func (*QueryDataRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{8}
}

func (m *QueryDataRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_QueryDataRequest.Unmarshal(m, b)
}
func (m *QueryDataRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_QueryDataRequest.Marshal(b, m, deterministic)
}
func (m *QueryDataRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryDataRequest.Merge(m, src)
}
func (m *QueryDataRequest) XXX_Size() int {
	return xxx_messageInfo_QueryDataRequest.Size(m)
}
func (m *QueryDataRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryDataRequest.DiscardUnknown(m)
}

var xxx_messageInfo_QueryDataRequest proto.InternalMessageInfo

func (m *QueryDataRequest) GetConfig() *PluginConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

func (m *QueryDataRequest) GetUser() *User {
	if m != nil {
		return m.User
	}
	return nil
}

func (m *QueryDataRequest) GetHeaders() map[string]string {
	if m != nil {
		return m.Headers
	}
	return nil
}

func (m *QueryDataRequest) GetQueries() []*DataQuery {
	if m != nil {
		return m.Queries
	}
	return nil
}

type QueryDataResponse struct {
	// Arrow encoded DataFrames
	// Each frame encodes its own: Errors, meta, and refId
	Frames [][]byte `protobuf:"bytes,1,rep,name=frames,proto3" json:"frames,omitempty"`
	// Additional response metadata
	Metadata             map[string]string `protobuf:"bytes,2,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
	XXX_NoUnkeyedLiteral struct{}          `json:"-"`
	XXX_unrecognized     []byte            `json:"-"`
	XXX_sizecache        int32             `json:"-"`
}

func (m *QueryDataResponse) Reset()         { *m = QueryDataResponse{} }
func (m *QueryDataResponse) String() string { return proto.CompactTextString(m) }
func (*QueryDataResponse) ProtoMessage()    {}
func (*QueryDataResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{9}
}

func (m *QueryDataResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_QueryDataResponse.Unmarshal(m, b)
}
func (m *QueryDataResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_QueryDataResponse.Marshal(b, m, deterministic)
}
func (m *QueryDataResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_QueryDataResponse.Merge(m, src)
}
func (m *QueryDataResponse) XXX_Size() int {
	return xxx_messageInfo_QueryDataResponse.Size(m)
}
func (m *QueryDataResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_QueryDataResponse.DiscardUnknown(m)
}

var xxx_messageInfo_QueryDataResponse proto.InternalMessageInfo

func (m *QueryDataResponse) GetFrames() [][]byte {
	if m != nil {
		return m.Frames
	}
	return nil
}

func (m *QueryDataResponse) GetMetadata() map[string]string {
	if m != nil {
		return m.Metadata
	}
	return nil
}

type CollectMetricsRequest struct {
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CollectMetricsRequest) Reset()         { *m = CollectMetricsRequest{} }
func (m *CollectMetricsRequest) String() string { return proto.CompactTextString(m) }
func (*CollectMetricsRequest) ProtoMessage()    {}
func (*CollectMetricsRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{10}
}

func (m *CollectMetricsRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CollectMetricsRequest.Unmarshal(m, b)
}
func (m *CollectMetricsRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CollectMetricsRequest.Marshal(b, m, deterministic)
}
func (m *CollectMetricsRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CollectMetricsRequest.Merge(m, src)
}
func (m *CollectMetricsRequest) XXX_Size() int {
	return xxx_messageInfo_CollectMetricsRequest.Size(m)
}
func (m *CollectMetricsRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CollectMetricsRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CollectMetricsRequest proto.InternalMessageInfo

type CollectMetricsResponse struct {
	Metrics              *CollectMetricsResponse_Payload `protobuf:"bytes,1,opt,name=metrics,proto3" json:"metrics,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                        `json:"-"`
	XXX_unrecognized     []byte                          `json:"-"`
	XXX_sizecache        int32                           `json:"-"`
}

func (m *CollectMetricsResponse) Reset()         { *m = CollectMetricsResponse{} }
func (m *CollectMetricsResponse) String() string { return proto.CompactTextString(m) }
func (*CollectMetricsResponse) ProtoMessage()    {}
func (*CollectMetricsResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{11}
}

func (m *CollectMetricsResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CollectMetricsResponse.Unmarshal(m, b)
}
func (m *CollectMetricsResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CollectMetricsResponse.Marshal(b, m, deterministic)
}
func (m *CollectMetricsResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CollectMetricsResponse.Merge(m, src)
}
func (m *CollectMetricsResponse) XXX_Size() int {
	return xxx_messageInfo_CollectMetricsResponse.Size(m)
}
func (m *CollectMetricsResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CollectMetricsResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CollectMetricsResponse proto.InternalMessageInfo

func (m *CollectMetricsResponse) GetMetrics() *CollectMetricsResponse_Payload {
	if m != nil {
		return m.Metrics
	}
	return nil
}

type CollectMetricsResponse_Payload struct {
	Prometheus           []byte   `protobuf:"bytes,1,opt,name=prometheus,proto3" json:"prometheus,omitempty"`
	XXX_NoUnkeyedLiteral struct{} `json:"-"`
	XXX_unrecognized     []byte   `json:"-"`
	XXX_sizecache        int32    `json:"-"`
}

func (m *CollectMetricsResponse_Payload) Reset()         { *m = CollectMetricsResponse_Payload{} }
func (m *CollectMetricsResponse_Payload) String() string { return proto.CompactTextString(m) }
func (*CollectMetricsResponse_Payload) ProtoMessage()    {}
func (*CollectMetricsResponse_Payload) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{11, 0}
}

func (m *CollectMetricsResponse_Payload) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CollectMetricsResponse_Payload.Unmarshal(m, b)
}
func (m *CollectMetricsResponse_Payload) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CollectMetricsResponse_Payload.Marshal(b, m, deterministic)
}
func (m *CollectMetricsResponse_Payload) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CollectMetricsResponse_Payload.Merge(m, src)
}
func (m *CollectMetricsResponse_Payload) XXX_Size() int {
	return xxx_messageInfo_CollectMetricsResponse_Payload.Size(m)
}
func (m *CollectMetricsResponse_Payload) XXX_DiscardUnknown() {
	xxx_messageInfo_CollectMetricsResponse_Payload.DiscardUnknown(m)
}

var xxx_messageInfo_CollectMetricsResponse_Payload proto.InternalMessageInfo

func (m *CollectMetricsResponse_Payload) GetPrometheus() []byte {
	if m != nil {
		return m.Prometheus
	}
	return nil
}

type CheckHealthRequest struct {
	Config               *PluginConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	XXX_NoUnkeyedLiteral struct{}      `json:"-"`
	XXX_unrecognized     []byte        `json:"-"`
	XXX_sizecache        int32         `json:"-"`
}

func (m *CheckHealthRequest) Reset()         { *m = CheckHealthRequest{} }
func (m *CheckHealthRequest) String() string { return proto.CompactTextString(m) }
func (*CheckHealthRequest) ProtoMessage()    {}
func (*CheckHealthRequest) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{12}
}

func (m *CheckHealthRequest) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CheckHealthRequest.Unmarshal(m, b)
}
func (m *CheckHealthRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CheckHealthRequest.Marshal(b, m, deterministic)
}
func (m *CheckHealthRequest) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CheckHealthRequest.Merge(m, src)
}
func (m *CheckHealthRequest) XXX_Size() int {
	return xxx_messageInfo_CheckHealthRequest.Size(m)
}
func (m *CheckHealthRequest) XXX_DiscardUnknown() {
	xxx_messageInfo_CheckHealthRequest.DiscardUnknown(m)
}

var xxx_messageInfo_CheckHealthRequest proto.InternalMessageInfo

func (m *CheckHealthRequest) GetConfig() *PluginConfig {
	if m != nil {
		return m.Config
	}
	return nil
}

type CheckHealthResponse struct {
	Status               CheckHealthResponse_HealthStatus `protobuf:"varint,1,opt,name=status,proto3,enum=pluginv2.CheckHealthResponse_HealthStatus" json:"status,omitempty"`
	Message              string                           `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	JsonDetails          []byte                           `protobuf:"bytes,3,opt,name=jsonDetails,proto3" json:"jsonDetails,omitempty"`
	XXX_NoUnkeyedLiteral struct{}                         `json:"-"`
	XXX_unrecognized     []byte                           `json:"-"`
	XXX_sizecache        int32                            `json:"-"`
}

func (m *CheckHealthResponse) Reset()         { *m = CheckHealthResponse{} }
func (m *CheckHealthResponse) String() string { return proto.CompactTextString(m) }
func (*CheckHealthResponse) ProtoMessage()    {}
func (*CheckHealthResponse) Descriptor() ([]byte, []int) {
	return fileDescriptor_5ab9ba5b8d8b2ba5, []int{13}
}

func (m *CheckHealthResponse) XXX_Unmarshal(b []byte) error {
	return xxx_messageInfo_CheckHealthResponse.Unmarshal(m, b)
}
func (m *CheckHealthResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
	return xxx_messageInfo_CheckHealthResponse.Marshal(b, m, deterministic)
}
func (m *CheckHealthResponse) XXX_Merge(src proto.Message) {
	xxx_messageInfo_CheckHealthResponse.Merge(m, src)
}
func (m *CheckHealthResponse) XXX_Size() int {
	return xxx_messageInfo_CheckHealthResponse.Size(m)
}
func (m *CheckHealthResponse) XXX_DiscardUnknown() {
	xxx_messageInfo_CheckHealthResponse.DiscardUnknown(m)
}

var xxx_messageInfo_CheckHealthResponse proto.InternalMessageInfo

func (m *CheckHealthResponse) GetStatus() CheckHealthResponse_HealthStatus {
	if m != nil {
		return m.Status
	}
	return CheckHealthResponse_UNKNOWN
}

func (m *CheckHealthResponse) GetMessage() string {
	if m != nil {
		return m.Message
	}
	return ""
}

func (m *CheckHealthResponse) GetJsonDetails() []byte {
	if m != nil {
		return m.JsonDetails
	}
	return nil
}

func init() {
	proto.RegisterEnum("pluginv2.CheckHealthResponse_HealthStatus", CheckHealthResponse_HealthStatus_name, CheckHealthResponse_HealthStatus_value)
	proto.RegisterType((*DataSourceConfig)(nil), "pluginv2.DataSourceConfig")
	proto.RegisterMapType((map[string]string)(nil), "pluginv2.DataSourceConfig.DecryptedSecureJsonDataEntry")
	proto.RegisterType((*PluginConfig)(nil), "pluginv2.PluginConfig")
	proto.RegisterMapType((map[string]string)(nil), "pluginv2.PluginConfig.DecryptedSecureJsonDataEntry")
	proto.RegisterType((*User)(nil), "pluginv2.User")
	proto.RegisterType((*StringList)(nil), "pluginv2.StringList")
	proto.RegisterType((*CallResourceRequest)(nil), "pluginv2.CallResourceRequest")
	proto.RegisterMapType((map[string]*StringList)(nil), "pluginv2.CallResourceRequest.HeadersEntry")
	proto.RegisterType((*CallResourceResponse)(nil), "pluginv2.CallResourceResponse")
	proto.RegisterMapType((map[string]*StringList)(nil), "pluginv2.CallResourceResponse.HeadersEntry")
	proto.RegisterType((*TimeRange)(nil), "pluginv2.TimeRange")
	proto.RegisterType((*DataQuery)(nil), "pluginv2.DataQuery")
	proto.RegisterType((*QueryDataRequest)(nil), "pluginv2.QueryDataRequest")
	proto.RegisterMapType((map[string]string)(nil), "pluginv2.QueryDataRequest.HeadersEntry")
	proto.RegisterType((*QueryDataResponse)(nil), "pluginv2.QueryDataResponse")
	proto.RegisterMapType((map[string]string)(nil), "pluginv2.QueryDataResponse.MetadataEntry")
	proto.RegisterType((*CollectMetricsRequest)(nil), "pluginv2.CollectMetricsRequest")
	proto.RegisterType((*CollectMetricsResponse)(nil), "pluginv2.CollectMetricsResponse")
	proto.RegisterType((*CollectMetricsResponse_Payload)(nil), "pluginv2.CollectMetricsResponse.Payload")
	proto.RegisterType((*CheckHealthRequest)(nil), "pluginv2.CheckHealthRequest")
	proto.RegisterType((*CheckHealthResponse)(nil), "pluginv2.CheckHealthResponse")
}

func init() { proto.RegisterFile("backend.proto", fileDescriptor_5ab9ba5b8d8b2ba5) }

var fileDescriptor_5ab9ba5b8d8b2ba5 = []byte{
	// 1115 bytes of a gzipped FileDescriptorProto
	0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xb4, 0x57, 0xcd, 0x6e, 0xdb, 0x46,
	0x10, 0x2e, 0x49, 0xfd, 0x71, 0xa4, 0x18, 0xea, 0x5a, 0x71, 0x08, 0x35, 0x49, 0x05, 0x22, 0x40,
	0x95, 0x14, 0x15, 0x5a, 0xe5, 0xd0, 0x22, 0x39, 0xc5, 0x96, 0x0a, 0xc7, 0x8e, 0x7f, 0xba, 0x8a,
	0x51, 0x20, 0x45, 0x0f, 0x2b, 0x72, 0x2d, 0xb1, 0xe6, 0x8f, 0xcc, 0x5d, 0x1a, 0xf5, 0x03, 0x14,
	0x7d, 0x81, 0x3e, 0x47, 0xfa, 0x14, 0x3d, 0xf5, 0xd8, 0x43, 0x5f, 0xa7, 0xd8, 0xe5, 0x52, 0x24,
	0x6d, 0xc9, 0x46, 0x5b, 0xe7, 0xb6, 0x33, 0x9c, 0x9d, 0x9d, 0xf9, 0xe6, 0x9b, 0xcf, 0x32, 0xdc,
	0x9b, 0x12, 0xe7, 0x8c, 0x86, 0xee, 0x60, 0x11, 0x47, 0x3c, 0x42, 0x8d, 0x85, 0x9f, 0xcc, 0xbc,
	0xf0, 0x62, 0x68, 0xff, 0x69, 0x40, 0x7b, 0x44, 0x38, 0x99, 0x44, 0x49, 0xec, 0xd0, 0x9d, 0x28,
	0x3c, 0xf5, 0x66, 0x68, 0x03, 0x74, 0xcf, 0xb5, 0xb4, 0x9e, 0xd6, 0x37, 0xb0, 0xee, 0xb9, 0x08,
	0x41, 0x25, 0x24, 0x01, 0xb5, 0xf4, 0x9e, 0xd6, 0x37, 0xb1, 0x3c, 0xa3, 0x36, 0x18, 0x49, 0xec,
	0x5b, 0x86, 0x74, 0x89, 0xa3, 0x88, 0x4a, 0x18, 0x8d, 0xad, 0x4a, 0x1a, 0x25, 0xce, 0xa8, 0x0b,
	0x0d, 0x97, 0x70, 0x32, 0x25, 0x8c, 0x5a, 0x55, 0xe9, 0x5f, 0xda, 0xe8, 0x19, 0xb4, 0xa7, 0x84,
	0x79, 0xce, 0xab, 0x84, 0xcf, 0xc7, 0x21, 0x99, 0xfa, 0xd4, 0xb5, 0x6a, 0x3d, 0xad, 0xdf, 0xc0,
	0xd7, 0xfc, 0xe8, 0x89, 0xe8, 0x40, 0xf9, 0x4e, 0xc4, 0x23, 0x75, 0x99, 0xac, 0xec, 0x14, 0xaf,
	0xfd, 0xc4, 0xa2, 0x50, 0xf4, 0x63, 0x35, 0x7a, 0x5a, 0xbf, 0x85, 0x97, 0x36, 0x3a, 0x87, 0x07,
	0x2e, 0x75, 0xe2, 0xcb, 0x05, 0xa7, 0xee, 0x84, 0x3a, 0x49, 0x4c, 0xf7, 0xb2, 0x50, 0xb3, 0x67,
	0xf4, 0x9b, 0xc3, 0xaf, 0x07, 0x19, 0x28, 0x83, 0xab, 0x80, 0x0c, 0x46, 0xab, 0x6f, 0x8e, 0x43,
	0x1e, 0x5f, 0xe2, 0x75, 0x79, 0x45, 0xd1, 0x3e, 0x61, 0xfc, 0x64, 0xe1, 0x12, 0x4e, 0xdd, 0x83,
	0x89, 0x05, 0x12, 0xd1, 0xb2, 0xb3, 0xbb, 0x07, 0x0f, 0x6f, 0x4a, 0x2f, 0x80, 0x3e, 0xa3, 0x97,
	0x72, 0x1a, 0x26, 0x16, 0x47, 0xd4, 0x81, 0xea, 0x05, 0xf1, 0x93, 0x6c, 0x1e, 0xa9, 0xf1, 0x42,
	0xff, 0x46, 0xb3, 0x7f, 0x31, 0xa0, 0x75, 0x2c, 0xbb, 0x50, 0x93, 0xec, 0x40, 0x35, 0x8a, 0x67,
	0xaf, 0xb3, 0x61, 0xa6, 0x86, 0xc0, 0x29, 0xed, 0xf5, 0xb5, 0xab, 0x72, 0x2c, 0xed, 0x12, 0x86,
	0xc6, 0x15, 0x0c, 0x83, 0xf5, 0x18, 0x56, 0x24, 0x86, 0xcf, 0x73, 0x0c, 0x8b, 0x65, 0xdc, 0x15,
	0x7e, 0xd5, 0x15, 0xf8, 0xa1, 0x6f, 0xa1, 0x2d, 0x28, 0xc5, 0x0a, 0xf3, 0x92, 0x34, 0x6a, 0x0e,
	0xbb, 0xeb, 0x27, 0x8a, 0xaf, 0xdd, 0xb9, 0xd3, 0x39, 0xbc, 0x83, 0x8a, 0x24, 0x64, 0x07, 0xaa,
	0x7e, 0x34, 0xf3, 0x42, 0x75, 0x2b, 0x35, 0x56, 0xae, 0x53, 0x07, 0xaa, 0x34, 0x20, 0x5e, 0xb6,
	0x50, 0xa9, 0x21, 0x22, 0xe3, 0xc8, 0xa7, 0xd9, 0x4a, 0x89, 0xb3, 0xfd, 0x04, 0x60, 0xc2, 0x63,
	0x2f, 0x9c, 0xbd, 0xf1, 0x18, 0x47, 0x5b, 0x50, 0x93, 0xcf, 0x32, 0x4b, 0xeb, 0x19, 0x7d, 0x13,
	0x2b, 0xcb, 0xfe, 0x4b, 0x87, 0xcd, 0x1d, 0xe2, 0xfb, 0x98, 0xa6, 0x4d, 0x62, 0x7a, 0x9e, 0x50,
	0xc6, 0xd1, 0x00, 0x6a, 0x4e, 0x8a, 0x91, 0x26, 0x31, 0xda, 0x5a, 0x3d, 0x31, 0xac, 0xa2, 0x90,
	0xad, 0x96, 0x5a, 0x97, 0xd1, 0x1b, 0x79, 0xb4, 0xe8, 0x4f, 0x2d, 0x39, 0x82, 0xca, 0x82, 0xf0,
	0xb9, 0x2a, 0x5d, 0x9e, 0x45, 0x5d, 0x01, 0xe5, 0xf3, 0xc8, 0x55, 0xb5, 0x2b, 0x2b, 0x93, 0x8d,
	0x6a, 0x2e, 0x1b, 0x23, 0xa8, 0xcf, 0x29, 0x71, 0x69, 0xcc, 0xac, 0x9a, 0x24, 0xd1, 0xb3, 0xfc,
	0x91, 0x15, 0x1d, 0x0c, 0x76, 0xd3, 0xe0, 0x94, 0x3b, 0xd9, 0x55, 0x51, 0xc3, 0x34, 0x72, 0x2f,
	0xa5, 0x2e, 0xb4, 0xb0, 0x3c, 0x77, 0x8f, 0xa1, 0x55, 0x0c, 0x5e, 0x31, 0xc1, 0x67, 0xc5, 0x09,
	0x36, 0x87, 0x9d, 0xfc, 0xe5, 0x1c, 0xe2, 0xe2, 0x5c, 0xff, 0xd6, 0xa0, 0x53, 0xae, 0x89, 0x2d,
	0xa2, 0x90, 0x51, 0xf1, 0xbc, 0x13, 0xb9, 0x54, 0xe6, 0xae, 0x62, 0x79, 0x46, 0xe3, 0xbc, 0x31,
	0x5d, 0x36, 0xf6, 0xf9, 0xba, 0xc6, 0xd2, 0x24, 0xb7, 0x74, 0x66, 0x7c, 0xd0, 0xce, 0xf6, 0xc1,
	0x7c, 0xeb, 0x05, 0x14, 0x93, 0x70, 0x46, 0x51, 0x0f, 0x9a, 0xa7, 0x71, 0x14, 0x8c, 0x17, 0x91,
	0x33, 0x3f, 0x98, 0x28, 0xed, 0x28, 0xba, 0xd0, 0x43, 0x30, 0x79, 0x94, 0x7d, 0xd7, 0xe5, 0xf7,
	0xdc, 0x61, 0xbf, 0xd7, 0xc0, 0x14, 0x8b, 0xf3, 0x5d, 0x42, 0x63, 0xb9, 0x26, 0x31, 0x3d, 0x55,
	0x1a, 0x64, 0xe2, 0xd4, 0x10, 0xcb, 0x1d, 0x90, 0x9f, 0x45, 0xd4, 0x71, 0xe4, 0x85, 0x9c, 0xa9,
	0x2c, 0x65, 0x27, 0x7a, 0x0c, 0xe0, 0x85, 0x9c, 0xc6, 0x17, 0xc4, 0x3f, 0x98, 0x48, 0x08, 0x0c,
	0x5c, 0xf0, 0xa0, 0xaf, 0xc0, 0xe4, 0x59, 0xd9, 0x92, 0x69, 0xcd, 0xe1, 0x66, 0xde, 0xea, 0xb2,
	0x23, 0x9c, 0x47, 0x09, 0x3c, 0x85, 0xa0, 0x49, 0x0a, 0xb6, 0xb0, 0x3c, 0xdb, 0xbf, 0xe9, 0xd0,
	0x96, 0xc5, 0x8a, 0xa7, 0x3f, 0xe4, 0xaa, 0xbc, 0xca, 0x39, 0x61, 0x48, 0x4e, 0x7c, 0x96, 0x87,
	0x5d, 0x2d, 0x60, 0x0d, 0x1f, 0xbe, 0x80, 0xfa, 0x79, 0x42, 0x63, 0x8f, 0x32, 0x25, 0xba, 0x9b,
	0x65, 0x99, 0x93, 0x69, 0x70, 0x16, 0xd3, 0x7d, 0x71, 0x2b, 0x55, 0xd6, 0xcb, 0xd8, 0xef, 0x1a,
	0x7c, 0x5c, 0xa8, 0x4a, 0x71, 0x7d, 0x0b, 0x6a, 0xa7, 0x31, 0x09, 0x94, 0xe4, 0xb4, 0xb0, 0xb2,
	0xd0, 0x18, 0x1a, 0x01, 0xe5, 0x44, 0x08, 0xab, 0x22, 0xfc, 0xd3, 0x95, 0xcd, 0x29, 0xb6, 0x1f,
	0xa8, 0xd8, 0xb4, 0xbd, 0xe5, 0xd5, 0xee, 0x4b, 0xb8, 0x57, 0xfa, 0xf4, 0xaf, 0x2a, 0x7e, 0x00,
	0xf7, 0x77, 0x22, 0xdf, 0xa7, 0x0e, 0x3f, 0xa0, 0x3c, 0xf6, 0x1c, 0xa6, 0xb0, 0xb4, 0x7f, 0xd5,
	0x60, 0xeb, 0xea, 0x17, 0xd5, 0xcf, 0x36, 0xd4, 0x83, 0xd4, 0xa5, 0x06, 0xdd, 0x2f, 0xec, 0xe9,
	0xca, 0x2b, 0x83, 0x63, 0x72, 0xe9, 0x47, 0xc4, 0xc5, 0xd9, 0xc5, 0xee, 0x53, 0xa8, 0x2b, 0x9f,
	0xa0, 0xec, 0x22, 0x8e, 0x84, 0xdc, 0xd1, 0x24, 0xcd, 0xd8, 0xc2, 0x05, 0x8f, 0x3d, 0x02, 0xb4,
	0x33, 0xa7, 0xce, 0xd9, 0x2e, 0x25, 0x3e, 0x9f, 0xff, 0x47, 0xb2, 0xd9, 0x7f, 0x68, 0xb0, 0x59,
	0x4a, 0xb3, 0x6c, 0xa6, 0xc6, 0x38, 0xe1, 0xea, 0xe5, 0x8d, 0x92, 0x98, 0x5e, 0x0f, 0x1f, 0xa4,
	0xe6, 0x44, 0xde, 0xc0, 0xea, 0x26, 0xb2, 0x04, 0x20, 0x8c, 0x91, 0x59, 0x06, 0x70, 0x66, 0x0a,
	0x61, 0x90, 0x3f, 0x06, 0x28, 0x27, 0x9e, 0xcf, 0x94, 0x24, 0x15, 0x5d, 0xf6, 0x40, 0xd2, 0x6d,
	0x99, 0x13, 0x35, 0xa1, 0x7e, 0x72, 0xb8, 0x7f, 0x78, 0xf4, 0xfd, 0x61, 0xfb, 0x23, 0x54, 0x03,
	0xfd, 0x68, 0xbf, 0xad, 0x21, 0x13, 0xaa, 0x63, 0x8c, 0x8f, 0x70, 0x5b, 0x1f, 0xfe, 0x00, 0x8d,
	0x4c, 0x07, 0xd1, 0x11, 0xb4, 0x8a, 0xba, 0x88, 0x1e, 0xdd, 0xf8, 0x87, 0xa0, 0xfb, 0xf8, 0x66,
	0x39, 0xfd, 0x52, 0x1b, 0xbe, 0x81, 0x8a, 0xfc, 0x21, 0x31, 0x02, 0x73, 0xc9, 0x3f, 0xd4, 0x5d,
	0xbf, 0x71, 0xdd, 0x4f, 0x6e, 0x20, 0xec, 0xf0, 0xbd, 0x06, 0xcd, 0x91, 0x47, 0x66, 0x61, 0xc4,
	0xb8, 0xe7, 0x30, 0xb4, 0x07, 0xcd, 0x02, 0xa4, 0xe8, 0xe1, 0x1a, 0xa4, 0xd3, 0xcc, 0x8f, 0x6e,
	0x9c, 0x03, 0x9a, 0xc0, 0x46, 0x99, 0x6a, 0xe8, 0xd3, 0xf5, 0x24, 0x4c, 0x33, 0xf6, 0x6e, 0x63,
	0xe9, 0xf0, 0x04, 0xcc, 0xb7, 0x31, 0x09, 0xd9, 0x69, 0x14, 0x07, 0x68, 0x17, 0xee, 0x2d, 0x8d,
	0xff, 0x87, 0xc3, 0x8f, 0x70, 0xbf, 0x94, 0x49, 0x80, 0xbf, 0x4d, 0x9c, 0xb3, 0xbb, 0x81, 0x79,
	0xbb, 0xf5, 0x0e, 0x06, 0x2f, 0xb3, 0xef, 0xd3, 0x9a, 0xfc, 0x87, 0xe5, 0xf9, 0x3f, 0x01, 0x00,
	0x00, 0xff, 0xff, 0xfc, 0xf3, 0x6d, 0x5e, 0xc1, 0x0c, 0x00, 0x00,
}

// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConn

// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion4

// ResourceClient is the client API for Resource service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ResourceClient interface {
	CallResource(ctx context.Context, in *CallResourceRequest, opts ...grpc.CallOption) (Resource_CallResourceClient, error)
}

type resourceClient struct {
	cc *grpc.ClientConn
}

func NewResourceClient(cc *grpc.ClientConn) ResourceClient {
	return &resourceClient{cc}
}

func (c *resourceClient) CallResource(ctx context.Context, in *CallResourceRequest, opts ...grpc.CallOption) (Resource_CallResourceClient, error) {
	stream, err := c.cc.NewStream(ctx, &_Resource_serviceDesc.Streams[0], "/pluginv2.Resource/CallResource", opts...)
	if err != nil {
		return nil, err
	}
	x := &resourceCallResourceClient{stream}
	if err := x.ClientStream.SendMsg(in); err != nil {
		return nil, err
	}
	if err := x.ClientStream.CloseSend(); err != nil {
		return nil, err
	}
	return x, nil
}

type Resource_CallResourceClient interface {
	Recv() (*CallResourceResponse, error)
	grpc.ClientStream
}

type resourceCallResourceClient struct {
	grpc.ClientStream
}

func (x *resourceCallResourceClient) Recv() (*CallResourceResponse, error) {
	m := new(CallResourceResponse)
	if err := x.ClientStream.RecvMsg(m); err != nil {
		return nil, err
	}
	return m, nil
}

// ResourceServer is the server API for Resource service.
type ResourceServer interface {
	CallResource(*CallResourceRequest, Resource_CallResourceServer) error
}

// UnimplementedResourceServer can be embedded to have forward compatible implementations.
type UnimplementedResourceServer struct {
}

func (*UnimplementedResourceServer) CallResource(req *CallResourceRequest, srv Resource_CallResourceServer) error {
	return status.Errorf(codes.Unimplemented, "method CallResource not implemented")
}

func RegisterResourceServer(s *grpc.Server, srv ResourceServer) {
	s.RegisterService(&_Resource_serviceDesc, srv)
}

func _Resource_CallResource_Handler(srv interface{}, stream grpc.ServerStream) error {
	m := new(CallResourceRequest)
	if err := stream.RecvMsg(m); err != nil {
		return err
	}
	return srv.(ResourceServer).CallResource(m, &resourceCallResourceServer{stream})
}

type Resource_CallResourceServer interface {
	Send(*CallResourceResponse) error
	grpc.ServerStream
}

type resourceCallResourceServer struct {
	grpc.ServerStream
}

func (x *resourceCallResourceServer) Send(m *CallResourceResponse) error {
	return x.ServerStream.SendMsg(m)
}

var _Resource_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pluginv2.Resource",
	HandlerType: (*ResourceServer)(nil),
	Methods:     []grpc.MethodDesc{},
	Streams: []grpc.StreamDesc{
		{
			StreamName:    "CallResource",
			Handler:       _Resource_CallResource_Handler,
			ServerStreams: true,
		},
	},
	Metadata: "backend.proto",
}

// DataClient is the client API for Data service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type DataClient interface {
	QueryData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error)
}

type dataClient struct {
	cc *grpc.ClientConn
}

func NewDataClient(cc *grpc.ClientConn) DataClient {
	return &dataClient{cc}
}

func (c *dataClient) QueryData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error) {
	out := new(QueryDataResponse)
	err := c.cc.Invoke(ctx, "/pluginv2.Data/QueryData", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// DataServer is the server API for Data service.
type DataServer interface {
	QueryData(context.Context, *QueryDataRequest) (*QueryDataResponse, error)
}

// UnimplementedDataServer can be embedded to have forward compatible implementations.
type UnimplementedDataServer struct {
}

func (*UnimplementedDataServer) QueryData(ctx context.Context, req *QueryDataRequest) (*QueryDataResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method QueryData not implemented")
}

func RegisterDataServer(s *grpc.Server, srv DataServer) {
	s.RegisterService(&_Data_serviceDesc, srv)
}

func _Data_QueryData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryDataRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(DataServer).QueryData(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pluginv2.Data/QueryData",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(DataServer).QueryData(ctx, req.(*QueryDataRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _Data_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pluginv2.Data",
	HandlerType: (*DataServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "QueryData",
			Handler:    _Data_QueryData_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "backend.proto",
}

// DiagnosticsClient is the client API for Diagnostics service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type DiagnosticsClient interface {
	CheckHealth(ctx context.Context, in *CheckHealthRequest, opts ...grpc.CallOption) (*CheckHealthResponse, error)
	CollectMetrics(ctx context.Context, in *CollectMetricsRequest, opts ...grpc.CallOption) (*CollectMetricsResponse, error)
}

type diagnosticsClient struct {
	cc *grpc.ClientConn
}

func NewDiagnosticsClient(cc *grpc.ClientConn) DiagnosticsClient {
	return &diagnosticsClient{cc}
}

func (c *diagnosticsClient) CheckHealth(ctx context.Context, in *CheckHealthRequest, opts ...grpc.CallOption) (*CheckHealthResponse, error) {
	out := new(CheckHealthResponse)
	err := c.cc.Invoke(ctx, "/pluginv2.Diagnostics/CheckHealth", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

func (c *diagnosticsClient) CollectMetrics(ctx context.Context, in *CollectMetricsRequest, opts ...grpc.CallOption) (*CollectMetricsResponse, error) {
	out := new(CollectMetricsResponse)
	err := c.cc.Invoke(ctx, "/pluginv2.Diagnostics/CollectMetrics", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// DiagnosticsServer is the server API for Diagnostics service.
type DiagnosticsServer interface {
	CheckHealth(context.Context, *CheckHealthRequest) (*CheckHealthResponse, error)
	CollectMetrics(context.Context, *CollectMetricsRequest) (*CollectMetricsResponse, error)
}

// UnimplementedDiagnosticsServer can be embedded to have forward compatible implementations.
type UnimplementedDiagnosticsServer struct {
}

func (*UnimplementedDiagnosticsServer) CheckHealth(ctx context.Context, req *CheckHealthRequest) (*CheckHealthResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CheckHealth not implemented")
}
func (*UnimplementedDiagnosticsServer) CollectMetrics(ctx context.Context, req *CollectMetricsRequest) (*CollectMetricsResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method CollectMetrics not implemented")
}

func RegisterDiagnosticsServer(s *grpc.Server, srv DiagnosticsServer) {
	s.RegisterService(&_Diagnostics_serviceDesc, srv)
}

func _Diagnostics_CheckHealth_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CheckHealthRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(DiagnosticsServer).CheckHealth(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pluginv2.Diagnostics/CheckHealth",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(DiagnosticsServer).CheckHealth(ctx, req.(*CheckHealthRequest))
	}
	return interceptor(ctx, in, info, handler)
}

func _Diagnostics_CollectMetrics_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(CollectMetricsRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(DiagnosticsServer).CollectMetrics(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pluginv2.Diagnostics/CollectMetrics",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(DiagnosticsServer).CollectMetrics(ctx, req.(*CollectMetricsRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _Diagnostics_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pluginv2.Diagnostics",
	HandlerType: (*DiagnosticsServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "CheckHealth",
			Handler:    _Diagnostics_CheckHealth_Handler,
		},
		{
			MethodName: "CollectMetrics",
			Handler:    _Diagnostics_CollectMetrics_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "backend.proto",
}

// TransformClient is the client API for Transform service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type TransformClient interface {
	TransformData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error)
}

type transformClient struct {
	cc *grpc.ClientConn
}

func NewTransformClient(cc *grpc.ClientConn) TransformClient {
	return &transformClient{cc}
}

func (c *transformClient) TransformData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error) {
	out := new(QueryDataResponse)
	err := c.cc.Invoke(ctx, "/pluginv2.Transform/TransformData", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// TransformServer is the server API for Transform service.
type TransformServer interface {
	TransformData(context.Context, *QueryDataRequest) (*QueryDataResponse, error)
}

// UnimplementedTransformServer can be embedded to have forward compatible implementations.
type UnimplementedTransformServer struct {
}

func (*UnimplementedTransformServer) TransformData(ctx context.Context, req *QueryDataRequest) (*QueryDataResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method TransformData not implemented")
}

func RegisterTransformServer(s *grpc.Server, srv TransformServer) {
	s.RegisterService(&_Transform_serviceDesc, srv)
}

func _Transform_TransformData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryDataRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(TransformServer).TransformData(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pluginv2.Transform/TransformData",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(TransformServer).TransformData(ctx, req.(*QueryDataRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _Transform_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pluginv2.Transform",
	HandlerType: (*TransformServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "TransformData",
			Handler:    _Transform_TransformData_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "backend.proto",
}

// TransformDataCallBackClient is the client API for TransformDataCallBack service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type TransformDataCallBackClient interface {
	QueryData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error)
}

type transformDataCallBackClient struct {
	cc *grpc.ClientConn
}

func NewTransformDataCallBackClient(cc *grpc.ClientConn) TransformDataCallBackClient {
	return &transformDataCallBackClient{cc}
}

func (c *transformDataCallBackClient) QueryData(ctx context.Context, in *QueryDataRequest, opts ...grpc.CallOption) (*QueryDataResponse, error) {
	out := new(QueryDataResponse)
	err := c.cc.Invoke(ctx, "/pluginv2.TransformDataCallBack/QueryData", in, out, opts...)
	if err != nil {
		return nil, err
	}
	return out, nil
}

// TransformDataCallBackServer is the server API for TransformDataCallBack service.
type TransformDataCallBackServer interface {
	QueryData(context.Context, *QueryDataRequest) (*QueryDataResponse, error)
}

// UnimplementedTransformDataCallBackServer can be embedded to have forward compatible implementations.
type UnimplementedTransformDataCallBackServer struct {
}

func (*UnimplementedTransformDataCallBackServer) QueryData(ctx context.Context, req *QueryDataRequest) (*QueryDataResponse, error) {
	return nil, status.Errorf(codes.Unimplemented, "method QueryData not implemented")
}

func RegisterTransformDataCallBackServer(s *grpc.Server, srv TransformDataCallBackServer) {
	s.RegisterService(&_TransformDataCallBack_serviceDesc, srv)
}

func _TransformDataCallBack_QueryData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
	in := new(QueryDataRequest)
	if err := dec(in); err != nil {
		return nil, err
	}
	if interceptor == nil {
		return srv.(TransformDataCallBackServer).QueryData(ctx, in)
	}
	info := &grpc.UnaryServerInfo{
		Server:     srv,
		FullMethod: "/pluginv2.TransformDataCallBack/QueryData",
	}
	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
		return srv.(TransformDataCallBackServer).QueryData(ctx, req.(*QueryDataRequest))
	}
	return interceptor(ctx, in, info, handler)
}

var _TransformDataCallBack_serviceDesc = grpc.ServiceDesc{
	ServiceName: "pluginv2.TransformDataCallBack",
	HandlerType: (*TransformDataCallBackServer)(nil),
	Methods: []grpc.MethodDesc{
		{
			MethodName: "QueryData",
			Handler:    _TransformDataCallBack_QueryData_Handler,
		},
	},
	Streams:  []grpc.StreamDesc{},
	Metadata: "backend.proto",
}
