// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.28.0
// 	protoc        v3.20.0
// source: friend/friend_msg.proto

package pb

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

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 FriendBase struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UserId      string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId"`            // ID
	NickName    string `protobuf:"bytes,2,opt,name=NickName,proto3" json:"NickName"`        //昵称
	Level       int32  `protobuf:"varint,3,opt,name=level,proto3" json:"level"`             //等级
	Avatar      string `protobuf:"bytes,4,opt,name=avatar,proto3" json:"avatar"`            //头像
	Strength    int64  `protobuf:"varint,5,opt,name=strength,proto3" json:"strength"`       //战力
	ServerId    string `protobuf:"bytes,6,opt,name=serverId,proto3" json:"serverId"`        //服务编号
	OfflineTime int64  `protobuf:"varint,7,opt,name=offlineTime,proto3" json:"offlineTime"` //最近一次下线时间 -1在线
	IsApplied   bool   `protobuf:"varint,8,opt,name=isApplied,proto3" json:"isApplied"`     //是否已申请加好友
	IsZaned     bool   `protobuf:"varint,9,opt,name=isZaned,proto3" json:"isZaned"`         //是否已点赞
	IsGetZaned  bool   `protobuf:"varint,10,opt,name=isGetZaned,proto3" json:"isGetZaned"`  //是否已获赞
	HeroObjId   string `protobuf:"bytes,11,opt,name=heroObjId,proto3" json:"heroObjId"`     //助战英雄ID
	Score       int32  `protobuf:"varint,12,opt,name=score,proto3" json:"score"`            //助战分数
	UpdateTime  int64  `protobuf:"varint,13,opt,name=updateTime,proto3" json:"updateTime"`  //更新时间
}

func (x *FriendBase) Reset() {
	*x = FriendBase{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendBase) ProtoMessage() {}

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

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

func (x *FriendBase) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *FriendBase) GetNickName() string {
	if x != nil {
		return x.NickName
	}
	return ""
}

func (x *FriendBase) GetLevel() int32 {
	if x != nil {
		return x.Level
	}
	return 0
}

func (x *FriendBase) GetAvatar() string {
	if x != nil {
		return x.Avatar
	}
	return ""
}

func (x *FriendBase) GetStrength() int64 {
	if x != nil {
		return x.Strength
	}
	return 0
}

func (x *FriendBase) GetServerId() string {
	if x != nil {
		return x.ServerId
	}
	return ""
}

func (x *FriendBase) GetOfflineTime() int64 {
	if x != nil {
		return x.OfflineTime
	}
	return 0
}

func (x *FriendBase) GetIsApplied() bool {
	if x != nil {
		return x.IsApplied
	}
	return false
}

func (x *FriendBase) GetIsZaned() bool {
	if x != nil {
		return x.IsZaned
	}
	return false
}

func (x *FriendBase) GetIsGetZaned() bool {
	if x != nil {
		return x.IsGetZaned
	}
	return false
}

func (x *FriendBase) GetHeroObjId() string {
	if x != nil {
		return x.HeroObjId
	}
	return ""
}

func (x *FriendBase) GetScore() int32 {
	if x != nil {
		return x.Score
	}
	return 0
}

func (x *FriendBase) GetUpdateTime() int64 {
	if x != nil {
		return x.UpdateTime
	}
	return 0
}

//好友列表
type FriendListReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendListReq) Reset() {
	*x = FriendListReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendListReq) ProtoMessage() {}

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

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

type FriendListResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	List []*FriendBase `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`
}

func (x *FriendListResp) Reset() {
	*x = FriendListResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendListResp) ProtoMessage() {}

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

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

func (x *FriendListResp) GetList() []*FriendBase {
	if x != nil {
		return x.List
	}
	return nil
}

// 随机的在线玩家
type FriendRandlistReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendRandlistReq) Reset() {
	*x = FriendRandlistReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendRandlistReq) ProtoMessage() {}

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

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

type FriendRandlistResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	List []*FriendBase `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`
}

func (x *FriendRandlistResp) Reset() {
	*x = FriendRandlistResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendRandlistResp) ProtoMessage() {}

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

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

func (x *FriendRandlistResp) GetList() []*FriendBase {
	if x != nil {
		return x.List
	}
	return nil
}

//申请好友
type FriendApplyReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"` //好友ID
}

func (x *FriendApplyReq) Reset() {
	*x = FriendApplyReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendApplyReq) ProtoMessage() {}

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

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

func (x *FriendApplyReq) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

type FriendApplyResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	UserId   string `protobuf:"bytes,1,opt,name=userId,proto3" json:"userId"`     //用户ID
	FriendId string `protobuf:"bytes,2,opt,name=friendId,proto3" json:"friendId"` //好友ID
}

func (x *FriendApplyResp) Reset() {
	*x = FriendApplyResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendApplyResp) ProtoMessage() {}

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

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

func (x *FriendApplyResp) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

func (x *FriendApplyResp) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

//删除好友
type FriendDelReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"` //好友ID
}

func (x *FriendDelReq) Reset() {
	*x = FriendDelReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendDelReq) ProtoMessage() {}

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

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

func (x *FriendDelReq) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

type FriendDelResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"` //好友ID
	UserId   string `protobuf:"bytes,2,opt,name=userId,proto3" json:"userId"`     //用户ID
}

func (x *FriendDelResp) Reset() {
	*x = FriendDelResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendDelResp) ProtoMessage() {}

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

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

func (x *FriendDelResp) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

func (x *FriendDelResp) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

//同意
type FriendAgreeReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendIds []string `protobuf:"bytes,1,rep,name=friendIds,proto3" json:"friendIds"` //被同意的用户
}

