// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        (unknown)
// source: api/v1/user_setting_service.proto

package apiv1

import (
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

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

type UserSetting struct {
	state         protoimpl.MessageState           `protogen:"open.v1"`
	UserId        int32                            `protobuf:"varint,1,opt,name=user_id,json=userId,proto3" json:"user_id,omitempty"`
	General       *UserSetting_GeneralSetting      `protobuf:"bytes,2,opt,name=general,proto3" json:"general,omitempty"`
	AccessTokens  *UserSetting_AccessTokensSetting `protobuf:"bytes,3,opt,name=access_tokens,json=accessTokens,proto3" json:"access_tokens,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UserSetting) ProtoMessage() {}

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

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

func (x *UserSetting) GetUserId() int32 {
	if x != nil {
		return x.UserId
	}
	return 0
}

func (x *UserSetting) GetGeneral() *UserSetting_GeneralSetting {
	if x != nil {
		return x.General
	}
	return nil
}

func (x *UserSetting) GetAccessTokens() *UserSetting_AccessTokensSetting {
	if x != nil {
		return x.AccessTokens
	}
	return nil
}

type GetUserSettingRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// id is the user id.
	Id            int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetUserSettingRequest) ProtoMessage() {}

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

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

func (x *GetUserSettingRequest) GetId() int32 {
	if x != nil {
		return x.Id
	}
	return 0
}

type UpdateUserSettingRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// id is the user id.
	Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	// user_setting is the user setting to update.
	UserSetting *UserSetting `protobuf:"bytes,2,opt,name=user_setting,json=userSetting,proto3" json:"user_setting,omitempty"`
	// update_mask is the field mask to update.
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateUserSettingRequest) ProtoMessage() {}

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

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

func (x *UpdateUserSettingRequest) GetId() int32 {
	if x != nil {
		return x.Id
	}
	return 0
}

func (x *UpdateUserSettingRequest) GetUserSetting() *UserSetting {
	if x != nil {
		return x.UserSetting
	}
	return nil
}

func (x *UpdateUserSettingRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
	if x != nil {
		return x.UpdateMask
	}
	return nil
}

type UserSetting_GeneralSetting struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Locale        string                 `protobuf:"bytes,1,opt,name=locale,proto3" json:"locale,omitempty"`
	ColorTheme    string                 `protobuf:"bytes,2,opt,name=color_theme,json=colorTheme,proto3" json:"color_theme,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UserSetting_GeneralSetting) ProtoMessage() {}

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

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

func (x *UserSetting_GeneralSetting) GetLocale() string {
	if x != nil {
		return x.Locale
	}
	return ""
}

func (x *UserSetting_GeneralSetting) GetColorTheme() string {
	if x != nil {
		return x.ColorTheme
	}
	return ""
}

type UserSetting_AccessTokensSetting struct {
	state         protoimpl.MessageState                         `protogen:"open.v1"`
	AccessTokens  []*UserSetting_AccessTokensSetting_AccessToken `protobuf:"bytes,1,rep,name=access_tokens,json=accessTokens,proto3" json:"access_tokens,omitempty"` // Nested repeated field
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UserSetting_AccessTokensSetting) ProtoMessage() {}

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

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

func (x *UserSetting_AccessTokensSetting) GetAccessTokens() []*UserSetting_AccessTokensSetting_AccessToken {
	if x != nil {
		return x.AccessTokens
	}
	return nil
}

type UserSetting_AccessTokensSetting_AccessToken struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The access token is a JWT token, including expiration time, issuer, etc.
	AccessToken string `protobuf:"bytes,1,opt,name=access_token,json=accessToken,proto3" json:"access_token,omitempty"`
	// A description for the access token.
	Description   string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UserSetting_AccessTokensSetting_AccessToken) ProtoMessage() {}

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

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

func (x *UserSetting_AccessTokensSetting_AccessToken) GetAccessToken() string {
	if x != nil {
		return x.AccessToken
	}
	return ""
}

func (x *UserSetting_AccessTokensSetting_AccessToken) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

var File_api_v1_user_setting_service_proto protoreflect.FileDescriptor

const file_api_v1_user_setting_service_proto_rawDesc = "" +
	"\n" +
	"!api/v1/user_setting_service.proto\x12\fslash.api.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a google/protobuf/field_mask.proto\"\xd5\x03\n" +
	"\vUserSetting\x12\x17\n" +
	"\auser_id\x18\x01 \x01(\x05R\x06userId\x12B\n" +
	"\ageneral\x18\x02 \x01(\v2(.slash.api.v1.UserSetting.GeneralSettingR\ageneral\x12R\n" +
	"\raccess_tokens\x18\x03 \x01(\v2-.slash.api.v1.UserSetting.AccessTokensSettingR\faccessTokens\x1aI\n" +
	"\x0eGeneralSetting\x12\x16\n" +
	"\x06locale\x18\x01 \x01(\tR\x06locale\x12\x1f\n" +
	"\vcolor_theme\x18\x02 \x01(\tR\n" +
	"colorTheme\x1a\xc9\x01\n" +
	"\x13AccessTokensSetting\x12^\n" +
	"\raccess_tokens\x18\x01 \x03(\v29.slash.api.v1.UserSetting.AccessTokensSetting.AccessTokenR\faccessTokens\x1aR\n" +
	"\vAccessToken\x12!\n" +
	"\faccess_token\x18\x01 \x01(\tR\vaccessToken\x12 \n" +
	"\vdescription\x18\x02 \x01(\tR\vdescription\"'\n" +
	"\x15GetUserSettingRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x05R\x02id\"\xa5\x01\n" +
	"\x18UpdateUserSettingRequest\x12\x0e\n" +
	"\x02id\x18\x01 \x01(\x05R\x02id\x12<\n" +
	"\fuser_setting\x18\x02 \x01(\v2\x19.slash.api.v1.UserSettingR\vuserSetting\x12;\n" +
	"\vupdate_mask\x18\x03 \x01(\v2\x1a.google.protobuf.FieldMaskR\n" +
	"updateMask2\xb7\x02\n" +
	"\x12UserSettingService\x12z\n" +
	"\x0eGetUserSetting\x12#.slash.api.v1.GetUserSettingRequest\x1a\x19.slash.api.v1.UserSetting\"(\xdaA\x02id\x82\xd3\xe4\x93\x02\x1d\x12\x1b/api/v1/users/{id}/settings\x12\xa4\x01\n" +
	"\x11UpdateUserSetting\x12&.slash.api.v1.UpdateUserSettingRequest\x1a\x19.slash.api.v1.UserSetting\"L\xdaA\x18user_setting,update_mask\x82\xd3\xe4\x93\x02+:\fuser_setting2\x1b/api/v1/users/{id}/settingsB\xb5\x01\n" +
	"\x10com.slash.api.v1B\x17UserSettingServiceProtoP\x01Z6github.com/yourselfhosted/slash/proto/gen/api/v1;apiv1\xa2\x02\x03SAX\xaa\x02\fSlash.Api.V1\xca\x02\fSlash\\Api\\V1\xe2\x02\x18Slash\\Api\\V1\\GPBMetadata\xea\x02\x0eSlash::Api::V1b\x06proto3"

var (
	file_api_v1_user_setting_service_proto_rawDescOnce sync.Once
	file_api_v1_user_setting_service_proto_rawDescData []byte
)

func file_api_v1_user_setting_service_proto_rawDescGZIP() []byte {
	file_api_v1_user_setting_service_proto_rawDescOnce.Do(func() {
		file_api_v1_user_setting_service_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_api_v1_user_setting_service_proto_rawDesc), len(file_api_v1_user_setting_service_proto_rawDesc)))
	})
	return file_api_v1_user_setting_service_proto_rawDescData
}

