func (*UserResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{11}
}
Deprecated: Use UserResponse.ProtoReflect.Descriptor instead.
package protocol
import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)
const (
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
type UserRank int32
const (
	UserRank_regular UserRank = 0
	UserRank_trusted UserRank = 1
	UserRank_admin   UserRank = 2
)
var (
	UserRank_name = map[int32]string{
		0: "regular",
		1: "trusted",
		2: "admin",
	}
	UserRank_value = map[string]int32{
		"regular": 0,
		"trusted": 1,
		"admin":   2,
	}
)
func (x UserRank) Enum() *UserRank {
	p := new(UserRank)
	*p = x
	return p
}
func (x UserRank) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (UserRank) Descriptor() protoreflect.EnumDescriptor {
	return file_user_service_protocol_userservice_proto_enumTypes[0].Descriptor()
}
func (UserRank) Type() protoreflect.EnumType {
	return &file_user_service_protocol_userservice_proto_enumTypes[0]
}
func (x UserRank) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}
func (UserRank) EnumDescriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{0}
}
type GetUserIDsForUsernameRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
}
func (x *GetUserIDsForUsernameRequest) Reset() {
	*x = GetUserIDsForUsernameRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[0]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *GetUserIDsForUsernameRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*GetUserIDsForUsernameRequest) ProtoMessage() {}
func (x *GetUserIDsForUsernameRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*GetUserIDsForUsernameRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{0}
}
func (x *GetUserIDsForUsernameRequest) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}
type GetUserIDsForUsernameResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	UserIDs []int64 `protobuf:"varint,1,rep,packed,name=userIDs,proto3" json:"userIDs,omitempty"`
}
func (x *GetUserIDsForUsernameResponse) Reset() {
	*x = GetUserIDsForUsernameResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[1]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *GetUserIDsForUsernameResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*GetUserIDsForUsernameResponse) ProtoMessage() {}
func (x *GetUserIDsForUsernameResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*GetUserIDsForUsernameResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{1}
}
func (x *GetUserIDsForUsernameResponse) GetUserIDs() []int64 {
	if x != nil {
		return x.UserIDs
	}
	return nil
}
type GetForeignUserRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	OriginalWebsite string `protobuf:"bytes,1,opt,name=originalWebsite,proto3" json:"originalWebsite,omitempty"`
	ForeignUserID   string `protobuf:"bytes,2,opt,name=foreignUserID,proto3" json:"foreignUserID,omitempty"`
}
func (x *GetForeignUserRequest) Reset() {
	*x = GetForeignUserRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[2]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *GetForeignUserRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*GetForeignUserRequest) ProtoMessage() {}
func (x *GetForeignUserRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*GetForeignUserRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{2}
}
func (x *GetForeignUserRequest) GetOriginalWebsite() string {
	if x != nil {
		return x.OriginalWebsite
	}
	return ""
}
func (x *GetForeignUserRequest) GetForeignUserID() string {
	if x != nil {
		return x.ForeignUserID
	}
	return ""
}
type GetForeignUserResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	NewUID int64 `protobuf:"varint,1,opt,name=newUID,proto3" json:"newUID,omitempty"`
}
func (x *GetForeignUserResponse) Reset() {
	*x = GetForeignUserResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[3]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *GetForeignUserResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*GetForeignUserResponse) ProtoMessage() {}
func (x *GetForeignUserResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*GetForeignUserResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{3}
}
func (x *GetForeignUserResponse) GetNewUID() int64 {
	if x != nil {
		return x.NewUID
	}
	return 0
}
type ValidateJWTRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Jwt string `protobuf:"bytes,1,opt,name=jwt,proto3" json:"jwt,omitempty"`
}
func (x *ValidateJWTRequest) Reset() {
	*x = ValidateJWTRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[4]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *ValidateJWTRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*ValidateJWTRequest) ProtoMessage() {}
func (x *ValidateJWTRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*ValidateJWTRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{4}
}
func (x *ValidateJWTRequest) GetJwt() string {
	if x != nil {
		return x.Jwt
	}
	return ""
}
type ValidateJWTResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	IsValid bool  `protobuf:"varint,1,opt,name=isValid,proto3" json:"isValid,omitempty"`
	Uid     int64 `protobuf:"varint,2,opt,name=uid,proto3" json:"uid,omitempty"`
}
func (x *ValidateJWTResponse) Reset() {
	*x = ValidateJWTResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[5]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *ValidateJWTResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*ValidateJWTResponse) ProtoMessage() {}
