// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.7
// 	protoc        (unknown)
// source: entity/agent-gateway/gateway/v1/gateway.proto

package gatewayv1

import (
	v1 "github.com/tidbcloud/aisupport/packages/sdk-go/contracts/entity/agent-gateway/session/v1"
	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 TaskEventType int32

const (
	TaskEventType_TASK_EVENT_TYPE_UNSPECIFIED      TaskEventType = 0
	TaskEventType_TASK_EVENT_TYPE_STARTING         TaskEventType = 1
	TaskEventType_TASK_EVENT_TYPE_AGENT_COMMENTARY TaskEventType = 2
	TaskEventType_TASK_EVENT_TYPE_FINISHED         TaskEventType = 3
)

// Enum value maps for TaskEventType.
var (
	TaskEventType_name = map[int32]string{
		0: "TASK_EVENT_TYPE_UNSPECIFIED",
		1: "TASK_EVENT_TYPE_STARTING",
		2: "TASK_EVENT_TYPE_AGENT_COMMENTARY",
		3: "TASK_EVENT_TYPE_FINISHED",
	}
	TaskEventType_value = map[string]int32{
		"TASK_EVENT_TYPE_UNSPECIFIED":      0,
		"TASK_EVENT_TYPE_STARTING":         1,
		"TASK_EVENT_TYPE_AGENT_COMMENTARY": 2,
		"TASK_EVENT_TYPE_FINISHED":         3,
	}
)

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

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

func (TaskEventType) Descriptor() protoreflect.EnumDescriptor {
	return file_entity_agent_gateway_gateway_v1_gateway_proto_enumTypes[0].Descriptor()
}

func (TaskEventType) Type() protoreflect.EnumType {
	return &file_entity_agent_gateway_gateway_v1_gateway_proto_enumTypes[0]
}

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

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

type LarkMessage struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	MessageId     string                 `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
	RootId        string                 `protobuf:"bytes,2,opt,name=root_id,json=rootId,proto3" json:"root_id,omitempty"`
	ThreadId      string                 `protobuf:"bytes,3,opt,name=thread_id,json=threadId,proto3" json:"thread_id,omitempty"`
	ChatId        string                 `protobuf:"bytes,4,opt,name=chat_id,json=chatId,proto3" json:"chat_id,omitempty"`
	ChatType      string                 `protobuf:"bytes,5,opt,name=chat_type,json=chatType,proto3" json:"chat_type,omitempty"`
	MessageType   string                 `protobuf:"bytes,6,opt,name=message_type,json=messageType,proto3" json:"message_type,omitempty"`
	Content       string                 `protobuf:"bytes,7,opt,name=content,proto3" json:"content,omitempty"`
	SenderType    string                 `protobuf:"bytes,8,opt,name=sender_type,json=senderType,proto3" json:"sender_type,omitempty"`
	SenderEmail   string                 `protobuf:"bytes,9,opt,name=sender_email,json=senderEmail,proto3" json:"sender_email,omitempty"`
	Mentions      []*LarkMention         `protobuf:"bytes,10,rep,name=mentions,proto3" json:"mentions,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*LarkMessage) ProtoMessage() {}

func (x *LarkMessage) ProtoReflect() protoreflect.Message {
	mi := &file_entity_agent_gateway_gateway_v1_gateway_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 LarkMessage.ProtoReflect.Descriptor instead.
func (*LarkMessage) Descriptor() ([]byte, []int) {
	return file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescGZIP(), []int{0}
}

func (x *LarkMessage) GetMessageId() string {
	if x != nil {
		return x.MessageId
	}
	return ""
}

func (x *LarkMessage) GetRootId() string {
	if x != nil {
		return x.RootId
	}
	return ""
}

func (x *LarkMessage) GetThreadId() string {
	if x != nil {
		return x.ThreadId
	}
	return ""
}

func (x *LarkMessage) GetChatId() string {
	if x != nil {
		return x.ChatId
	}
	return ""
}

func (x *LarkMessage) GetChatType() string {
	if x != nil {
		return x.ChatType
	}
	return ""
}

func (x *LarkMessage) GetMessageType() string {
	if x != nil {
		return x.MessageType
	}
	return ""
}

func (x *LarkMessage) GetContent() string {
	if x != nil {
		return x.Content
	}
	return ""
}

func (x *LarkMessage) GetSenderType() string {
	if x != nil {
		return x.SenderType
	}
	return ""
}

func (x *LarkMessage) GetSenderEmail() string {
	if x != nil {
		return x.SenderEmail
	}
	return ""
}

func (x *LarkMessage) GetMentions() []*LarkMention {
	if x != nil {
		return x.Mentions
	}
	return nil
}

type LarkMention struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Key           string                 `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
	OpenId        string                 `protobuf:"bytes,2,opt,name=open_id,json=openId,proto3" json:"open_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*LarkMention) ProtoMessage() {}

func (x *LarkMention) ProtoReflect() protoreflect.Message {
	mi := &file_entity_agent_gateway_gateway_v1_gateway_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 LarkMention.ProtoReflect.Descriptor instead.
func (*LarkMention) Descriptor() ([]byte, []int) {
	return file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescGZIP(), []int{1}
}

func (x *LarkMention) GetKey() string {
	if x != nil {
		return x.Key
	}
	return ""
}

func (x *LarkMention) GetOpenId() string {
	if x != nil {
		return x.OpenId
	}
	return ""
}

type TaskEvent struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Type          TaskEventType          `protobuf:"varint,1,opt,name=type,proto3,enum=aisupport.agent_gateway.entity.gateway.v1.TaskEventType" json:"type,omitempty"`
	TaskId        string                 `protobuf:"bytes,2,opt,name=task_id,json=taskId,proto3" json:"task_id,omitempty"`
	SessionId     string                 `protobuf:"bytes,3,opt,name=session_id,json=sessionId,proto3" json:"session_id,omitempty"`
	TaskSource    *v1.TaskSource         `protobuf:"bytes,5,opt,name=task_source,json=taskSource,proto3" json:"task_source,omitempty"`
	Status        v1.TaskStatus          `protobuf:"varint,6,opt,name=status,proto3,enum=aisupport.agent_gateway.entity.session.v1.TaskStatus" json:"status,omitempty"`
	Content       string                 `protobuf:"bytes,7,opt,name=content,proto3" json:"content,omitempty"`
	SessionSource *v1.SessionSource      `protobuf:"bytes,8,opt,name=session_source,json=sessionSource,proto3" json:"session_source,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*TaskEvent) ProtoMessage() {}

func (x *TaskEvent) ProtoReflect() protoreflect.Message {
	mi := &file_entity_agent_gateway_gateway_v1_gateway_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 TaskEvent.ProtoReflect.Descriptor instead.
func (*TaskEvent) Descriptor() ([]byte, []int) {
	return file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescGZIP(), []int{2}
}

func (x *TaskEvent) GetType() TaskEventType {
	if x != nil {
		return x.Type
	}
	return TaskEventType_TASK_EVENT_TYPE_UNSPECIFIED
}

func (x *TaskEvent) GetTaskId() string {
	if x != nil {
		return x.TaskId
	}
	return ""
}

func (x *TaskEvent) GetSessionId() string {
	if x != nil {
		return x.SessionId
	}
	return ""
}

func (x *TaskEvent) GetTaskSource() *v1.TaskSource {
	if x != nil {
		return x.TaskSource
	}
	return nil
}

func (x *TaskEvent) GetStatus() v1.TaskStatus {
	if x != nil {
		return x.Status
	}
	return v1.TaskStatus(0)
}

func (x *TaskEvent) GetContent() string {
	if x != nil {
		return x.Content
	}
	return ""
}

func (x *TaskEvent) GetSessionSource() *v1.SessionSource {
	if x != nil {
		return x.SessionSource
	}
	return nil
}

type ApplicationMessage struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	MessageId     string                 `protobuf:"bytes,1,opt,name=message_id,json=messageId,proto3" json:"message_id,omitempty"`
	SessionKey    string                 `protobuf:"bytes,2,opt,name=session_key,json=sessionKey,proto3" json:"session_key,omitempty"`
	SenderEmail   string                 `protobuf:"bytes,3,opt,name=sender_email,json=senderEmail,proto3" json:"sender_email,omitempty"`
	Content       string                 `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ApplicationMessage) ProtoMessage() {}

func (x *ApplicationMessage) ProtoReflect() protoreflect.Message {
	mi := &file_entity_agent_gateway_gateway_v1_gateway_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 ApplicationMessage.ProtoReflect.Descriptor instead.
func (*ApplicationMessage) Descriptor() ([]byte, []int) {
	return file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescGZIP(), []int{3}
}

func (x *ApplicationMessage) GetMessageId() string {
	if x != nil {
		return x.MessageId
	}
	return ""
}

func (x *ApplicationMessage) GetSessionKey() string {
	if x != nil {
		return x.SessionKey
	}
	return ""
}

func (x *ApplicationMessage) GetSenderEmail() string {
	if x != nil {
		return x.SenderEmail
	}
	return ""
}

func (x *ApplicationMessage) GetContent() string {
	if x != nil {
		return x.Content
	}
	return ""
}

var File_entity_agent_gateway_gateway_v1_gateway_proto protoreflect.FileDescriptor

const file_entity_agent_gateway_gateway_v1_gateway_proto_rawDesc = "" +
	"\n" +
	"-entity/agent-gateway/gateway/v1/gateway.proto\x12)aisupport.agent_gateway.entity.gateway.v1\x1a4entity/agent-gateway/session/v1/message_source.proto\x1a-entity/agent-gateway/session/v1/session.proto\"\xed\x02\n" +
	"\vLarkMessage\x12\x1d\n" +
	"\n" +
	"message_id\x18\x01 \x01(\tR\tmessageId\x12\x17\n" +
	"\aroot_id\x18\x02 \x01(\tR\x06rootId\x12\x1b\n" +
	"\tthread_id\x18\x03 \x01(\tR\bthreadId\x12\x17\n" +
	"\achat_id\x18\x04 \x01(\tR\x06chatId\x12\x1b\n" +
	"\tchat_type\x18\x05 \x01(\tR\bchatType\x12!\n" +
	"\fmessage_type\x18\x06 \x01(\tR\vmessageType\x12\x18\n" +
	"\acontent\x18\a \x01(\tR\acontent\x12\x1f\n" +
	"\vsender_type\x18\b \x01(\tR\n" +
	"senderType\x12!\n" +
	"\fsender_email\x18\t \x01(\tR\vsenderEmail\x12R\n" +
	"\bmentions\x18\n" +
	" \x03(\v26.aisupport.agent_gateway.entity.gateway.v1.LarkMentionR\bmentions\"8\n" +
	"\vLarkMention\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x17\n" +
	"\aopen_id\x18\x02 \x01(\tR\x06openId\"\xb3\x03\n" +
	"\tTaskEvent\x12L\n" +
	"\x04type\x18\x01 \x01(\x0e28.aisupport.agent_gateway.entity.gateway.v1.TaskEventTypeR\x04type\x12\x17\n" +
	"\atask_id\x18\x02 \x01(\tR\x06taskId\x12\x1d\n" +
	"\n" +
	"session_id\x18\x03 \x01(\tR\tsessionId\x12V\n" +
	"\vtask_source\x18\x05 \x01(\v25.aisupport.agent_gateway.entity.session.v1.TaskSourceR\n" +
	"taskSource\x12M\n" +
	"\x06status\x18\x06 \x01(\x0e25.aisupport.agent_gateway.entity.session.v1.TaskStatusR\x06status\x12\x18\n" +
	"\acontent\x18\a \x01(\tR\acontent\x12_\n" +
	"\x0esession_source\x18\b \x01(\v28.aisupport.agent_gateway.entity.session.v1.SessionSourceR\rsessionSource\"\x91\x01\n" +
	"\x12ApplicationMessage\x12\x1d\n" +
	"\n" +
	"message_id\x18\x01 \x01(\tR\tmessageId\x12\x1f\n" +
	"\vsession_key\x18\x02 \x01(\tR\n" +
	"sessionKey\x12!\n" +
	"\fsender_email\x18\x03 \x01(\tR\vsenderEmail\x12\x18\n" +
	"\acontent\x18\x04 \x01(\tR\acontent*\x92\x01\n" +
	"\rTaskEventType\x12\x1f\n" +
	"\x1bTASK_EVENT_TYPE_UNSPECIFIED\x10\x00\x12\x1c\n" +
	"\x18TASK_EVENT_TYPE_STARTING\x10\x01\x12$\n" +
	" TASK_EVENT_TYPE_AGENT_COMMENTARY\x10\x02\x12\x1c\n" +
	"\x18TASK_EVENT_TYPE_FINISHED\x10\x03BdZbgithub.com/tidbcloud/aisupport/packages/sdk-go/contracts/entity/agent-gateway/gateway/v1;gatewayv1b\x06proto3"

var (
	file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescOnce sync.Once
	file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescData []byte
)

func file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescGZIP() []byte {
	file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescOnce.Do(func() {
		file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_entity_agent_gateway_gateway_v1_gateway_proto_rawDesc), len(file_entity_agent_gateway_gateway_v1_gateway_proto_rawDesc)))
	})
	return file_entity_agent_gateway_gateway_v1_gateway_proto_rawDescData
}