func (x *FriendAgreeReq) Reset() {
	*x = FriendAgreeReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAgreeReq) ProtoMessage() {}

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

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

func (x *FriendAgreeReq) GetFriendIds() []string {
	if x != nil {
		return x.FriendIds
	}
	return nil
}

type FriendAgreeResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Num int32 `protobuf:"varint,1,opt,name=Num,proto3" json:"Num"` //操作的数量
}

func (x *FriendAgreeResp) Reset() {
	*x = FriendAgreeResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAgreeResp) ProtoMessage() {}

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

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

func (x *FriendAgreeResp) GetNum() int32 {
	if x != nil {
		return x.Num
	}
	return 0
}

//拒绝
type FriendRefuseReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendIds []string `protobuf:"bytes,1,rep,name=friendIds,proto3" json:"friendIds"` //被拒绝的用户
}

func (x *FriendRefuseReq) Reset() {
	*x = FriendRefuseReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendRefuseReq) ProtoMessage() {}

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

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

func (x *FriendRefuseReq) GetFriendIds() []string {
	if x != nil {
		return x.FriendIds
	}
	return nil
}

type FriendRefuseResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Num int32 `protobuf:"varint,1,opt,name=Num,proto3" json:"Num"` //操作的数量
}

func (x *FriendRefuseResp) Reset() {
	*x = FriendRefuseResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[12]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendRefuseResp) ProtoMessage() {}

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

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

func (x *FriendRefuseResp) GetNum() int32 {
	if x != nil {
		return x.Num
	}
	return 0
}

//好友申请列表
type FriendApplyListReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendApplyListReq) Reset() {
	*x = FriendApplyListReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[13]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendApplyListReq) ProtoMessage() {}

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

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

type FriendApplyListResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	List []*FriendBase `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`
}

func (x *FriendApplyListResp) Reset() {
	*x = FriendApplyListResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[14]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendApplyListResp) ProtoMessage() {}

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

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

func (x *FriendApplyListResp) GetList() []*FriendBase {
	if x != nil {
		return x.List
	}
	return nil
}

//好友搜索
type FriendSearchReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	NickName string `protobuf:"bytes,1,opt,name=nickName,proto3" json:"nickName"` //好友昵称
}

func (x *FriendSearchReq) Reset() {
	*x = FriendSearchReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[15]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendSearchReq) ProtoMessage() {}

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

// Deprecated: Use FriendSearchReq.ProtoReflect.Descriptor instead.
func (*FriendSearchReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{15}
}

func (x *FriendSearchReq) GetNickName() string {
	if x != nil {
		return x.NickName
	}
	return ""
}

type FriendSearchResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Friends []*FriendBase `protobuf:"bytes,1,rep,name=friends,proto3" json:"friends"`
}

func (x *FriendSearchResp) Reset() {
	*x = FriendSearchResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[16]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendSearchResp) ProtoMessage() {}

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

// Deprecated: Use FriendSearchResp.ProtoReflect.Descriptor instead.
func (*FriendSearchResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{16}
}

func (x *FriendSearchResp) GetFriends() []*FriendBase {
	if x != nil {
		return x.Friends
	}
	return nil
}

//黑名单
type FriendBlackListReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendBlackListReq) Reset() {
	*x = FriendBlackListReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[17]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendBlackListReq) ProtoMessage() {}

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

// Deprecated: Use FriendBlackListReq.ProtoReflect.Descriptor instead.
func (*FriendBlackListReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{17}
}

type FriendBlackListResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Friends []*FriendBase `protobuf:"bytes,1,rep,name=friends,proto3" json:"friends"`
}

func (x *FriendBlackListResp) Reset() {
	*x = FriendBlackListResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[18]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendBlackListResp) ProtoMessage() {}

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

// Deprecated: Use FriendBlackListResp.ProtoReflect.Descriptor instead.
func (*FriendBlackListResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{18}
}

func (x *FriendBlackListResp) GetFriends() []*FriendBase {
	if x != nil {
		return x.Friends
	}
	return nil
}

//添加黑名单
type FriendAddBlackReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
}

func (x *FriendAddBlackReq) Reset() {
	*x = FriendAddBlackReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[19]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAddBlackReq) ProtoMessage() {}

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

// Deprecated: Use FriendAddBlackReq.ProtoReflect.Descriptor instead.
func (*FriendAddBlackReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{19}
}

func (x *FriendAddBlackReq) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

type FriendAddBlackResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
	UserId   string `protobuf:"bytes,2,opt,name=userId,proto3" json:"userId"`
}

func (x *FriendAddBlackResp) Reset() {
	*x = FriendAddBlackResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[20]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAddBlackResp) ProtoMessage() {}

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

// Deprecated: Use FriendAddBlackResp.ProtoReflect.Descriptor instead.
func (*FriendAddBlackResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{20}
}

func (x *FriendAddBlackResp) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

func (x *FriendAddBlackResp) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

//删除黑名单
type FriendDelBlackReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
}

func (x *FriendDelBlackReq) Reset() {
	*x = FriendDelBlackReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[21]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendDelBlackReq) ProtoMessage() {}

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

// Deprecated: Use FriendDelBlackReq.ProtoReflect.Descriptor instead.
func (*FriendDelBlackReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{21}
}

func (x *FriendDelBlackReq) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

type FriendDelBlackResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
	UserId   string `protobuf:"bytes,2,opt,name=userId,proto3" json:"userId"`
}

func (x *FriendDelBlackResp) Reset() {
	*x = FriendDelBlackResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[22]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendDelBlackResp) ProtoMessage() {}

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

