// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        v3.19.0
// source: rules.proto

package api

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

type Rule_Event int32

const (
	Rule_CCRFailure        Rule_Event = 0
	Rule_CCRSuccess        Rule_Event = 1
	Rule_ComplianceFailure Rule_Event = 2
	Rule_ComplianceSuccess Rule_Event = 3
)

// Enum value maps for Rule_Event.
var (
	Rule_Event_name = map[int32]string{
		0: "CCRFailure",
		1: "CCRSuccess",
		2: "ComplianceFailure",
		3: "ComplianceSuccess",
	}
	Rule_Event_value = map[string]int32{
		"CCRFailure":        0,
		"CCRSuccess":        1,
		"ComplianceFailure": 2,
		"ComplianceSuccess": 3,
	}
)

func (x Rule_Event) Enum() *Rule_Event {
	p := new(Rule_Event)
	*p = x
	return p
}

func (x Rule_Event) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (Rule_Event) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[0].Descriptor()
}

func (Rule_Event) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[0]
}

func (x Rule_Event) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use Rule_Event.Descriptor instead.
func (Rule_Event) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{4, 0}
}

type URLValidationResponse_Code int32

const (
	URLValidationResponse_OK                        URLValidationResponse_Code = 0  // we made the request and it succeeded with a 20x response
	URLValidationResponse_ERROR                     URLValidationResponse_Code = 1  // We made the request and it failed for any reason.
	URLValidationResponse_INVALID_URL               URLValidationResponse_Code = 4  // the url was not valid.
	URLValidationResponse_NOTIFICATIONS_UNAVAIALBLE URLValidationResponse_Code = 98 // we could not make the request due to capacity
	URLValidationResponse_INTERNAL_ERROR            URLValidationResponse_Code = 99
)

// Enum value maps for URLValidationResponse_Code.
var (
	URLValidationResponse_Code_name = map[int32]string{
		0:  "OK",
		1:  "ERROR",
		4:  "INVALID_URL",
		98: "NOTIFICATIONS_UNAVAIALBLE",
		99: "INTERNAL_ERROR",
	}
	URLValidationResponse_Code_value = map[string]int32{
		"OK":                        0,
		"ERROR":                     1,
		"INVALID_URL":               4,
		"NOTIFICATIONS_UNAVAIALBLE": 98,
		"INTERNAL_ERROR":            99,
	}
)

func (x URLValidationResponse_Code) Enum() *URLValidationResponse_Code {
	p := new(URLValidationResponse_Code)
	*p = x
	return p
}