var file_entity_agent_gateway_gateway_v1_gateway_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_entity_agent_gateway_gateway_v1_gateway_proto_msgTypes = make([]protoimpl.MessageInfo, 4)
var file_entity_agent_gateway_gateway_v1_gateway_proto_goTypes = []any{
	(TaskEventType)(0),         // 0: aisupport.agent_gateway.entity.gateway.v1.TaskEventType
	(*LarkMessage)(nil),        // 1: aisupport.agent_gateway.entity.gateway.v1.LarkMessage
	(*LarkMention)(nil),        // 2: aisupport.agent_gateway.entity.gateway.v1.LarkMention
	(*TaskEvent)(nil),          // 3: aisupport.agent_gateway.entity.gateway.v1.TaskEvent
	(*ApplicationMessage)(nil), // 4: aisupport.agent_gateway.entity.gateway.v1.ApplicationMessage
	(*v1.TaskSource)(nil),      // 5: aisupport.agent_gateway.entity.session.v1.TaskSource
	(v1.TaskStatus)(0),         // 6: aisupport.agent_gateway.entity.session.v1.TaskStatus
	(*v1.SessionSource)(nil),   // 7: aisupport.agent_gateway.entity.session.v1.SessionSource
}
var file_entity_agent_gateway_gateway_v1_gateway_proto_depIdxs = []int32{
	2, // 0: aisupport.agent_gateway.entity.gateway.v1.LarkMessage.mentions:type_name -> aisupport.agent_gateway.entity.gateway.v1.LarkMention
	0, // 1: aisupport.agent_gateway.entity.gateway.v1.TaskEvent.type:type_name -> aisupport.agent_gateway.entity.gateway.v1.TaskEventType
	5, // 2: aisupport.agent_gateway.entity.gateway.v1.TaskEvent.task_source:type_name -> aisupport.agent_gateway.entity.session.v1.TaskSource
	6, // 3: aisupport.agent_gateway.entity.gateway.v1.TaskEvent.status:type_name -> aisupport.agent_gateway.entity.session.v1.TaskStatus
	7, // 4: aisupport.agent_gateway.entity.gateway.v1.TaskEvent.session_source:type_name -> aisupport.agent_gateway.entity.session.v1.SessionSource
	5, // [5:5] is the sub-list for method output_type
	5, // [5:5] is the sub-list for method input_type
	5, // [5:5] is the sub-list for extension type_name
	5, // [5:5] is the sub-list for extension extendee
	0, // [0:5] is the sub-list for field type_name
}

func init() { file_entity_agent_gateway_gateway_v1_gateway_proto_init() }
func file_entity_agent_gateway_gateway_v1_gateway_proto_init() {
	if File_entity_agent_gateway_gateway_v1_gateway_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_entity_agent_gateway_gateway_v1_gateway_proto_rawDesc), len(file_entity_agent_gateway_gateway_v1_gateway_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   4,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_entity_agent_gateway_gateway_v1_gateway_proto_goTypes,
		DependencyIndexes: file_entity_agent_gateway_gateway_v1_gateway_proto_depIdxs,
		EnumInfos:         file_entity_agent_gateway_gateway_v1_gateway_proto_enumTypes,
		MessageInfos:      file_entity_agent_gateway_gateway_v1_gateway_proto_msgTypes,
	}.Build()
	File_entity_agent_gateway_gateway_v1_gateway_proto = out.File
	file_entity_agent_gateway_gateway_v1_gateway_proto_goTypes = nil
	file_entity_agent_gateway_gateway_v1_gateway_proto_depIdxs = nil
}