// Deprecated: Use FriendDelBlackResp.ProtoReflect.Descriptor instead.
func (*FriendDelBlackResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{22}
}

func (x *FriendDelBlackResp) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

func (x *FriendDelBlackResp) GetUserId() string {
	if x != nil {
		return x.UserId
	}
	return ""
}

//好友数量
type FriendTotalReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
}

func (x *FriendTotalReq) Reset() {
	*x = FriendTotalReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[23]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendTotalReq) ProtoMessage() {}

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

// Deprecated: Use FriendTotalReq.ProtoReflect.Descriptor instead.
func (*FriendTotalReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{23}
}

func (x *FriendTotalReq) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

type FriendTotalResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendId string `protobuf:"bytes,1,opt,name=friendId,proto3" json:"friendId"`
	Total    int32  `protobuf:"varint,2,opt,name=total,proto3" json:"total"` //好友数量
}

func (x *FriendTotalResp) Reset() {
	*x = FriendTotalResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[24]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendTotalResp) ProtoMessage() {}

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

// Deprecated: Use FriendTotalResp.ProtoReflect.Descriptor instead.
func (*FriendTotalResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{24}
}

func (x *FriendTotalResp) GetFriendId() string {
	if x != nil {
		return x.FriendId
	}
	return ""
}

func (x *FriendTotalResp) GetTotal() int32 {
	if x != nil {
		return x.Total
	}
	return 0
}

// 点赞列表
type FriendZanlistReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendZanlistReq) Reset() {
	*x = FriendZanlistReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[25]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanlistReq) ProtoMessage() {}

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

// Deprecated: Use FriendZanlistReq.ProtoReflect.Descriptor instead.
func (*FriendZanlistReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{25}
}

type FriendZanlistResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	List []*FriendBase `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`
}

func (x *FriendZanlistResp) Reset() {
	*x = FriendZanlistResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[26]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanlistResp) ProtoMessage() {}

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

// Deprecated: Use FriendZanlistResp.ProtoReflect.Descriptor instead.
func (*FriendZanlistResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{26}
}

func (x *FriendZanlistResp) GetList() []*FriendBase {
	if x != nil {
		return x.List
	}
	return nil
}

// 点赞
type FriendZanReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendIds []string `protobuf:"bytes,1,rep,name=friendIds,proto3" json:"friendIds"`
}

func (x *FriendZanReq) Reset() {
	*x = FriendZanReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[27]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanReq) ProtoMessage() {}

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

// Deprecated: Use FriendZanReq.ProtoReflect.Descriptor instead.
func (*FriendZanReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{27}
}

func (x *FriendZanReq) GetFriendIds() []string {
	if x != nil {
		return x.FriendIds
	}
	return nil
}

type FriendZanResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Flag bool `protobuf:"varint,1,opt,name=flag,proto3" json:"flag"`
}

func (x *FriendZanResp) Reset() {
	*x = FriendZanResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[28]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanResp) ProtoMessage() {}

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

// Deprecated: Use FriendZanResp.ProtoReflect.Descriptor instead.
func (*FriendZanResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{28}
}

func (x *FriendZanResp) GetFlag() bool {
	if x != nil {
		return x.Flag
	}
	return false
}

//接收点赞
type FriendZanreceiveReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	FriendIds []string `protobuf:"bytes,1,rep,name=friendIds,proto3" json:"friendIds"`
}

func (x *FriendZanreceiveReq) Reset() {
	*x = FriendZanreceiveReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[29]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanreceiveReq) ProtoMessage() {}

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

// Deprecated: Use FriendZanreceiveReq.ProtoReflect.Descriptor instead.
func (*FriendZanreceiveReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{29}
}

func (x *FriendZanreceiveReq) GetFriendIds() []string {
	if x != nil {
		return x.FriendIds
	}
	return nil
}

type FriendZanreceiveResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Flag bool `protobuf:"varint,1,opt,name=flag,proto3" json:"flag"`
}

func (x *FriendZanreceiveResp) Reset() {
	*x = FriendZanreceiveResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[30]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendZanreceiveResp) ProtoMessage() {}

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

// Deprecated: Use FriendZanreceiveResp.ProtoReflect.Descriptor instead.
func (*FriendZanreceiveResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{30}
}

func (x *FriendZanreceiveResp) GetFlag() bool {
	if x != nil {
		return x.Flag
	}
	return false
}

// 设置助战英雄
type FriendAssistheroReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HeroObjId string `protobuf:"bytes,1,opt,name=heroObjId,proto3" json:"heroObjId"`
}

func (x *FriendAssistheroReq) Reset() {
	*x = FriendAssistheroReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[31]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistheroReq) ProtoMessage() {}

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

// Deprecated: Use FriendAssistheroReq.ProtoReflect.Descriptor instead.
func (*FriendAssistheroReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{31}
}

func (x *FriendAssistheroReq) GetHeroObjId() string {
	if x != nil {
		return x.HeroObjId
	}
	return ""
}

type FriendAssistheroResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	HeroObjId string `protobuf:"bytes,1,opt,name=heroObjId,proto3" json:"heroObjId"`
	Received  int32  `protobuf:"varint,2,opt,name=received,proto3" json:"received"` //领取奖励状态0未领1可领2已领
}

func (x *FriendAssistheroResp) Reset() {
	*x = FriendAssistheroResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[32]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistheroResp) ProtoMessage() {}

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

// Deprecated: Use FriendAssistheroResp.ProtoReflect.Descriptor instead.
func (*FriendAssistheroResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{32}
}