func (x URLValidationResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (URLValidationResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[1].Descriptor()
}

func (URLValidationResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[1]
}

func (x URLValidationResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use URLValidationResponse_Code.Descriptor instead.
func (URLValidationResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{8, 0}
}

type RuleUpdateResponse_Code int32

const (
	RuleUpdateResponse_OK               RuleUpdateResponse_Code = 0
	RuleUpdateResponse_DUPLICATE_NAME   RuleUpdateResponse_Code = 1
	RuleUpdateResponse_NOT_FOUND        RuleUpdateResponse_Code = 2
	RuleUpdateResponse_VALIDATION_ERROR RuleUpdateResponse_Code = 4
	RuleUpdateResponse_INTERNAL_ERROR   RuleUpdateResponse_Code = 99
)

// Enum value maps for RuleUpdateResponse_Code.
var (
	RuleUpdateResponse_Code_name = map[int32]string{
		0:  "OK",
		1:  "DUPLICATE_NAME",
		2:  "NOT_FOUND",
		4:  "VALIDATION_ERROR",
		99: "INTERNAL_ERROR",
	}
	RuleUpdateResponse_Code_value = map[string]int32{
		"OK":               0,
		"DUPLICATE_NAME":   1,
		"NOT_FOUND":        2,
		"VALIDATION_ERROR": 4,
		"INTERNAL_ERROR":   99,
	}
)

func (x RuleUpdateResponse_Code) Enum() *RuleUpdateResponse_Code {
	p := new(RuleUpdateResponse_Code)
	*p = x
	return p
}

func (x RuleUpdateResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RuleUpdateResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[2].Descriptor()
}

func (RuleUpdateResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[2]
}

func (x RuleUpdateResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RuleUpdateResponse_Code.Descriptor instead.
func (RuleUpdateResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{10, 0}
}

type RuleDeleteResponse_Code int32

const (
	RuleDeleteResponse_DELETED        RuleDeleteResponse_Code = 0
	RuleDeleteResponse_NOT_FOUND      RuleDeleteResponse_Code = 2
	RuleDeleteResponse_INTERNAL_ERROR RuleDeleteResponse_Code = 99
)

// Enum value maps for RuleDeleteResponse_Code.
var (
	RuleDeleteResponse_Code_name = map[int32]string{
		0:  "DELETED",
		2:  "NOT_FOUND",
		99: "INTERNAL_ERROR",
	}
	RuleDeleteResponse_Code_value = map[string]int32{
		"DELETED":        0,
		"NOT_FOUND":      2,
		"INTERNAL_ERROR": 99,
	}
)

func (x RuleDeleteResponse_Code) Enum() *RuleDeleteResponse_Code {
	p := new(RuleDeleteResponse_Code)
	*p = x
	return p
}

func (x RuleDeleteResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RuleDeleteResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[3].Descriptor()
}

func (RuleDeleteResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[3]
}

func (x RuleDeleteResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RuleDeleteResponse_Code.Descriptor instead.
func (RuleDeleteResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{11, 0}
}

type RuleAddResponse_Code int32

const (
	RuleAddResponse_ADDED                 RuleAddResponse_Code = 0
	RuleAddResponse_DUPLICATE_NAME        RuleAddResponse_Code = 1
	RuleAddResponse_NOT_FOUND             RuleAddResponse_Code = 2
	RuleAddResponse_INVALID_ACTION_CONFIG RuleAddResponse_Code = 3
	RuleAddResponse_VALIDATION_ERROR      RuleAddResponse_Code = 4
	RuleAddResponse_INTERNAL_ERROR        RuleAddResponse_Code = 99
)

// Enum value maps for RuleAddResponse_Code.
var (
	RuleAddResponse_Code_name = map[int32]string{
		0:  "ADDED",
		1:  "DUPLICATE_NAME",
		2:  "NOT_FOUND",
		3:  "INVALID_ACTION_CONFIG",
		4:  "VALIDATION_ERROR",
		99: "INTERNAL_ERROR",
	}
	RuleAddResponse_Code_value = map[string]int32{
		"ADDED":                 0,
		"DUPLICATE_NAME":        1,
		"NOT_FOUND":             2,
		"INVALID_ACTION_CONFIG": 3,
		"VALIDATION_ERROR":      4,
		"INTERNAL_ERROR":        99,
	}
)

func (x RuleAddResponse_Code) Enum() *RuleAddResponse_Code {
	p := new(RuleAddResponse_Code)
	*p = x
	return p
}

func (x RuleAddResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RuleAddResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[4].Descriptor()
}

func (RuleAddResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[4]
}

func (x RuleAddResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RuleAddResponse_Code.Descriptor instead.
func (RuleAddResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{12, 0}
}

type RuleGetResponse_Code int32

const (
	RuleGetResponse_OK             RuleGetResponse_Code = 0
	RuleGetResponse_NOT_FOUND      RuleGetResponse_Code = 2
	RuleGetResponse_INTERNAL_ERROR RuleGetResponse_Code = 99
)

// Enum value maps for RuleGetResponse_Code.
var (
	RuleGetResponse_Code_name = map[int32]string{
		0:  "OK",
		2:  "NOT_FOUND",
		99: "INTERNAL_ERROR",
	}
	RuleGetResponse_Code_value = map[string]int32{
		"OK":             0,
		"NOT_FOUND":      2,
		"INTERNAL_ERROR": 99,
	}
)

func (x RuleGetResponse_Code) Enum() *RuleGetResponse_Code {
	p := new(RuleGetResponse_Code)
	*p = x
	return p
}

func (x RuleGetResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RuleGetResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[5].Descriptor()
}

func (RuleGetResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[5]
}

func (x RuleGetResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RuleGetResponse_Code.Descriptor instead.
func (RuleGetResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{13, 0}
}

type RuleListResponse_Code int32

const (
	RuleListResponse_OK             RuleListResponse_Code = 0
	RuleListResponse_INTERNAL_ERROR RuleListResponse_Code = 99
)

// Enum value maps for RuleListResponse_Code.
var (
	RuleListResponse_Code_name = map[int32]string{
		0:  "OK",
		99: "INTERNAL_ERROR",
	}
	RuleListResponse_Code_value = map[string]int32{
		"OK":             0,
		"INTERNAL_ERROR": 99,
	}
)

func (x RuleListResponse_Code) Enum() *RuleListResponse_Code {
	p := new(RuleListResponse_Code)
	*p = x
	return p
}

func (x RuleListResponse_Code) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (RuleListResponse_Code) Descriptor() protoreflect.EnumDescriptor {
	return file_rules_proto_enumTypes[6].Descriptor()
}

func (RuleListResponse_Code) Type() protoreflect.EnumType {
	return &file_rules_proto_enumTypes[6]
}

func (x RuleListResponse_Code) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use RuleListResponse_Code.Descriptor instead.
func (RuleListResponse_Code) EnumDescriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{14, 0}
}

type Empty struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Empty) Reset() {
	*x = Empty{}
	mi := &file_rules_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Empty) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Empty) ProtoMessage() {}

func (x *Empty) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Empty.ProtoReflect.Descriptor instead.
func (*Empty) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{0}
}

type SlackAlert struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Url           string                 `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SlackAlert) Reset() {
	*x = SlackAlert{}
	mi := &file_rules_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SlackAlert) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SlackAlert) ProtoMessage() {}

func (x *SlackAlert) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SlackAlert.ProtoReflect.Descriptor instead.
func (*SlackAlert) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{1}
}

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

type WebhookAlert struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Url           string                 `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *WebhookAlert) Reset() {
	*x = WebhookAlert{}
	mi := &file_rules_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *WebhookAlert) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*WebhookAlert) ProtoMessage() {}