var file_api_v1_user_setting_service_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
var file_api_v1_user_setting_service_proto_goTypes = []any{
	(*UserSetting)(nil),                                 // 0: slash.api.v1.UserSetting
	(*GetUserSettingRequest)(nil),                       // 1: slash.api.v1.GetUserSettingRequest
	(*UpdateUserSettingRequest)(nil),                    // 2: slash.api.v1.UpdateUserSettingRequest
	(*UserSetting_GeneralSetting)(nil),                  // 3: slash.api.v1.UserSetting.GeneralSetting
	(*UserSetting_AccessTokensSetting)(nil),             // 4: slash.api.v1.UserSetting.AccessTokensSetting
	(*UserSetting_AccessTokensSetting_AccessToken)(nil), // 5: slash.api.v1.UserSetting.AccessTokensSetting.AccessToken
	(*fieldmaskpb.FieldMask)(nil),                       // 6: google.protobuf.FieldMask
}
var file_api_v1_user_setting_service_proto_depIdxs = []int32{
	3, // 0: slash.api.v1.UserSetting.general:type_name -> slash.api.v1.UserSetting.GeneralSetting
	4, // 1: slash.api.v1.UserSetting.access_tokens:type_name -> slash.api.v1.UserSetting.AccessTokensSetting
	0, // 2: slash.api.v1.UpdateUserSettingRequest.user_setting:type_name -> slash.api.v1.UserSetting
	6, // 3: slash.api.v1.UpdateUserSettingRequest.update_mask:type_name -> google.protobuf.FieldMask
	5, // 4: slash.api.v1.UserSetting.AccessTokensSetting.access_tokens:type_name -> slash.api.v1.UserSetting.AccessTokensSetting.AccessToken
	1, // 5: slash.api.v1.UserSettingService.GetUserSetting:input_type -> slash.api.v1.GetUserSettingRequest
	2, // 6: slash.api.v1.UserSettingService.UpdateUserSetting:input_type -> slash.api.v1.UpdateUserSettingRequest
	0, // 7: slash.api.v1.UserSettingService.GetUserSetting:output_type -> slash.api.v1.UserSetting
	0, // 8: slash.api.v1.UserSettingService.UpdateUserSetting:output_type -> slash.api.v1.UserSetting
	7, // [7:9] is the sub-list for method output_type
	5, // [5:7] is the sub-list for method input_type
	5, // [5:5] is the sub-list for extension type_name
	5, // [5:5] is the sub-list for extension extendee
	0, // [0:5] is the sub-list for field type_name
}

func init() { file_api_v1_user_setting_service_proto_init() }
func file_api_v1_user_setting_service_proto_init() {
	if File_api_v1_user_setting_service_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_api_v1_user_setting_service_proto_rawDesc), len(file_api_v1_user_setting_service_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   6,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_api_v1_user_setting_service_proto_goTypes,
		DependencyIndexes: file_api_v1_user_setting_service_proto_depIdxs,
		MessageInfos:      file_api_v1_user_setting_service_proto_msgTypes,
	}.Build()
	File_api_v1_user_setting_service_proto = out.File
	file_api_v1_user_setting_service_proto_goTypes = nil
	file_api_v1_user_setting_service_proto_depIdxs = nil
}