func (x *FriendAssistheroResp) GetHeroObjId() string {
	if x != nil {
		return x.HeroObjId
	}
	return ""
}

func (x *FriendAssistheroResp) GetReceived() int32 {
	if x != nil {
		return x.Received
	}
	return 0
}

//助战列表
type FriendAssistlistReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendAssistlistReq) Reset() {
	*x = FriendAssistlistReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[33]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistlistReq) ProtoMessage() {}

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

// Deprecated: Use FriendAssistlistReq.ProtoReflect.Descriptor instead.
func (*FriendAssistlistReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{33}
}

type FriendAssistlistResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	List      []*FriendBase   `protobuf:"bytes,1,rep,name=list,proto3" json:"list"`           //好友助战排行
	HeroObjId string          `protobuf:"bytes,2,opt,name=heroObjId,proto3" json:"heroObjId"` //助战英雄
	Record    []*AssistRecord `protobuf:"bytes,3,rep,name=record,proto3" json:"record"`       //我的助战记录
}

func (x *FriendAssistlistResp) Reset() {
	*x = FriendAssistlistResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[34]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistlistResp) ProtoMessage() {}

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

// Deprecated: Use FriendAssistlistResp.ProtoReflect.Descriptor instead.
func (*FriendAssistlistResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{34}
}

func (x *FriendAssistlistResp) GetList() []*FriendBase {
	if x != nil {
		return x.List
	}
	return nil
}

func (x *FriendAssistlistResp) GetHeroObjId() string {
	if x != nil {
		return x.HeroObjId
	}
	return ""
}

func (x *FriendAssistlistResp) GetRecord() []*AssistRecord {
	if x != nil {
		return x.Record
	}
	return nil
}

// 助战奖励
type FriendGetrewardReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendGetrewardReq) Reset() {
	*x = FriendGetrewardReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[35]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendGetrewardReq) ProtoMessage() {}

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

// Deprecated: Use FriendGetrewardReq.ProtoReflect.Descriptor instead.
func (*FriendGetrewardReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{35}
}

type FriendGetrewardResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Received int32 `protobuf:"varint,1,opt,name=received,proto3" json:"received"`
}

func (x *FriendGetrewardResp) Reset() {
	*x = FriendGetrewardResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[36]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendGetrewardResp) ProtoMessage() {}

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

// Deprecated: Use FriendGetrewardResp.ProtoReflect.Descriptor instead.
func (*FriendGetrewardResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{36}
}

func (x *FriendGetrewardResp) GetReceived() int32 {
	if x != nil {
		return x.Received
	}
	return 0
}

// 助战英雄更新推送
type FriendAssistHeroUpdatePush struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Friend *FriendBase `protobuf:"bytes,1,opt,name=friend,proto3" json:"friend"` //好友
}

func (x *FriendAssistHeroUpdatePush) Reset() {
	*x = FriendAssistHeroUpdatePush{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[37]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistHeroUpdatePush) ProtoMessage() {}

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

// Deprecated: Use FriendAssistHeroUpdatePush.ProtoReflect.Descriptor instead.
func (*FriendAssistHeroUpdatePush) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{37}
}

func (x *FriendAssistHeroUpdatePush) GetFriend() *FriendBase {
	if x != nil {
		return x.Friend
	}
	return nil
}

//好友助战英雄列表
type FriendAssistHeroListReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

func (x *FriendAssistHeroListReq) Reset() {
	*x = FriendAssistHeroListReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[38]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistHeroListReq) ProtoMessage() {}

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

// Deprecated: Use FriendAssistHeroListReq.ProtoReflect.Descriptor instead.
func (*FriendAssistHeroListReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{38}
}

type FriendAssistHeroListResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Friends []*FriendBase `protobuf:"bytes,1,rep,name=friends,proto3" json:"friends"`
}

func (x *FriendAssistHeroListResp) Reset() {
	*x = FriendAssistHeroListResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[39]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAssistHeroListResp) ProtoMessage() {}

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

// Deprecated: Use FriendAssistHeroListResp.ProtoReflect.Descriptor instead.
func (*FriendAssistHeroListResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{39}
}

func (x *FriendAssistHeroListResp) GetFriends() []*FriendBase {
	if x != nil {
		return x.Friends
	}
	return nil
}

// 查询是否已申请目标玩家为好友或目标玩家是否已是好友
type FriendGetRelationReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TargetUid string `protobuf:"bytes,1,opt,name=targetUid,proto3" json:"targetUid"` //目标玩家ID
}

func (x *FriendGetRelationReq) Reset() {
	*x = FriendGetRelationReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[40]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendGetRelationReq) ProtoMessage() {}

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

// Deprecated: Use FriendGetRelationReq.ProtoReflect.Descriptor instead.
func (*FriendGetRelationReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{40}
}

func (x *FriendGetRelationReq) GetTargetUid() string {
	if x != nil {
		return x.TargetUid
	}
	return ""
}

type FriendGetRelationResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TargetUid string `protobuf:"bytes,1,opt,name=targetUid,proto3" json:"targetUid"`
	Status    bool   `protobuf:"varint,2,opt,name=status,proto3" json:"status"` //已是好友或已申请返回true
}

func (x *FriendGetRelationResp) Reset() {
	*x = FriendGetRelationResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[41]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendGetRelationResp) ProtoMessage() {}

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

// Deprecated: Use FriendGetRelationResp.ProtoReflect.Descriptor instead.
func (*FriendGetRelationResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{41}
}

func (x *FriendGetRelationResp) GetTargetUid() string {
	if x != nil {
		return x.TargetUid
	}
	return ""
}