func (x *WebhookAlert) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use WebhookAlert.ProtoReflect.Descriptor instead.
func (*WebhookAlert) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{2}
}

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

type ServiceNowAlert struct {
	state                protoimpl.MessageState `protogen:"open.v1"`
	Url                  string                 `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	SecretId             string                 `protobuf:"bytes,2,opt,name=secret_id,json=secretId,proto3" json:"secret_id,omitempty"`
	CriticalControlsOnly bool                   `protobuf:"varint,3,opt,name=critical_controls_only,json=criticalControlsOnly,proto3" json:"critical_controls_only,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

func (x *ServiceNowAlert) Reset() {
	*x = ServiceNowAlert{}
	mi := &file_rules_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ServiceNowAlert) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ServiceNowAlert) ProtoMessage() {}

func (x *ServiceNowAlert) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ServiceNowAlert.ProtoReflect.Descriptor instead.
func (*ServiceNowAlert) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{3}
}

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

func (x *ServiceNowAlert) GetSecretId() string {
	if x != nil {
		return x.SecretId
	}
	return ""
}

func (x *ServiceNowAlert) GetCriticalControlsOnly() bool {
	if x != nil {
		return x.CriticalControlsOnly
	}
	return false
}

type Rule struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Id    string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	Name  string                 `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Event Rule_Event             `protobuf:"varint,3,opt,name=event,proto3,enum=notifications.Rule_Event" json:"event,omitempty"`
	// Types that are valid to be assigned to Action:
	//
	//	*Rule_SlackAlert
	//	*Rule_WebhookAlert
	//	*Rule_ServiceNowAlert
	Action        isRule_Action `protobuf_oneof:"action"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Rule) Reset() {
	*x = Rule{}
	mi := &file_rules_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Rule) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Rule) ProtoMessage() {}

func (x *Rule) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Rule.ProtoReflect.Descriptor instead.
func (*Rule) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{4}
}

func (x *Rule) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

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

func (x *Rule) GetEvent() Rule_Event {
	if x != nil {
		return x.Event
	}
	return Rule_CCRFailure
}

func (x *Rule) GetAction() isRule_Action {
	if x != nil {
		return x.Action
	}
	return nil
}

func (x *Rule) GetSlackAlert() *SlackAlert {
	if x != nil {
		if x, ok := x.Action.(*Rule_SlackAlert); ok {
			return x.SlackAlert
		}
	}
	return nil
}

func (x *Rule) GetWebhookAlert() *WebhookAlert {
	if x != nil {
		if x, ok := x.Action.(*Rule_WebhookAlert); ok {
			return x.WebhookAlert
		}
	}
	return nil
}

func (x *Rule) GetServiceNowAlert() *ServiceNowAlert {
	if x != nil {
		if x, ok := x.Action.(*Rule_ServiceNowAlert); ok {
			return x.ServiceNowAlert
		}
	}
	return nil
}