func (x *ValidateJWTResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*ValidateJWTResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{5}
}
func (x *ValidateJWTResponse) GetIsValid() bool {
	if x != nil {
		return x.IsValid
	}
	return false
}
func (x *ValidateJWTResponse) GetUid() int64 {
	if x != nil {
		return x.Uid
	}
	return 0
}
type RegisterRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Email       string `protobuf:"bytes,1,opt,name=email,proto3" json:"email,omitempty"`
	Username    string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
	Password    string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
	ForeignUser bool   `protobuf:"varint,4,opt,name=foreignUser,proto3" json:"foreignUser,omitempty"`  
	ForeignUserID  string `protobuf:"bytes,5,opt,name=foreignUserID,proto3" json:"foreignUserID,omitempty"`
	ForeignWebsite string `protobuf:"bytes,6,opt,name=foreignWebsite,proto3" json:"foreignWebsite,omitempty"`
}
func (x *RegisterRequest) Reset() {
	*x = RegisterRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[6]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *RegisterRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*RegisterRequest) ProtoMessage() {}
func (x *RegisterRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*RegisterRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{6}
}
func (x *RegisterRequest) GetEmail() string {
	if x != nil {
		return x.Email
	}
	return ""
}
func (x *RegisterRequest) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}
func (x *RegisterRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}
func (x *RegisterRequest) GetForeignUser() bool {
	if x != nil {
		return x.ForeignUser
	}
	return false
}
func (x *RegisterRequest) GetForeignUserID() string {
	if x != nil {
		return x.ForeignUserID
	}
	return ""
}
func (x *RegisterRequest) GetForeignWebsite() string {
	if x != nil {
		return x.ForeignWebsite
	}
	return ""
}
type LoginRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Username string `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	Password string `protobuf:"bytes,2,opt,name=password,proto3" json:"password,omitempty"`
}
func (x *LoginRequest) Reset() {
	*x = LoginRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[7]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *LoginRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*LoginRequest) ProtoMessage() {}
func (x *LoginRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*LoginRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{7}
}
func (x *LoginRequest) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}
func (x *LoginRequest) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}
type LoginResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Jwt string `protobuf:"bytes,1,opt,name=jwt,proto3" json:"jwt,omitempty"`
}
func (x *LoginResponse) Reset() {
	*x = LoginResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[8]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *LoginResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*LoginResponse) ProtoMessage() {}
func (x *LoginResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*LoginResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{8}
}
func (x *LoginResponse) GetJwt() string {
	if x != nil {
		return x.Jwt
	}
	return ""
}
type RegisterResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Jwt string `protobuf:"bytes,1,opt,name=jwt,proto3" json:"jwt,omitempty"`
}
func (x *RegisterResponse) Reset() {
	*x = RegisterResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[9]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *RegisterResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*RegisterResponse) ProtoMessage() {}
func (x *RegisterResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*RegisterResponse) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{9}
}
func (x *RegisterResponse) GetJwt() string {
	if x != nil {
		return x.Jwt
	}
	return ""
}
type GetUserFromIDRequest struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	UserID int64 `protobuf:"varint,1,opt,name=userID,proto3" json:"userID,omitempty"`
}
func (x *GetUserFromIDRequest) Reset() {
	*x = GetUserFromIDRequest{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[10]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *GetUserFromIDRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*GetUserFromIDRequest) ProtoMessage() {}
func (x *GetUserFromIDRequest) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}
func (*GetUserFromIDRequest) Descriptor() ([]byte, []int) {
	return file_user_service_protocol_userservice_proto_rawDescGZIP(), []int{10}
}
func (x *GetUserFromIDRequest) GetUserID() int64 {
	if x != nil {
		return x.UserID
	}
	return 0
}
type UserResponse struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
	Username string   `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	Email    string   `protobuf:"bytes,2,opt,name=email,proto3" json:"email,omitempty"`
	Rank     UserRank `protobuf:"varint,3,opt,name=rank,proto3,enum=proto.UserRank" json:"rank,omitempty"`
}
func (x *UserResponse) Reset() {
	*x = UserResponse{}
	if protoimpl.UnsafeEnabled {
		mi := &file_user_service_protocol_userservice_proto_msgTypes[11]
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		ms.StoreMessageInfo(mi)
	}
}
func (x *UserResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}
func (*UserResponse) ProtoMessage() {}
func (x *UserResponse) ProtoReflect() protoreflect.Message {
	mi := &file_user_service_protocol_userservice_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)
}