func (x *FriendGetRelationResp) GetStatus() bool {
	if x != nil {
		return x.Status
	}
	return false
}

// 切磋请求
type FriendQiecuoReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TargetUid string `protobuf:"bytes,1,opt,name=targetUid,proto3" json:"targetUid"` //切磋目标玩家UID
}

func (x *FriendQiecuoReq) Reset() {
	*x = FriendQiecuoReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[42]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendQiecuoReq) ProtoMessage() {}

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

// Deprecated: Use FriendQiecuoReq.ProtoReflect.Descriptor instead.
func (*FriendQiecuoReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{42}
}

func (x *FriendQiecuoReq) GetTargetUid() string {
	if x != nil {
		return x.TargetUid
	}
	return ""
}

type FriendQiecuoResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	TargetUid string `protobuf:"bytes,1,opt,name=targetUid,proto3" json:"targetUid"` //切磋目标
	Uid       string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid"`             //发起者
}

func (x *FriendQiecuoResp) Reset() {
	*x = FriendQiecuoResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[43]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendQiecuoResp) ProtoMessage() {}

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

// Deprecated: Use FriendQiecuoResp.ProtoReflect.Descriptor instead.
func (*FriendQiecuoResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{43}
}

func (x *FriendQiecuoResp) GetTargetUid() string {
	if x != nil {
		return x.TargetUid
	}
	return ""
}

func (x *FriendQiecuoResp) GetUid() string {
	if x != nil {
		return x.Uid
	}
	return ""
}

//接受切磋
type FriendAcceptReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //切磋发起者
}

func (x *FriendAcceptReq) Reset() {
	*x = FriendAcceptReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[44]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAcceptReq) ProtoMessage() {}

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

// Deprecated: Use FriendAcceptReq.ProtoReflect.Descriptor instead.
func (*FriendAcceptReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{44}
}

func (x *FriendAcceptReq) GetUid() string {
	if x != nil {
		return x.Uid
	}
	return ""
}

type FriendAcceptResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IsSucc bool `protobuf:"varint,1,opt,name=isSucc,proto3" json:"isSucc"`
}

func (x *FriendAcceptResp) Reset() {
	*x = FriendAcceptResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[45]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendAcceptResp) ProtoMessage() {}

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

// Deprecated: Use FriendAcceptResp.ProtoReflect.Descriptor instead.
func (*FriendAcceptResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{45}
}

func (x *FriendAcceptResp) GetIsSucc() bool {
	if x != nil {
		return x.IsSucc
	}
	return false
}

//拒绝切磋
type FriendStopReq struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Uid string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"` //切磋发起者
}

func (x *FriendStopReq) Reset() {
	*x = FriendStopReq{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[46]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendStopReq) ProtoMessage() {}

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

// Deprecated: Use FriendStopReq.ProtoReflect.Descriptor instead.
func (*FriendStopReq) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{46}
}

func (x *FriendStopReq) GetUid() string {
	if x != nil {
		return x.Uid
	}
	return ""
}

type FriendStopResp struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	IsSucc bool `protobuf:"varint,1,opt,name=isSucc,proto3" json:"isSucc"`
}

func (x *FriendStopResp) Reset() {
	*x = FriendStopResp{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[47]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendStopResp) ProtoMessage() {}

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

// Deprecated: Use FriendStopResp.ProtoReflect.Descriptor instead.
func (*FriendStopResp) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{47}
}

func (x *FriendStopResp) GetIsSucc() bool {
	if x != nil {
		return x.IsSucc
	}
	return false
}

type FriendQiecuonotifyPush struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields

	Uid        string `protobuf:"bytes,1,opt,name=uid,proto3" json:"uid"`                //发起者（切磋)
	NotifyType int32  `protobuf:"varint,2,opt,name=notifyType,proto3" json:"notifyType"` //1发起通知 2接受通知 3拒绝通知
}