type isRule_Action interface {
	isRule_Action()
}

type Rule_SlackAlert struct {
	SlackAlert *SlackAlert `protobuf:"bytes,4,opt,name=SlackAlert,proto3,oneof"`
}

type Rule_WebhookAlert struct {
	WebhookAlert *WebhookAlert `protobuf:"bytes,5,opt,name=WebhookAlert,proto3,oneof"`
}

type Rule_ServiceNowAlert struct {
	ServiceNowAlert *ServiceNowAlert `protobuf:"bytes,6,opt,name=ServiceNowAlert,proto3,oneof"`
}

func (*Rule_SlackAlert) isRule_Action() {}

func (*Rule_WebhookAlert) isRule_Action() {}

func (*Rule_ServiceNowAlert) isRule_Action() {}

type UsernamePassword struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Username      string                 `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	Password      string                 `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UsernamePassword) Reset() {
	*x = UsernamePassword{}
	mi := &file_rules_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *UsernamePassword) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UsernamePassword) ProtoMessage() {}

func (x *UsernamePassword) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UsernamePassword.ProtoReflect.Descriptor instead.
func (*UsernamePassword) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{5}
}

func (x *UsernamePassword) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}

func (x *UsernamePassword) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

type SecretId struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *SecretId) Reset() {
	*x = SecretId{}
	mi := &file_rules_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *SecretId) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*SecretId) ProtoMessage() {}

func (x *SecretId) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use SecretId.ProtoReflect.Descriptor instead.
func (*SecretId) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{6}
}

func (x *SecretId) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type URLValidationRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Url   string                 `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
	// Types that are valid to be assigned to Credentials:
	//
	//	*URLValidationRequest_UsernamePassword
	//	*URLValidationRequest_SecretId
	//	*URLValidationRequest_None
	Credentials   isURLValidationRequest_Credentials `protobuf_oneof:"credentials"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *URLValidationRequest) Reset() {
	*x = URLValidationRequest{}
	mi := &file_rules_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *URLValidationRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*URLValidationRequest) ProtoMessage() {}

func (x *URLValidationRequest) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use URLValidationRequest.ProtoReflect.Descriptor instead.
func (*URLValidationRequest) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{7}
}

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

func (x *URLValidationRequest) GetCredentials() isURLValidationRequest_Credentials {
	if x != nil {
		return x.Credentials
	}
	return nil
}

func (x *URLValidationRequest) GetUsernamePassword() *UsernamePassword {
	if x != nil {
		if x, ok := x.Credentials.(*URLValidationRequest_UsernamePassword); ok {
			return x.UsernamePassword
		}
	}
	return nil
}

func (x *URLValidationRequest) GetSecretId() *SecretId {
	if x != nil {
		if x, ok := x.Credentials.(*URLValidationRequest_SecretId); ok {
			return x.SecretId
		}
	}
	return nil
}

func (x *URLValidationRequest) GetNone() *Empty {
	if x != nil {
		if x, ok := x.Credentials.(*URLValidationRequest_None); ok {
			return x.None
		}
	}
	return nil
}

type isURLValidationRequest_Credentials interface {
	isURLValidationRequest_Credentials()
}

type URLValidationRequest_UsernamePassword struct {
	UsernamePassword *UsernamePassword `protobuf:"bytes,2,opt,name=username_password,json=usernamePassword,proto3,oneof"`
}

type URLValidationRequest_SecretId struct {
	SecretId *SecretId `protobuf:"bytes,3,opt,name=secret_id,json=secretId,proto3,oneof"`
}

type URLValidationRequest_None struct {
	None *Empty `protobuf:"bytes,4,opt,name=none,proto3,oneof"`
}

func (*URLValidationRequest_UsernamePassword) isURLValidationRequest_Credentials() {}

func (*URLValidationRequest_SecretId) isURLValidationRequest_Credentials() {}

func (*URLValidationRequest_None) isURLValidationRequest_Credentials() {}

type URLValidationResponse struct {
	state         protoimpl.MessageState     `protogen:"open.v1"`
	Code          URLValidationResponse_Code `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.URLValidationResponse_Code" json:"code,omitempty"`
	Messages      []string                   `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"` // unused but kept for consistency with other Rule api responses.
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *URLValidationResponse) Reset() {
	*x = URLValidationResponse{}
	mi := &file_rules_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *URLValidationResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*URLValidationResponse) ProtoMessage() {}