func (x *FriendQiecuonotifyPush) Reset() {
	*x = FriendQiecuonotifyPush{}
	if protoimpl.UnsafeEnabled {
		mi := &file_friend_friend_msg_proto_msgTypes[48]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}

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

func (*FriendQiecuonotifyPush) ProtoMessage() {}

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

// Deprecated: Use FriendQiecuonotifyPush.ProtoReflect.Descriptor instead.
func (*FriendQiecuonotifyPush) Descriptor() ([]byte, []int) {
	return file_friend_friend_msg_proto_rawDescGZIP(), []int{48}
}

func (x *FriendQiecuonotifyPush) GetUid() string {
	if x != nil {
		return x.Uid
	}
	return ""
}

func (x *FriendQiecuonotifyPush) GetNotifyType() int32 {
	if x != nil {
		return x.NotifyType
	}
	return 0
}

var File_friend_friend_msg_proto protoreflect.FileDescriptor

var file_friend_friend_msg_proto_rawDesc = []byte{
	0x0a, 0x17, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x2f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f,
	0x6d, 0x73, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x16, 0x66, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x2f, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5f, 0x64, 0x62, 0x2e, 0x70, 0x72, 0x6f, 0x74,
	0x6f, 0x22, 0xf4, 0x02, 0x0a, 0x0a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65,
	0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x4e, 0x69, 0x63, 0x6b,
	0x4e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x4e, 0x69, 0x63, 0x6b,
	0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x03, 0x20,
	0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x76,
	0x61, 0x74, 0x61, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x76, 0x61, 0x74,
	0x61, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x18, 0x05,
	0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x73, 0x74, 0x72, 0x65, 0x6e, 0x67, 0x74, 0x68, 0x12, 0x1a,
	0x0a, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0b, 0x6f, 0x66,
	0x66, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x03, 0x52,
	0x0b, 0x6f, 0x66, 0x66, 0x6c, 0x69, 0x6e, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09,
	0x69, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52,
	0x09, 0x69, 0x73, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x65, 0x64, 0x12, 0x18, 0x0a, 0x07, 0x69, 0x73,
	0x5a, 0x61, 0x6e, 0x65, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x69, 0x73, 0x5a,
	0x61, 0x6e, 0x65, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x69, 0x73, 0x47, 0x65, 0x74, 0x5a, 0x61, 0x6e,
	0x65, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0a, 0x69, 0x73, 0x47, 0x65, 0x74, 0x5a,
	0x61, 0x6e, 0x65, 0x64, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49,
	0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a,
	0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28,
	0x05, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x1e, 0x0a, 0x0a, 0x75, 0x70, 0x64, 0x61,
	0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x03, 0x52, 0x0a, 0x75, 0x70,
	0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x0f, 0x0a, 0x0d, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x31, 0x0a, 0x0e, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x6c,
	0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x13, 0x0a, 0x11,
	0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x6e, 0x64, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65,
	0x71, 0x22, 0x35, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x61, 0x6e, 0x64, 0x6c,
	0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61,
	0x73, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x2c, 0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x45, 0x0a, 0x0f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64,
	0x41, 0x70, 0x70, 0x6c, 0x79, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65,
	0x72, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
	0x64, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x02, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x2a, 0x0a,
	0x0c, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x43, 0x0a, 0x0d, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x2e,
	0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x67, 0x72, 0x65, 0x65, 0x52, 0x65, 0x71,
	0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20,
	0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x73, 0x22, 0x23,
	0x0a, 0x0f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x67, 0x72, 0x65, 0x65, 0x52, 0x65, 0x73,
	0x70, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03,
	0x4e, 0x75, 0x6d, 0x22, 0x2f, 0x0a, 0x0f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65, 0x66,
	0x75, 0x73, 0x65, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
	0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x49, 0x64, 0x73, 0x22, 0x24, 0x0a, 0x10, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x52, 0x65,
	0x66, 0x75, 0x73, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x10, 0x0a, 0x03, 0x4e, 0x75, 0x6d, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x03, 0x4e, 0x75, 0x6d, 0x22, 0x14, 0x0a, 0x12, 0x46, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71,
	0x22, 0x36, 0x0a, 0x13, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x79, 0x4c,
	0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18,
	0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61,
	0x73, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x2d, 0x0a, 0x0f, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x6e,
	0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6e,
	0x69, 0x63, 0x6b, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x39, 0x0a, 0x10, 0x46, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x07, 0x66,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x73, 0x22, 0x14, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x6c, 0x61, 0x63,
	0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x3c, 0x0a, 0x13, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12,
	0x25, 0x0a, 0x07, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x66,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x22, 0x2f, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64,
	0x41, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x66,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x48, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x41, 0x64, 0x64, 0x42, 0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65,
	0x72, 0x49, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49,
	0x64, 0x22, 0x2f, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x42, 0x6c,
	0x61, 0x63, 0x6b, 0x52, 0x65, 0x71, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
	0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64,
	0x49, 0x64, 0x22, 0x48, 0x0a, 0x12, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x44, 0x65, 0x6c, 0x42,
	0x6c, 0x61, 0x63, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x66, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x66, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x49, 0x64, 0x12, 0x16, 0x0a, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x75, 0x73, 0x65, 0x72, 0x49, 0x64, 0x22, 0x2c, 0x0a, 0x0e,
	0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x71, 0x12, 0x1a,
	0x0a, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x22, 0x43, 0x0a, 0x0f, 0x46, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x54, 0x6f, 0x74, 0x61, 0x6c, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
	0x08, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x74,
	0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x74, 0x6f, 0x74, 0x61, 0x6c, 0x22,
	0x12, 0x0a, 0x10, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x6c, 0x69, 0x73, 0x74,
	0x52, 0x65, 0x71, 0x22, 0x34, 0x0a, 0x11, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e,
	0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42,
	0x61, 0x73, 0x65, 0x52, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x22, 0x2c, 0x0a, 0x0c, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x49, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72,
	0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x73, 0x22, 0x23, 0x0a, 0x0d, 0x46, 0x72, 0x69, 0x65, 0x6e,
	0x64, 0x5a, 0x61, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61, 0x67,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x22, 0x33, 0x0a, 0x13,
	0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76, 0x65,
	0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64, 0x73,
	0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x09, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x49, 0x64,
	0x73, 0x22, 0x2a, 0x0a, 0x14, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x5a, 0x61, 0x6e, 0x72, 0x65,
	0x63, 0x65, 0x69, 0x76, 0x65, 0x52, 0x65, 0x73, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x6c, 0x61,
	0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x66, 0x6c, 0x61, 0x67, 0x22, 0x33, 0x0a,
	0x13, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x68, 0x65, 0x72,
	0x6f, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a,
	0x49, 0x64, 0x22, 0x50, 0x0a, 0x14, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69,
	0x73, 0x74, 0x68, 0x65, 0x72, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65,
	0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68,
	0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65,
	0x69, 0x76, 0x65, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65,
	0x69, 0x76, 0x65, 0x64, 0x22, 0x15, 0x0a, 0x13, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73,
	0x73, 0x69, 0x73, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71, 0x22, 0x7c, 0x0a, 0x14, 0x46,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x6c, 0x69, 0x73, 0x74, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x1f, 0x0a, 0x04, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28,
	0x0b, 0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04,
	0x6c, 0x69, 0x73, 0x74, 0x12, 0x1c, 0x0a, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a, 0x49,
	0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x68, 0x65, 0x72, 0x6f, 0x4f, 0x62, 0x6a,
	0x49, 0x64, 0x12, 0x25, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x03,
	0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72,
	0x64, 0x52, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0x14, 0x0a, 0x12, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x72, 0x65, 0x77, 0x61, 0x72, 0x64, 0x52, 0x65, 0x71, 0x22,
	0x31, 0x0a, 0x13, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x72, 0x65, 0x77, 0x61,
	0x72, 0x64, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1a, 0x0a, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x72, 0x65, 0x63, 0x65, 0x69, 0x76,
	0x65, 0x64, 0x22, 0x41, 0x0a, 0x1a, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69,
	0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x75, 0x73, 0x68,
	0x12, 0x23, 0x0a, 0x06, 0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x0b, 0x2e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x06, 0x66,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x22, 0x19, 0x0a, 0x17, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41,
	0x73, 0x73, 0x69, 0x73, 0x74, 0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x71,
	0x22, 0x41, 0x0a, 0x18, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74,
	0x48, 0x65, 0x72, 0x6f, 0x4c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x25, 0x0a, 0x07,
	0x66, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x0b, 0x2e,
	0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x42, 0x61, 0x73, 0x65, 0x52, 0x07, 0x66, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x73, 0x22, 0x34, 0x0a, 0x14, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x47, 0x65, 0x74,
	0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x74,
	0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x22, 0x4d, 0x0a, 0x15, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x47, 0x65, 0x74, 0x52, 0x65, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65,
	0x73, 0x70, 0x12, 0x1c, 0x0a, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18,
	0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64,
	0x12, 0x16, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08,
	0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x22, 0x2f, 0x0a, 0x0f, 0x46, 0x72, 0x69, 0x65,
	0x6e, 0x64, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x52, 0x65, 0x71, 0x12, 0x1c, 0x0a, 0x09, 0x74,
	0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x22, 0x42, 0x0a, 0x10, 0x46, 0x72, 0x69,
	0x65, 0x6e, 0x64, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x12, 0x1c, 0x0a,
	0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
	0x52, 0x09, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x55, 0x69, 0x64, 0x12, 0x10, 0x0a, 0x03, 0x75,
	0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x22, 0x23, 0x0a,
	0x0f, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x65, 0x70, 0x74, 0x52, 0x65, 0x71,
	0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75,
	0x69, 0x64, 0x22, 0x2a, 0x0a, 0x10, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x41, 0x63, 0x63, 0x65,
	0x70, 0x74, 0x52, 0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x22, 0x21,
	0x0a, 0x0d, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x70, 0x52, 0x65, 0x71, 0x12,
	0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x69,
	0x64, 0x22, 0x28, 0x0a, 0x0e, 0x46, 0x72, 0x69, 0x65, 0x6e, 0x64, 0x53, 0x74, 0x6f, 0x70, 0x52,
	0x65, 0x73, 0x70, 0x12, 0x16, 0x0a, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x18, 0x01, 0x20,
	0x01, 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x53, 0x75, 0x63, 0x63, 0x22, 0x4a, 0x0a, 0x16, 0x46,
	0x72, 0x69, 0x65, 0x6e, 0x64, 0x51, 0x69, 0x65, 0x63, 0x75, 0x6f, 0x6e, 0x6f, 0x74, 0x69, 0x66,
	0x79, 0x50, 0x75, 0x73, 0x68, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x6e, 0x6f, 0x74, 0x69, 0x66,
	0x79, 0x54, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6e, 0x6f, 0x74,
	0x69, 0x66, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x06, 0x5a, 0x04, 0x2e, 0x3b, 0x70, 0x62, 0x62,
	0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}

var (
	file_friend_friend_msg_proto_rawDescOnce sync.Once
	file_friend_friend_msg_proto_rawDescData = file_friend_friend_msg_proto_rawDesc
)

func file_friend_friend_msg_proto_rawDescGZIP() []byte {
	file_friend_friend_msg_proto_rawDescOnce.Do(func() {
		file_friend_friend_msg_proto_rawDescData = protoimpl.X.CompressGZIP(file_friend_friend_msg_proto_rawDescData)
	})
	return file_friend_friend_msg_proto_rawDescData
}

var file_friend_friend_msg_proto_msgTypes = make([]protoimpl.MessageInfo, 49)
var file_friend_friend_msg_proto_goTypes = []interface{}{
	(*FriendBase)(nil),                 // 0: FriendBase
	(*FriendListReq)(nil),              // 1: FriendListReq
	(*FriendListResp)(nil),             // 2: FriendListResp
	(*FriendRandlistReq)(nil),          // 3: FriendRandlistReq
	(*FriendRandlistResp)(nil),         // 4: FriendRandlistResp
	(*FriendApplyReq)(nil),             // 5: FriendApplyReq
	(*FriendApplyResp)(nil),            // 6: FriendApplyResp
	(*FriendDelReq)(nil),               // 7: FriendDelReq
	(*FriendDelResp)(nil),              // 8: FriendDelResp
	(*FriendAgreeReq)(nil),             // 9: FriendAgreeReq
	(*FriendAgreeResp)(nil),            // 10: FriendAgreeResp
	(*FriendRefuseReq)(nil),            // 11: FriendRefuseReq
	(*FriendRefuseResp)(nil),           // 12: FriendRefuseResp
	(*FriendApplyListReq)(nil),         // 13: FriendApplyListReq
	(*FriendApplyListResp)(nil),        // 14: FriendApplyListResp
	(*FriendSearchReq)(nil),            // 15: FriendSearchReq
	(*FriendSearchResp)(nil),           // 16: FriendSearchResp
	(*FriendBlackListReq)(nil),         // 17: FriendBlackListReq
	(*FriendBlackListResp)(nil),        // 18: FriendBlackListResp
	(*FriendAddBlackReq)(nil),          // 19: FriendAddBlackReq
	(*FriendAddBlackResp)(nil),         // 20: FriendAddBlackResp
	(*FriendDelBlackReq)(nil),          // 21: FriendDelBlackReq
	(*FriendDelBlackResp)(nil),         // 22: FriendDelBlackResp
	(*FriendTotalReq)(nil),             // 23: FriendTotalReq
	(*FriendTotalResp)(nil),            // 24: FriendTotalResp
	(*FriendZanlistReq)(nil),           // 25: FriendZanlistReq
	(*FriendZanlistResp)(nil),          // 26: FriendZanlistResp
	(*FriendZanReq)(nil),               // 27: FriendZanReq
	(*FriendZanResp)(nil),              // 28: FriendZanResp
	(*FriendZanreceiveReq)(nil),        // 29: FriendZanreceiveReq
	(*FriendZanreceiveResp)(nil),       // 30: FriendZanreceiveResp
	(*FriendAssistheroReq)(nil),        // 31: FriendAssistheroReq
	(*FriendAssistheroResp)(nil),       // 32: FriendAssistheroResp
	(*FriendAssistlistReq)(nil),        // 33: FriendAssistlistReq
	(*FriendAssistlistResp)(nil),       // 34: FriendAssistlistResp
	(*FriendGetrewardReq)(nil),         // 35: FriendGetrewardReq
	(*FriendGetrewardResp)(nil),        // 36: FriendGetrewardResp
	(*FriendAssistHeroUpdatePush)(nil), // 37: FriendAssistHeroUpdatePush
	(*FriendAssistHeroListReq)(nil),    // 38: FriendAssistHeroListReq
	(*FriendAssistHeroListResp)(nil),   // 39: FriendAssistHeroListResp
	(*FriendGetRelationReq)(nil),       // 40: FriendGetRelationReq
	(*FriendGetRelationResp)(nil),      // 41: FriendGetRelationResp
	(*FriendQiecuoReq)(nil),            // 42: FriendQiecuoReq
	(*FriendQiecuoResp)(nil),           // 43: FriendQiecuoResp
	(*FriendAcceptReq)(nil),            // 44: FriendAcceptReq
	(*FriendAcceptResp)(nil),           // 45: FriendAcceptResp
	(*FriendStopReq)(nil),              // 46: FriendStopReq
	(*FriendStopResp)(nil),             // 47: FriendStopResp
	(*FriendQiecuonotifyPush)(nil),     // 48: FriendQiecuonotifyPush
	(*AssistRecord)(nil),               // 49: AssistRecord
}
var file_friend_friend_msg_proto_depIdxs = []int32{
	0,  // 0: FriendListResp.list:type_name -> FriendBase
	0,  // 1: FriendRandlistResp.list:type_name -> FriendBase
	0,  // 2: FriendApplyListResp.list:type_name -> FriendBase
	0,  // 3: FriendSearchResp.friends:type_name -> FriendBase
	0,  // 4: FriendBlackListResp.friends:type_name -> FriendBase
	0,  // 5: FriendZanlistResp.list:type_name -> FriendBase
	0,  // 6: FriendAssistlistResp.list:type_name -> FriendBase
	49, // 7: FriendAssistlistResp.record:type_name -> AssistRecord
	0,  // 8: FriendAssistHeroUpdatePush.friend:type_name -> FriendBase
	0,  // 9: FriendAssistHeroListResp.friends:type_name -> FriendBase
	10, // [10:10] is the sub-list for method output_type
	10, // [10:10] is the sub-list for method input_type
	10, // [10:10] is the sub-list for extension type_name
	10, // [10:10] is the sub-list for extension extendee
	0,  // [0:10] is the sub-list for field type_name
}

func init() { file_friend_friend_msg_proto_init() }
func file_friend_friend_msg_proto_init() {
	if File_friend_friend_msg_proto != nil {
		return
	}
	file_friend_friend_db_proto_init()
	if !protoimpl.UnsafeEnabled {
		file_friend_friend_msg_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendBase); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendListReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendListResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendRandlistReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendRandlistResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendApplyReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendApplyResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendDelReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendDelResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAgreeReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAgreeResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendRefuseReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendRefuseResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendApplyListReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendApplyListResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendSearchReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendSearchResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendBlackListReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendBlackListResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAddBlackReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAddBlackResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendDelBlackReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendDelBlackResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendTotalReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendTotalResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanlistReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanlistResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanreceiveReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendZanreceiveResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistheroReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistheroResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistlistReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistlistResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendGetrewardReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendGetrewardResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistHeroUpdatePush); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistHeroListReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAssistHeroListResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendGetRelationReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendGetRelationResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendQiecuoReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendQiecuoResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAcceptReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendAcceptResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendStopReq); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendStopResp); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_friend_friend_msg_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
			switch v := v.(*FriendQiecuonotifyPush); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_friend_friend_msg_proto_rawDesc,
			NumEnums:      0,
			NumMessages:   49,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_friend_friend_msg_proto_goTypes,
		DependencyIndexes: file_friend_friend_msg_proto_depIdxs,
		MessageInfos:      file_friend_friend_msg_proto_msgTypes,
	}.Build()
	File_friend_friend_msg_proto = out.File
	file_friend_friend_msg_proto_rawDesc = nil
	file_friend_friend_msg_proto_goTypes = nil
	file_friend_friend_msg_proto_depIdxs = nil
}