func (x *URLValidationResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[8]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use URLValidationResponse.ProtoReflect.Descriptor instead.
func (*URLValidationResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{8}
}

func (x *URLValidationResponse) GetCode() URLValidationResponse_Code {
	if x != nil {
		return x.Code
	}
	return URLValidationResponse_OK
}

func (x *URLValidationResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

type RuleIdentifier struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            string                 `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleIdentifier) Reset() {
	*x = RuleIdentifier{}
	mi := &file_rules_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleIdentifier) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleIdentifier) ProtoMessage() {}

func (x *RuleIdentifier) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[9]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleIdentifier.ProtoReflect.Descriptor instead.
func (*RuleIdentifier) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{9}
}

func (x *RuleIdentifier) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

type RuleUpdateResponse struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Code          RuleUpdateResponse_Code `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.RuleUpdateResponse_Code" json:"code,omitempty"`
	Messages      []string                `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleUpdateResponse) Reset() {
	*x = RuleUpdateResponse{}
	mi := &file_rules_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleUpdateResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleUpdateResponse) ProtoMessage() {}

func (x *RuleUpdateResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[10]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleUpdateResponse.ProtoReflect.Descriptor instead.
func (*RuleUpdateResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{10}
}

func (x *RuleUpdateResponse) GetCode() RuleUpdateResponse_Code {
	if x != nil {
		return x.Code
	}
	return RuleUpdateResponse_OK
}

func (x *RuleUpdateResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

type RuleDeleteResponse struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Code          RuleDeleteResponse_Code `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.RuleDeleteResponse_Code" json:"code,omitempty"`
	Messages      []string                `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleDeleteResponse) Reset() {
	*x = RuleDeleteResponse{}
	mi := &file_rules_proto_msgTypes[11]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleDeleteResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleDeleteResponse) ProtoMessage() {}

func (x *RuleDeleteResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[11]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleDeleteResponse.ProtoReflect.Descriptor instead.
func (*RuleDeleteResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{11}
}

func (x *RuleDeleteResponse) GetCode() RuleDeleteResponse_Code {
	if x != nil {
		return x.Code
	}
	return RuleDeleteResponse_DELETED
}

func (x *RuleDeleteResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

type RuleAddResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Code          RuleAddResponse_Code   `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.RuleAddResponse_Code" json:"code,omitempty"`
	Messages      []string               `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	Id            string                 `protobuf:"bytes,3,opt,name=id,proto3" json:"id,omitempty"`
	Rule          *Rule                  `protobuf:"bytes,4,opt,name=rule,proto3" json:"rule,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleAddResponse) Reset() {
	*x = RuleAddResponse{}
	mi := &file_rules_proto_msgTypes[12]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleAddResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleAddResponse) ProtoMessage() {}

func (x *RuleAddResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[12]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleAddResponse.ProtoReflect.Descriptor instead.
func (*RuleAddResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{12}
}

func (x *RuleAddResponse) GetCode() RuleAddResponse_Code {
	if x != nil {
		return x.Code
	}
	return RuleAddResponse_ADDED
}

func (x *RuleAddResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

func (x *RuleAddResponse) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

func (x *RuleAddResponse) GetRule() *Rule {
	if x != nil {
		return x.Rule
	}
	return nil
}

type RuleGetResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Code          RuleGetResponse_Code   `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.RuleGetResponse_Code" json:"code,omitempty"`
	Messages      []string               `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	Rule          *Rule                  `protobuf:"bytes,3,opt,name=rule,proto3" json:"rule,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleGetResponse) Reset() {
	*x = RuleGetResponse{}
	mi := &file_rules_proto_msgTypes[13]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleGetResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleGetResponse) ProtoMessage() {}

func (x *RuleGetResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[13]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleGetResponse.ProtoReflect.Descriptor instead.
func (*RuleGetResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{13}
}

func (x *RuleGetResponse) GetCode() RuleGetResponse_Code {
	if x != nil {
		return x.Code
	}
	return RuleGetResponse_OK
}

func (x *RuleGetResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

func (x *RuleGetResponse) GetRule() *Rule {
	if x != nil {
		return x.Rule
	}
	return nil
}

type RuleListResponse struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Code          RuleListResponse_Code  `protobuf:"varint,1,opt,name=code,proto3,enum=notifications.RuleListResponse_Code" json:"code,omitempty"`
	Messages      []string               `protobuf:"bytes,2,rep,name=messages,proto3" json:"messages,omitempty"`
	Rules         []*Rule                `protobuf:"bytes,3,rep,name=rules,proto3" json:"rules,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RuleListResponse) Reset() {
	*x = RuleListResponse{}
	mi := &file_rules_proto_msgTypes[14]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RuleListResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RuleListResponse) ProtoMessage() {}

func (x *RuleListResponse) ProtoReflect() protoreflect.Message {
	mi := &file_rules_proto_msgTypes[14]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RuleListResponse.ProtoReflect.Descriptor instead.
func (*RuleListResponse) Descriptor() ([]byte, []int) {
	return file_rules_proto_rawDescGZIP(), []int{14}
}

func (x *RuleListResponse) GetCode() RuleListResponse_Code {
	if x != nil {
		return x.Code
	}
	return RuleListResponse_OK
}

func (x *RuleListResponse) GetMessages() []string {
	if x != nil {
		return x.Messages
	}
	return nil
}

func (x *RuleListResponse) GetRules() []*Rule {
	if x != nil {
		return x.Rules
	}
	return nil
}

var File_rules_proto protoreflect.FileDescriptor

const file_rules_proto_rawDesc = "" +
	"\n" +
	"\vrules.proto\x12\rnotifications\"\a\n" +
	"\x05Empty\"\x1e\n" +
	"\n" +
	"SlackAlert\x12\x10\n" +
	"\x03url\x18\x01 \x01(\tR\x03url\" \n" +
	"\fWebhookAlert\x12\x10\n" +
	"\x03url\x18\x01 \x01(\tR\x03url\"v\n" +
	"\x0fServiceNowAlert\x12\x10\n" +
	"\x03url\x18\x01 \x01(\tR\x03url\x12\x1b\n" +
	"\tsecret_id\x18\x02 \x01(\tR\bsecretId\x124\n" +
	"\x16critical_controls_only\x18\x03 \x01(\bR\x14criticalControlsOnly\"\x88\x03\n" +
	"\x04Rule\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n" +
	"\x04name\x18\x02 \x01(\tR\x04name\x12/\n" +
	"\x05event\x18\x03 \x01(\x0e2\x19.notifications.Rule.EventR\x05event\x12;\n" +
	"\n" +
	"SlackAlert\x18\x04 \x01(\v2\x19.notifications.SlackAlertH\x00R\n" +
	"SlackAlert\x12A\n" +
	"\fWebhookAlert\x18\x05 \x01(\v2\x1b.notifications.WebhookAlertH\x00R\fWebhookAlert\x12J\n" +
	"\x0fServiceNowAlert\x18\x06 \x01(\v2\x1e.notifications.ServiceNowAlertH\x00R\x0fServiceNowAlert\"U\n" +
	"\x05Event\x12\x0e\n" +
	"\n" +
	"CCRFailure\x10\x00\x12\x0e\n" +
	"\n" +
	"CCRSuccess\x10\x01\x12\x15\n" +
	"\x11ComplianceFailure\x10\x02\x12\x15\n" +
	"\x11ComplianceSuccess\x10\x03B\b\n" +
	"\x06action\"J\n" +
	"\x10UsernamePassword\x12\x1a\n" +
	"\busername\x18\x01 \x01(\tR\busername\x12\x1a\n" +
	"\bpassword\x18\x02 \x01(\tR\bpassword\"\x1a\n" +
	"\bSecretId\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"\xeb\x01\n" +
	"\x14URLValidationRequest\x12\x10\n" +
	"\x03url\x18\x01 \x01(\tR\x03url\x12N\n" +
	"\x11username_password\x18\x02 \x01(\v2\x1f.notifications.UsernamePasswordH\x00R\x10usernamePassword\x126\n" +
	"\tsecret_id\x18\x03 \x01(\v2\x17.notifications.SecretIdH\x00R\bsecretId\x12*\n" +
	"\x04none\x18\x04 \x01(\v2\x14.notifications.EmptyH\x00R\x04noneB\r\n" +
	"\vcredentials\"\xd1\x01\n" +
	"\x15URLValidationResponse\x12=\n" +
	"\x04code\x18\x01 \x01(\x0e2).notifications.URLValidationResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\"]\n" +
	"\x04Code\x12\x06\n" +
	"\x02OK\x10\x00\x12\t\n" +
	"\x05ERROR\x10\x01\x12\x0f\n" +
	"\vINVALID_URL\x10\x04\x12\x1d\n" +
	"\x19NOTIFICATIONS_UNAVAIALBLE\x10b\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10c\" \n" +
	"\x0eRuleIdentifier\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\tR\x02id\"\xc9\x01\n" +
	"\x12RuleUpdateResponse\x12:\n" +
	"\x04code\x18\x01 \x01(\x0e2&.notifications.RuleUpdateResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\"[\n" +
	"\x04Code\x12\x06\n" +
	"\x02OK\x10\x00\x12\x12\n" +
	"\x0eDUPLICATE_NAME\x10\x01\x12\r\n" +
	"\tNOT_FOUND\x10\x02\x12\x14\n" +
	"\x10VALIDATION_ERROR\x10\x04\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10c\"\xa4\x01\n" +
	"\x12RuleDeleteResponse\x12:\n" +
	"\x04code\x18\x01 \x01(\x0e2&.notifications.RuleDeleteResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\"6\n" +
	"\x04Code\x12\v\n" +
	"\aDELETED\x10\x00\x12\r\n" +
	"\tNOT_FOUND\x10\x02\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10c\"\x9a\x02\n" +
	"\x0fRuleAddResponse\x127\n" +
	"\x04code\x18\x01 \x01(\x0e2#.notifications.RuleAddResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\x12\x0e\n" +
	"\x02id\x18\x03 \x01(\tR\x02id\x12'\n" +
	"\x04rule\x18\x04 \x01(\v2\x13.notifications.RuleR\x04rule\"y\n" +
	"\x04Code\x12\t\n" +
	"\x05ADDED\x10\x00\x12\x12\n" +
	"\x0eDUPLICATE_NAME\x10\x01\x12\r\n" +
	"\tNOT_FOUND\x10\x02\x12\x19\n" +
	"\x15INVALID_ACTION_CONFIG\x10\x03\x12\x14\n" +
	"\x10VALIDATION_ERROR\x10\x04\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10c\"\xc2\x01\n" +
	"\x0fRuleGetResponse\x127\n" +
	"\x04code\x18\x01 \x01(\x0e2#.notifications.RuleGetResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\x12'\n" +
	"\x04rule\x18\x03 \x01(\v2\x13.notifications.RuleR\x04rule\"1\n" +
	"\x04Code\x12\x06\n" +
	"\x02OK\x10\x00\x12\r\n" +
	"\tNOT_FOUND\x10\x02\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10c\"\xb7\x01\n" +
	"\x10RuleListResponse\x128\n" +
	"\x04code\x18\x01 \x01(\x0e2$.notifications.RuleListResponse.CodeR\x04code\x12\x1a\n" +
	"\bmessages\x18\x02 \x03(\tR\bmessages\x12)\n" +
	"\x05rules\x18\x03 \x03(\v2\x13.notifications.RuleR\x05rules\"\"\n" +
	"\x04Code\x12\x06\n" +
	"\x02OK\x10\x00\x12\x12\n" +
	"\x0eINTERNAL_ERROR\x10cB\aZ\x05.;apib\x06proto3"

var (
	file_rules_proto_rawDescOnce sync.Once
	file_rules_proto_rawDescData []byte
)

func file_rules_proto_rawDescGZIP() []byte {
	file_rules_proto_rawDescOnce.Do(func() {
		file_rules_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_rules_proto_rawDesc), len(file_rules_proto_rawDesc)))
	})
	return file_rules_proto_rawDescData
}

var file_rules_proto_enumTypes = make([]protoimpl.EnumInfo, 7)
var file_rules_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
var file_rules_proto_goTypes = []any{
	(Rule_Event)(0),                 // 0: notifications.Rule.Event
	(URLValidationResponse_Code)(0), // 1: notifications.URLValidationResponse.Code
	(RuleUpdateResponse_Code)(0),    // 2: notifications.RuleUpdateResponse.Code
	(RuleDeleteResponse_Code)(0),    // 3: notifications.RuleDeleteResponse.Code
	(RuleAddResponse_Code)(0),       // 4: notifications.RuleAddResponse.Code
	(RuleGetResponse_Code)(0),       // 5: notifications.RuleGetResponse.Code
	(RuleListResponse_Code)(0),      // 6: notifications.RuleListResponse.Code
	(*Empty)(nil),                   // 7: notifications.Empty
	(*SlackAlert)(nil),              // 8: notifications.SlackAlert
	(*WebhookAlert)(nil),            // 9: notifications.WebhookAlert
	(*ServiceNowAlert)(nil),         // 10: notifications.ServiceNowAlert
	(*Rule)(nil),                    // 11: notifications.Rule
	(*UsernamePassword)(nil),        // 12: notifications.UsernamePassword
	(*SecretId)(nil),                // 13: notifications.SecretId
	(*URLValidationRequest)(nil),    // 14: notifications.URLValidationRequest
	(*URLValidationResponse)(nil),   // 15: notifications.URLValidationResponse
	(*RuleIdentifier)(nil),          // 16: notifications.RuleIdentifier
	(*RuleUpdateResponse)(nil),      // 17: notifications.RuleUpdateResponse
	(*RuleDeleteResponse)(nil),      // 18: notifications.RuleDeleteResponse
	(*RuleAddResponse)(nil),         // 19: notifications.RuleAddResponse
	(*RuleGetResponse)(nil),         // 20: notifications.RuleGetResponse
	(*RuleListResponse)(nil),        // 21: notifications.RuleListResponse
}
var file_rules_proto_depIdxs = []int32{
	0,  // 0: notifications.Rule.event:type_name -> notifications.Rule.Event
	8,  // 1: notifications.Rule.SlackAlert:type_name -> notifications.SlackAlert
	9,  // 2: notifications.Rule.WebhookAlert:type_name -> notifications.WebhookAlert
	10, // 3: notifications.Rule.ServiceNowAlert:type_name -> notifications.ServiceNowAlert
	12, // 4: notifications.URLValidationRequest.username_password:type_name -> notifications.UsernamePassword
	13, // 5: notifications.URLValidationRequest.secret_id:type_name -> notifications.SecretId
	7,  // 6: notifications.URLValidationRequest.none:type_name -> notifications.Empty
	1,  // 7: notifications.URLValidationResponse.code:type_name -> notifications.URLValidationResponse.Code
	2,  // 8: notifications.RuleUpdateResponse.code:type_name -> notifications.RuleUpdateResponse.Code
	3,  // 9: notifications.RuleDeleteResponse.code:type_name -> notifications.RuleDeleteResponse.Code
	4,  // 10: notifications.RuleAddResponse.code:type_name -> notifications.RuleAddResponse.Code
	11, // 11: notifications.RuleAddResponse.rule:type_name -> notifications.Rule
	5,  // 12: notifications.RuleGetResponse.code:type_name -> notifications.RuleGetResponse.Code
	11, // 13: notifications.RuleGetResponse.rule:type_name -> notifications.Rule
	6,  // 14: notifications.RuleListResponse.code:type_name -> notifications.RuleListResponse.Code
	11, // 15: notifications.RuleListResponse.rules:type_name -> notifications.Rule
	16, // [16:16] is the sub-list for method output_type
	16, // [16:16] is the sub-list for method input_type
	16, // [16:16] is the sub-list for extension type_name
	16, // [16:16] is the sub-list for extension extendee
	0,  // [0:16] is the sub-list for field type_name
}

func init() { file_rules_proto_init() }
func file_rules_proto_init() {
	if File_rules_proto != nil {
		return
	}
	file_rules_proto_msgTypes[4].OneofWrappers = []any{
		(*Rule_SlackAlert)(nil),
		(*Rule_WebhookAlert)(nil),
		(*Rule_ServiceNowAlert)(nil),
	}
	file_rules_proto_msgTypes[7].OneofWrappers = []any{
		(*URLValidationRequest_UsernamePassword)(nil),
		(*URLValidationRequest_SecretId)(nil),
		(*URLValidationRequest_None)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_rules_proto_rawDesc), len(file_rules_proto_rawDesc)),
			NumEnums:      7,
			NumMessages:   15,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_rules_proto_goTypes,
		DependencyIndexes: file_rules_proto_depIdxs,
		EnumInfos:         file_rules_proto_enumTypes,
		MessageInfos:      file_rules_proto_msgTypes,
	}.Build()
	File_rules_proto = out.File
	file_rules_proto_goTypes = nil
	file_rules_proto_depIdxs = nil
}
