// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v5.28.3
// source: conf/conf.proto

package conf

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	durationpb "google.golang.org/protobuf/types/known/durationpb"
	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 Bootstrap struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Server        *Server                `protobuf:"bytes,1,opt,name=server,proto3" json:"server,omitempty"`
	Data          *Data                  `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
	Admin         *AdminBackend          `protobuf:"bytes,3,opt,name=admin,proto3" json:"admin,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Bootstrap) ProtoMessage() {}

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

func (x *Bootstrap) GetServer() *Server {
	if x != nil {
		return x.Server
	}
	return nil
}

func (x *Bootstrap) GetData() *Data {
	if x != nil {
		return x.Data
	}
	return nil
}

func (x *Bootstrap) GetAdmin() *AdminBackend {
	if x != nil {
		return x.Admin
	}
	return nil
}

type Server struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Http          *Server_HTTP           `protobuf:"bytes,1,opt,name=http,proto3" json:"http,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Server) ProtoMessage() {}

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

func (x *Server) GetHttp() *Server_HTTP {
	if x != nil {
		return x.Http
	}
	return nil
}

type Data struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Database      *Data_Database         `protobuf:"bytes,1,opt,name=database,proto3" json:"database,omitempty"`
	Redis         *Data_Redis            `protobuf:"bytes,2,opt,name=redis,proto3" json:"redis,omitempty"`
	DatabaseList  []*Data_Database       `protobuf:"bytes,3,rep,name=database_list,json=databaseList,proto3" json:"database_list,omitempty"`
	RedisList     []*Data_Redis          `protobuf:"bytes,4,rep,name=redis_list,json=redisList,proto3" json:"redis_list,omitempty"`
	Mongo         *Data_Mongo            `protobuf:"bytes,5,opt,name=mongo,proto3" json:"mongo,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Data) ProtoMessage() {}

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

func (x *Data) GetDatabase() *Data_Database {
	if x != nil {
		return x.Database
	}
	return nil
}

func (x *Data) GetRedis() *Data_Redis {
	if x != nil {
		return x.Redis
	}
	return nil
}

func (x *Data) GetDatabaseList() []*Data_Database {
	if x != nil {
		return x.DatabaseList
	}
	return nil
}

func (x *Data) GetRedisList() []*Data_Redis {
	if x != nil {
		return x.RedisList
	}
	return nil
}

func (x *Data) GetMongo() *Data_Mongo {
	if x != nil {
		return x.Mongo
	}
	return nil
}

// AdminBackend contains settings for the administration HTTP transport.
type AdminBackend struct {
	state        protoimpl.MessageState `protogen:"open.v1"`
	RouterPrefix string                 `protobuf:"bytes,1,opt,name=router_prefix,json=routerPrefix,proto3" json:"router_prefix,omitempty"`
	Jwt          *AdminBackend_JWT      `protobuf:"bytes,2,opt,name=jwt,proto3" json:"jwt,omitempty"`
	Captcha      *AdminBackend_Captcha  `protobuf:"bytes,3,opt,name=captcha,proto3" json:"captcha,omitempty"`
	Local        *AdminBackend_Local    `protobuf:"bytes,4,opt,name=local,proto3" json:"local,omitempty"`
	Email        *AdminBackend_Email    `protobuf:"bytes,5,opt,name=email,proto3" json:"email,omitempty"`
	Storage      *AdminBackend_Storage  `protobuf:"bytes,6,opt,name=storage,proto3" json:"storage,omitempty"`
	// ConfigPath is populated by the entrypoint and is not required in YAML.
	ConfigPath    string               `protobuf:"bytes,7,opt,name=config_path,json=configPath,proto3" json:"config_path,omitempty"`
	Media         *AdminBackend_Media  `protobuf:"bytes,8,opt,name=media,proto3" json:"media,omitempty"`
	DiskList      []*AdminBackend_Disk `protobuf:"bytes,9,rep,name=disk_list,json=diskList,proto3" json:"disk_list,omitempty"`
	System        *AdminBackend_System `protobuf:"bytes,10,opt,name=system,proto3" json:"system,omitempty"`
	Zap           *AdminBackend_Zap    `protobuf:"bytes,11,opt,name=zap,proto3" json:"zap,omitempty"`
	Cors          *AdminBackend_CORS   `protobuf:"bytes,12,opt,name=cors,proto3" json:"cors,omitempty"`
	App           *AdminBackend_App    `protobuf:"bytes,13,opt,name=app,proto3" json:"app,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AdminBackend) ProtoMessage() {}

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

func (x *AdminBackend) GetRouterPrefix() string {
	if x != nil {
		return x.RouterPrefix
	}
	return ""
}

func (x *AdminBackend) GetJwt() *AdminBackend_JWT {
	if x != nil {
		return x.Jwt
	}
	return nil
}

func (x *AdminBackend) GetCaptcha() *AdminBackend_Captcha {
	if x != nil {
		return x.Captcha
	}
	return nil
}

func (x *AdminBackend) GetLocal() *AdminBackend_Local {
	if x != nil {
		return x.Local
	}
	return nil
}

func (x *AdminBackend) GetEmail() *AdminBackend_Email {
	if x != nil {
		return x.Email
	}
	return nil
}

func (x *AdminBackend) GetStorage() *AdminBackend_Storage {
	if x != nil {
		return x.Storage
	}
	return nil
}

func (x *AdminBackend) GetConfigPath() string {
	if x != nil {
		return x.ConfigPath
	}
	return ""
}

func (x *AdminBackend) GetMedia() *AdminBackend_Media {
	if x != nil {
		return x.Media
	}
	return nil
}

func (x *AdminBackend) GetDiskList() []*AdminBackend_Disk {
	if x != nil {
		return x.DiskList
	}
	return nil
}

func (x *AdminBackend) GetSystem() *AdminBackend_System {
	if x != nil {
		return x.System
	}
	return nil
}

func (x *AdminBackend) GetZap() *AdminBackend_Zap {
	if x != nil {
		return x.Zap
	}
	return nil
}

func (x *AdminBackend) GetCors() *AdminBackend_CORS {
	if x != nil {
		return x.Cors
	}
	return nil
}

func (x *AdminBackend) GetApp() *AdminBackend_App {
	if x != nil {
		return x.App
	}
	return nil
}

type Server_HTTP struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Network       string                 `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"`
	Addr          string                 `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
	Timeout       *durationpb.Duration   `protobuf:"bytes,3,opt,name=timeout,proto3" json:"timeout,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Server_HTTP) ProtoMessage() {}

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

func (x *Server_HTTP) GetNetwork() string {
	if x != nil {
		return x.Network
	}
	return ""
}

func (x *Server_HTTP) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *Server_HTTP) GetTimeout() *durationpb.Duration {
	if x != nil {
		return x.Timeout
	}
	return nil
}

type Data_Database struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	Driver          string                 `protobuf:"bytes,1,opt,name=driver,proto3" json:"driver,omitempty"`
	Source          string                 `protobuf:"bytes,2,opt,name=source,proto3" json:"source,omitempty"`
	Host            string                 `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
	Port            string                 `protobuf:"bytes,4,opt,name=port,proto3" json:"port,omitempty"`
	User            string                 `protobuf:"bytes,5,opt,name=user,proto3" json:"user,omitempty"`
	Password        string                 `protobuf:"bytes,6,opt,name=password,proto3" json:"password,omitempty"`
	Name            string                 `protobuf:"bytes,7,opt,name=name,proto3" json:"name,omitempty"`
	Config          string                 `protobuf:"bytes,8,opt,name=config,proto3" json:"config,omitempty"`
	Path            string                 `protobuf:"bytes,9,opt,name=path,proto3" json:"path,omitempty"`
	AliasName       string                 `protobuf:"bytes,10,opt,name=alias_name,json=aliasName,proto3" json:"alias_name,omitempty"`
	Disable         bool                   `protobuf:"varint,11,opt,name=disable,proto3" json:"disable,omitempty"`
	Prefix          string                 `protobuf:"bytes,12,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Engine          string                 `protobuf:"bytes,13,opt,name=engine,proto3" json:"engine,omitempty"`
	LogMode         string                 `protobuf:"bytes,14,opt,name=log_mode,json=logMode,proto3" json:"log_mode,omitempty"`
	MaxIdleConns    int32                  `protobuf:"varint,15,opt,name=max_idle_conns,json=maxIdleConns,proto3" json:"max_idle_conns,omitempty"`
	MaxOpenConns    int32                  `protobuf:"varint,16,opt,name=max_open_conns,json=maxOpenConns,proto3" json:"max_open_conns,omitempty"`
	ConnMaxLifetime int32                  `protobuf:"varint,17,opt,name=conn_max_lifetime,json=connMaxLifetime,proto3" json:"conn_max_lifetime,omitempty"`
	Singular        bool                   `protobuf:"varint,18,opt,name=singular,proto3" json:"singular,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*Data_Database) ProtoMessage() {}

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

func (x *Data_Database) GetDriver() string {
	if x != nil {
		return x.Driver
	}
	return ""
}

func (x *Data_Database) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *Data_Database) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *Data_Database) GetPort() string {
	if x != nil {
		return x.Port
	}
	return ""
}

func (x *Data_Database) GetUser() string {
	if x != nil {
		return x.User
	}
	return ""
}

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

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

func (x *Data_Database) GetConfig() string {
	if x != nil {
		return x.Config
	}
	return ""
}

func (x *Data_Database) GetPath() string {
	if x != nil {
		return x.Path
	}
	return ""
}

func (x *Data_Database) GetAliasName() string {
	if x != nil {
		return x.AliasName
	}
	return ""
}

func (x *Data_Database) GetDisable() bool {
	if x != nil {
		return x.Disable
	}
	return false
}

func (x *Data_Database) GetPrefix() string {
	if x != nil {
		return x.Prefix
	}
	return ""
}

func (x *Data_Database) GetEngine() string {
	if x != nil {
		return x.Engine
	}
	return ""
}

func (x *Data_Database) GetLogMode() string {
	if x != nil {
		return x.LogMode
	}
	return ""
}

func (x *Data_Database) GetMaxIdleConns() int32 {
	if x != nil {
		return x.MaxIdleConns
	}
	return 0
}

func (x *Data_Database) GetMaxOpenConns() int32 {
	if x != nil {
		return x.MaxOpenConns
	}
	return 0
}

func (x *Data_Database) GetConnMaxLifetime() int32 {
	if x != nil {
		return x.ConnMaxLifetime
	}
	return 0
}

func (x *Data_Database) GetSingular() bool {
	if x != nil {
		return x.Singular
	}
	return false
}

type Data_Redis struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Network       string                 `protobuf:"bytes,1,opt,name=network,proto3" json:"network,omitempty"`
	Addr          string                 `protobuf:"bytes,2,opt,name=addr,proto3" json:"addr,omitempty"`
	ReadTimeout   *durationpb.Duration   `protobuf:"bytes,3,opt,name=read_timeout,json=readTimeout,proto3" json:"read_timeout,omitempty"`
	WriteTimeout  *durationpb.Duration   `protobuf:"bytes,4,opt,name=write_timeout,json=writeTimeout,proto3" json:"write_timeout,omitempty"`
	Name          string                 `protobuf:"bytes,5,opt,name=name,proto3" json:"name,omitempty"`
	Password      string                 `protobuf:"bytes,6,opt,name=password,proto3" json:"password,omitempty"`
	Db            int32                  `protobuf:"varint,7,opt,name=db,proto3" json:"db,omitempty"`
	UseCluster    bool                   `protobuf:"varint,8,opt,name=use_cluster,json=useCluster,proto3" json:"use_cluster,omitempty"`
	ClusterAddrs  []string               `protobuf:"bytes,9,rep,name=cluster_addrs,json=clusterAddrs,proto3" json:"cluster_addrs,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Data_Redis) ProtoMessage() {}

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

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

func (x *Data_Redis) GetNetwork() string {
	if x != nil {
		return x.Network
	}
	return ""
}

func (x *Data_Redis) GetAddr() string {
	if x != nil {
		return x.Addr
	}
	return ""
}

func (x *Data_Redis) GetReadTimeout() *durationpb.Duration {
	if x != nil {
		return x.ReadTimeout
	}
	return nil
}

func (x *Data_Redis) GetWriteTimeout() *durationpb.Duration {
	if x != nil {
		return x.WriteTimeout
	}
	return nil
}

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

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

func (x *Data_Redis) GetDb() int32 {
	if x != nil {
		return x.Db
	}
	return 0
}

func (x *Data_Redis) GetUseCluster() bool {
	if x != nil {
		return x.UseCluster
	}
	return false
}

func (x *Data_Redis) GetClusterAddrs() []string {
	if x != nil {
		return x.ClusterAddrs
	}
	return nil
}

type Data_MongoHost struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Host          string                 `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	Port          string                 `protobuf:"bytes,2,opt,name=port,proto3" json:"port,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Data_MongoHost) ProtoMessage() {}

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

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

func (x *Data_MongoHost) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *Data_MongoHost) GetPort() string {
	if x != nil {
		return x.Port
	}
	return ""
}

type Data_Mongo struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	Coll             string                 `protobuf:"bytes,1,opt,name=coll,proto3" json:"coll,omitempty"`
	Options          string                 `protobuf:"bytes,2,opt,name=options,proto3" json:"options,omitempty"`
	Database         string                 `protobuf:"bytes,3,opt,name=database,proto3" json:"database,omitempty"`
	Username         string                 `protobuf:"bytes,4,opt,name=username,proto3" json:"username,omitempty"`
	Password         string                 `protobuf:"bytes,5,opt,name=password,proto3" json:"password,omitempty"`
	AuthSource       string                 `protobuf:"bytes,6,opt,name=auth_source,json=authSource,proto3" json:"auth_source,omitempty"`
	MinPoolSize      uint64                 `protobuf:"varint,7,opt,name=min_pool_size,json=minPoolSize,proto3" json:"min_pool_size,omitempty"`
	MaxPoolSize      uint64                 `protobuf:"varint,8,opt,name=max_pool_size,json=maxPoolSize,proto3" json:"max_pool_size,omitempty"`
	SocketTimeoutMs  int64                  `protobuf:"varint,9,opt,name=socket_timeout_ms,json=socketTimeoutMs,proto3" json:"socket_timeout_ms,omitempty"`
	ConnectTimeoutMs int64                  `protobuf:"varint,10,opt,name=connect_timeout_ms,json=connectTimeoutMs,proto3" json:"connect_timeout_ms,omitempty"`
	IsZap            bool                   `protobuf:"varint,11,opt,name=is_zap,json=isZap,proto3" json:"is_zap,omitempty"`
	Hosts            []*Data_MongoHost      `protobuf:"bytes,12,rep,name=hosts,proto3" json:"hosts,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*Data_Mongo) ProtoMessage() {}

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

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

func (x *Data_Mongo) GetColl() string {
	if x != nil {
		return x.Coll
	}
	return ""
}

func (x *Data_Mongo) GetOptions() string {
	if x != nil {
		return x.Options
	}
	return ""
}

func (x *Data_Mongo) GetDatabase() string {
	if x != nil {
		return x.Database
	}
	return ""
}

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

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

func (x *Data_Mongo) GetAuthSource() string {
	if x != nil {
		return x.AuthSource
	}
	return ""
}

func (x *Data_Mongo) GetMinPoolSize() uint64 {
	if x != nil {
		return x.MinPoolSize
	}
	return 0
}

func (x *Data_Mongo) GetMaxPoolSize() uint64 {
	if x != nil {
		return x.MaxPoolSize
	}
	return 0
}

func (x *Data_Mongo) GetSocketTimeoutMs() int64 {
	if x != nil {
		return x.SocketTimeoutMs
	}
	return 0
}

func (x *Data_Mongo) GetConnectTimeoutMs() int64 {
	if x != nil {
		return x.ConnectTimeoutMs
	}
	return 0
}

func (x *Data_Mongo) GetIsZap() bool {
	if x != nil {
		return x.IsZap
	}
	return false
}

func (x *Data_Mongo) GetHosts() []*Data_MongoHost {
	if x != nil {
		return x.Hosts
	}
	return nil
}

type AdminBackend_JWT struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	SigningKey    string                 `protobuf:"bytes,1,opt,name=signing_key,json=signingKey,proto3" json:"signing_key,omitempty"`
	ExpiresTime   *durationpb.Duration   `protobuf:"bytes,2,opt,name=expires_time,json=expiresTime,proto3" json:"expires_time,omitempty"`
	BufferTime    *durationpb.Duration   `protobuf:"bytes,3,opt,name=buffer_time,json=bufferTime,proto3" json:"buffer_time,omitempty"`
	Issuer        string                 `protobuf:"bytes,4,opt,name=issuer,proto3" json:"issuer,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AdminBackend_JWT) ProtoMessage() {}

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

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

func (x *AdminBackend_JWT) GetSigningKey() string {
	if x != nil {
		return x.SigningKey
	}
	return ""
}

func (x *AdminBackend_JWT) GetExpiresTime() *durationpb.Duration {
	if x != nil {
		return x.ExpiresTime
	}
	return nil
}

func (x *AdminBackend_JWT) GetBufferTime() *durationpb.Duration {
	if x != nil {
		return x.BufferTime
	}
	return nil
}

func (x *AdminBackend_JWT) GetIssuer() string {
	if x != nil {
		return x.Issuer
	}
	return ""
}

type AdminBackend_Captcha struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	KeyLong         int32                  `protobuf:"varint,1,opt,name=key_long,json=keyLong,proto3" json:"key_long,omitempty"`
	ImgWidth        int32                  `protobuf:"varint,2,opt,name=img_width,json=imgWidth,proto3" json:"img_width,omitempty"`
	ImgHeight       int32                  `protobuf:"varint,3,opt,name=img_height,json=imgHeight,proto3" json:"img_height,omitempty"`
	StoreExpiration *durationpb.Duration   `protobuf:"bytes,4,opt,name=store_expiration,json=storeExpiration,proto3" json:"store_expiration,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*AdminBackend_Captcha) ProtoMessage() {}

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

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

func (x *AdminBackend_Captcha) GetKeyLong() int32 {
	if x != nil {
		return x.KeyLong
	}
	return 0
}

func (x *AdminBackend_Captcha) GetImgWidth() int32 {
	if x != nil {
		return x.ImgWidth
	}
	return 0
}

func (x *AdminBackend_Captcha) GetImgHeight() int32 {
	if x != nil {
		return x.ImgHeight
	}
	return 0
}

func (x *AdminBackend_Captcha) GetStoreExpiration() *durationpb.Duration {
	if x != nil {
		return x.StoreExpiration
	}
	return nil
}

type AdminBackend_Local struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	StorePath     string                 `protobuf:"bytes,1,opt,name=store_path,json=storePath,proto3" json:"store_path,omitempty"`
	PathPrefix    string                 `protobuf:"bytes,2,opt,name=path_prefix,json=pathPrefix,proto3" json:"path_prefix,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AdminBackend_Local) ProtoMessage() {}

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

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

func (x *AdminBackend_Local) GetStorePath() string {
	if x != nil {
		return x.StorePath
	}
	return ""
}

func (x *AdminBackend_Local) GetPathPrefix() string {
	if x != nil {
		return x.PathPrefix
	}
	return ""
}

type AdminBackend_Email struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	To            string                 `protobuf:"bytes,1,opt,name=to,proto3" json:"to,omitempty"`
	From          string                 `protobuf:"bytes,2,opt,name=from,proto3" json:"from,omitempty"`
	Host          string                 `protobuf:"bytes,3,opt,name=host,proto3" json:"host,omitempty"`
	Secret        string                 `protobuf:"bytes,4,opt,name=secret,proto3" json:"secret,omitempty"`
	Nickname      string                 `protobuf:"bytes,5,opt,name=nickname,proto3" json:"nickname,omitempty"`
	Port          int32                  `protobuf:"varint,6,opt,name=port,proto3" json:"port,omitempty"`
	IsSsl         bool                   `protobuf:"varint,7,opt,name=is_ssl,json=isSsl,proto3" json:"is_ssl,omitempty"`
	IsLoginAuth   bool                   `protobuf:"varint,8,opt,name=is_login_auth,json=isLoginAuth,proto3" json:"is_login_auth,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AdminBackend_Email) ProtoMessage() {}

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

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

func (x *AdminBackend_Email) GetTo() string {
	if x != nil {
		return x.To
	}
	return ""
}

func (x *AdminBackend_Email) GetFrom() string {
	if x != nil {
		return x.From
	}
	return ""
}

func (x *AdminBackend_Email) GetHost() string {
	if x != nil {
		return x.Host
	}
	return ""
}

func (x *AdminBackend_Email) GetSecret() string {
	if x != nil {
		return x.Secret
	}
	return ""
}

func (x *AdminBackend_Email) GetNickname() string {
	if x != nil {
		return x.Nickname
	}
	return ""
}

func (x *AdminBackend_Email) GetPort() int32 {
	if x != nil {
		return x.Port
	}
	return 0
}

func (x *AdminBackend_Email) GetIsSsl() bool {
	if x != nil {
		return x.IsSsl
	}
	return false
}

func (x *AdminBackend_Email) GetIsLoginAuth() bool {
	if x != nil {
		return x.IsLoginAuth
	}
	return false
}

type AdminBackend_Media struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	SessionTtl    int32                  `protobuf:"varint,1,opt,name=session_ttl,json=sessionTtl,proto3" json:"session_ttl,omitempty"`
	MaxFileSize   int64                  `protobuf:"varint,2,opt,name=max_file_size,json=maxFileSize,proto3" json:"max_file_size,omitempty"`
	ChunkDir      string                 `protobuf:"bytes,3,opt,name=chunk_dir,json=chunkDir,proto3" json:"chunk_dir,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AdminBackend_Media) ProtoMessage() {}

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

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

func (x *AdminBackend_Media) GetSessionTtl() int32 {
	if x != nil {
		return x.SessionTtl
	}
	return 0
}

func (x *AdminBackend_Media) GetMaxFileSize() int64 {
	if x != nil {
		return x.MaxFileSize
	}
	return 0
}

func (x *AdminBackend_Media) GetChunkDir() string {
	if x != nil {
		return x.ChunkDir
	}
	return ""
}

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

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

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

func (*AdminBackend_Disk) ProtoMessage() {}

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

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

func (x *AdminBackend_Disk) GetMountPoint() string {
	if x != nil {
		return x.MountPoint
	}
	return ""
}

type AdminBackend_System struct {
	state              protoimpl.MessageState `protogen:"open.v1"`
	UseRedis           bool                   `protobuf:"varint,1,opt,name=use_redis,json=useRedis,proto3" json:"use_redis,omitempty"`
	UseMultipoint      bool                   `protobuf:"varint,2,opt,name=use_multipoint,json=useMultipoint,proto3" json:"use_multipoint,omitempty"`
	UseStrictAuth      bool                   `protobuf:"varint,3,opt,name=use_strict_auth,json=useStrictAuth,proto3" json:"use_strict_auth,omitempty"`
	DisableAutoMigrate bool                   `protobuf:"varint,4,opt,name=disable_auto_migrate,json=disableAutoMigrate,proto3" json:"disable_auto_migrate,omitempty"`
	UseMongo           bool                   `protobuf:"varint,5,opt,name=use_mongo,json=useMongo,proto3" json:"use_mongo,omitempty"`
	Addr               int32                  `protobuf:"varint,6,opt,name=addr,proto3" json:"addr,omitempty"`
	IplimitCount       int32                  `protobuf:"varint,7,opt,name=iplimit_count,json=iplimitCount,proto3" json:"iplimit_count,omitempty"`
	IplimitTime        int32                  `protobuf:"varint,8,opt,name=iplimit_time,json=iplimitTime,proto3" json:"iplimit_time,omitempty"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

func (x *AdminBackend_System) Reset() {
	*x = AdminBackend_System{}
	mi := &file_conf_conf_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_System) ProtoMessage() {}

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

func (x *AdminBackend_System) GetUseRedis() bool {
	if x != nil {
		return x.UseRedis
	}
	return false
}

func (x *AdminBackend_System) GetUseMultipoint() bool {
	if x != nil {
		return x.UseMultipoint
	}
	return false
}

func (x *AdminBackend_System) GetUseStrictAuth() bool {
	if x != nil {
		return x.UseStrictAuth
	}
	return false
}

func (x *AdminBackend_System) GetDisableAutoMigrate() bool {
	if x != nil {
		return x.DisableAutoMigrate
	}
	return false
}

func (x *AdminBackend_System) GetUseMongo() bool {
	if x != nil {
		return x.UseMongo
	}
	return false
}

func (x *AdminBackend_System) GetAddr() int32 {
	if x != nil {
		return x.Addr
	}
	return 0
}

func (x *AdminBackend_System) GetIplimitCount() int32 {
	if x != nil {
		return x.IplimitCount
	}
	return 0
}

func (x *AdminBackend_System) GetIplimitTime() int32 {
	if x != nil {
		return x.IplimitTime
	}
	return 0
}

type AdminBackend_Zap struct {
	state             protoimpl.MessageState `protogen:"open.v1"`
	Level             string                 `protobuf:"bytes,1,opt,name=level,proto3" json:"level,omitempty"`
	Prefix            string                 `protobuf:"bytes,2,opt,name=prefix,proto3" json:"prefix,omitempty"`
	Format            string                 `protobuf:"bytes,3,opt,name=format,proto3" json:"format,omitempty"`
	Director          string                 `protobuf:"bytes,4,opt,name=director,proto3" json:"director,omitempty"`
	EncodeLevel       string                 `protobuf:"bytes,5,opt,name=encode_level,json=encodeLevel,proto3" json:"encode_level,omitempty"`
	StacktraceKey     string                 `protobuf:"bytes,6,opt,name=stacktrace_key,json=stacktraceKey,proto3" json:"stacktrace_key,omitempty"`
	ShowLine          bool                   `protobuf:"varint,7,opt,name=show_line,json=showLine,proto3" json:"show_line,omitempty"`
	LogInConsole      bool                   `protobuf:"varint,8,opt,name=log_in_console,json=logInConsole,proto3" json:"log_in_console,omitempty"`
	RetentionDay      int32                  `protobuf:"varint,9,opt,name=retention_day,json=retentionDay,proto3" json:"retention_day,omitempty"`
	AccessReqBody     bool                   `protobuf:"varint,10,opt,name=access_req_body,json=accessReqBody,proto3" json:"access_req_body,omitempty"`
	AccessRespData    bool                   `protobuf:"varint,11,opt,name=access_resp_data,json=accessRespData,proto3" json:"access_resp_data,omitempty"`
	AccessReqHeaders  bool                   `protobuf:"varint,12,opt,name=access_req_headers,json=accessReqHeaders,proto3" json:"access_req_headers,omitempty"`
	AccessLogMaxBytes int32                  `protobuf:"varint,13,opt,name=access_log_max_bytes,json=accessLogMaxBytes,proto3" json:"access_log_max_bytes,omitempty"`
	FileOnlyModules   []string               `protobuf:"bytes,14,rep,name=file_only_modules,json=fileOnlyModules,proto3" json:"file_only_modules,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *AdminBackend_Zap) Reset() {
	*x = AdminBackend_Zap{}
	mi := &file_conf_conf_proto_msgTypes[16]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_Zap) ProtoMessage() {}

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

func (x *AdminBackend_Zap) GetLevel() string {
	if x != nil {
		return x.Level
	}
	return ""
}

func (x *AdminBackend_Zap) GetPrefix() string {
	if x != nil {
		return x.Prefix
	}
	return ""
}

func (x *AdminBackend_Zap) GetFormat() string {
	if x != nil {
		return x.Format
	}
	return ""
}

func (x *AdminBackend_Zap) GetDirector() string {
	if x != nil {
		return x.Director
	}
	return ""
}

func (x *AdminBackend_Zap) GetEncodeLevel() string {
	if x != nil {
		return x.EncodeLevel
	}
	return ""
}

func (x *AdminBackend_Zap) GetStacktraceKey() string {
	if x != nil {
		return x.StacktraceKey
	}
	return ""
}

func (x *AdminBackend_Zap) GetShowLine() bool {
	if x != nil {
		return x.ShowLine
	}
	return false
}

func (x *AdminBackend_Zap) GetLogInConsole() bool {
	if x != nil {
		return x.LogInConsole
	}
	return false
}

func (x *AdminBackend_Zap) GetRetentionDay() int32 {
	if x != nil {
		return x.RetentionDay
	}
	return 0
}

func (x *AdminBackend_Zap) GetAccessReqBody() bool {
	if x != nil {
		return x.AccessReqBody
	}
	return false
}

func (x *AdminBackend_Zap) GetAccessRespData() bool {
	if x != nil {
		return x.AccessRespData
	}
	return false
}

func (x *AdminBackend_Zap) GetAccessReqHeaders() bool {
	if x != nil {
		return x.AccessReqHeaders
	}
	return false
}

func (x *AdminBackend_Zap) GetAccessLogMaxBytes() int32 {
	if x != nil {
		return x.AccessLogMaxBytes
	}
	return 0
}

func (x *AdminBackend_Zap) GetFileOnlyModules() []string {
	if x != nil {
		return x.FileOnlyModules
	}
	return nil
}

type AdminBackend_CORS struct {
	state         protoimpl.MessageState   `protogen:"open.v1"`
	Mode          string                   `protobuf:"bytes,1,opt,name=mode,proto3" json:"mode,omitempty"`
	Whitelist     []*AdminBackend_CORSRule `protobuf:"bytes,2,rep,name=whitelist,proto3" json:"whitelist,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AdminBackend_CORS) Reset() {
	*x = AdminBackend_CORS{}
	mi := &file_conf_conf_proto_msgTypes[17]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_CORS) ProtoMessage() {}

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

func (x *AdminBackend_CORS) GetMode() string {
	if x != nil {
		return x.Mode
	}
	return ""
}

func (x *AdminBackend_CORS) GetWhitelist() []*AdminBackend_CORSRule {
	if x != nil {
		return x.Whitelist
	}
	return nil
}

type AdminBackend_CORSRule struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	AllowOrigin      string                 `protobuf:"bytes,1,opt,name=allow_origin,json=allowOrigin,proto3" json:"allow_origin,omitempty"`
	AllowMethods     string                 `protobuf:"bytes,2,opt,name=allow_methods,json=allowMethods,proto3" json:"allow_methods,omitempty"`
	AllowHeaders     string                 `protobuf:"bytes,3,opt,name=allow_headers,json=allowHeaders,proto3" json:"allow_headers,omitempty"`
	ExposeHeaders    string                 `protobuf:"bytes,4,opt,name=expose_headers,json=exposeHeaders,proto3" json:"expose_headers,omitempty"`
	AllowCredentials bool                   `protobuf:"varint,5,opt,name=allow_credentials,json=allowCredentials,proto3" json:"allow_credentials,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

func (x *AdminBackend_CORSRule) Reset() {
	*x = AdminBackend_CORSRule{}
	mi := &file_conf_conf_proto_msgTypes[18]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_CORSRule) ProtoMessage() {}

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

func (x *AdminBackend_CORSRule) GetAllowOrigin() string {
	if x != nil {
		return x.AllowOrigin
	}
	return ""
}

func (x *AdminBackend_CORSRule) GetAllowMethods() string {
	if x != nil {
		return x.AllowMethods
	}
	return ""
}

func (x *AdminBackend_CORSRule) GetAllowHeaders() string {
	if x != nil {
		return x.AllowHeaders
	}
	return ""
}

func (x *AdminBackend_CORSRule) GetExposeHeaders() string {
	if x != nil {
		return x.ExposeHeaders
	}
	return ""
}

func (x *AdminBackend_CORSRule) GetAllowCredentials() bool {
	if x != nil {
		return x.AllowCredentials
	}
	return false
}

type AdminBackend_App struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Node          string                 `protobuf:"bytes,1,opt,name=node,proto3" json:"node,omitempty"`
	AppId         string                 `protobuf:"bytes,2,opt,name=app_id,json=appId,proto3" json:"app_id,omitempty"`
	Env           string                 `protobuf:"bytes,3,opt,name=env,proto3" json:"env,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AdminBackend_App) Reset() {
	*x = AdminBackend_App{}
	mi := &file_conf_conf_proto_msgTypes[19]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_App) ProtoMessage() {}

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

func (x *AdminBackend_App) GetNode() string {
	if x != nil {
		return x.Node
	}
	return ""
}

func (x *AdminBackend_App) GetAppId() string {
	if x != nil {
		return x.AppId
	}
	return ""
}

func (x *AdminBackend_App) GetEnv() string {
	if x != nil {
		return x.Env
	}
	return ""
}

type AdminBackend_Storage struct {
	state         protoimpl.MessageState    `protogen:"open.v1"`
	Type          string                    `protobuf:"bytes,1,opt,name=type,proto3" json:"type,omitempty"`
	Qiniu         *AdminBackend_Qiniu       `protobuf:"bytes,2,opt,name=qiniu,proto3" json:"qiniu,omitempty"`
	AliyunOss     *AdminBackend_ObjectStore `protobuf:"bytes,3,opt,name=aliyun_oss,json=aliyunOss,proto3" json:"aliyun_oss,omitempty"`
	HuaweiObs     *AdminBackend_ObjectStore `protobuf:"bytes,4,opt,name=huawei_obs,json=huaweiObs,proto3" json:"huawei_obs,omitempty"`
	TencentCos    *AdminBackend_ObjectStore `protobuf:"bytes,5,opt,name=tencent_cos,json=tencentCos,proto3" json:"tencent_cos,omitempty"`
	AwsS3         *AdminBackend_ObjectStore `protobuf:"bytes,6,opt,name=aws_s3,json=awsS3,proto3" json:"aws_s3,omitempty"`
	CloudflareR2  *AdminBackend_ObjectStore `protobuf:"bytes,7,opt,name=cloudflare_r2,json=cloudflareR2,proto3" json:"cloudflare_r2,omitempty"`
	Minio         *AdminBackend_ObjectStore `protobuf:"bytes,8,opt,name=minio,proto3" json:"minio,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AdminBackend_Storage) Reset() {
	*x = AdminBackend_Storage{}
	mi := &file_conf_conf_proto_msgTypes[20]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_Storage) ProtoMessage() {}

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

func (x *AdminBackend_Storage) GetType() string {
	if x != nil {
		return x.Type
	}
	return ""
}

func (x *AdminBackend_Storage) GetQiniu() *AdminBackend_Qiniu {
	if x != nil {
		return x.Qiniu
	}
	return nil
}

func (x *AdminBackend_Storage) GetAliyunOss() *AdminBackend_ObjectStore {
	if x != nil {
		return x.AliyunOss
	}
	return nil
}

func (x *AdminBackend_Storage) GetHuaweiObs() *AdminBackend_ObjectStore {
	if x != nil {
		return x.HuaweiObs
	}
	return nil
}

func (x *AdminBackend_Storage) GetTencentCos() *AdminBackend_ObjectStore {
	if x != nil {
		return x.TencentCos
	}
	return nil
}

func (x *AdminBackend_Storage) GetAwsS3() *AdminBackend_ObjectStore {
	if x != nil {
		return x.AwsS3
	}
	return nil
}

func (x *AdminBackend_Storage) GetCloudflareR2() *AdminBackend_ObjectStore {
	if x != nil {
		return x.CloudflareR2
	}
	return nil
}

func (x *AdminBackend_Storage) GetMinio() *AdminBackend_ObjectStore {
	if x != nil {
		return x.Minio
	}
	return nil
}

type AdminBackend_Qiniu struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Zone          string                 `protobuf:"bytes,1,opt,name=zone,proto3" json:"zone,omitempty"`
	Bucket        string                 `protobuf:"bytes,2,opt,name=bucket,proto3" json:"bucket,omitempty"`
	BaseUrl       string                 `protobuf:"bytes,3,opt,name=base_url,json=baseUrl,proto3" json:"base_url,omitempty"`
	AccessKey     string                 `protobuf:"bytes,4,opt,name=access_key,json=accessKey,proto3" json:"access_key,omitempty"`
	SecretKey     string                 `protobuf:"bytes,5,opt,name=secret_key,json=secretKey,proto3" json:"secret_key,omitempty"`
	UseHttps      bool                   `protobuf:"varint,6,opt,name=use_https,json=useHttps,proto3" json:"use_https,omitempty"`
	UseCdnDomains bool                   `protobuf:"varint,7,opt,name=use_cdn_domains,json=useCdnDomains,proto3" json:"use_cdn_domains,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *AdminBackend_Qiniu) Reset() {
	*x = AdminBackend_Qiniu{}
	mi := &file_conf_conf_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_Qiniu) ProtoMessage() {}

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

func (x *AdminBackend_Qiniu) GetZone() string {
	if x != nil {
		return x.Zone
	}
	return ""
}

func (x *AdminBackend_Qiniu) GetBucket() string {
	if x != nil {
		return x.Bucket
	}
	return ""
}

func (x *AdminBackend_Qiniu) GetBaseUrl() string {
	if x != nil {
		return x.BaseUrl
	}
	return ""
}

func (x *AdminBackend_Qiniu) GetAccessKey() string {
	if x != nil {
		return x.AccessKey
	}
	return ""
}

func (x *AdminBackend_Qiniu) GetSecretKey() string {
	if x != nil {
		return x.SecretKey
	}
	return ""
}

func (x *AdminBackend_Qiniu) GetUseHttps() bool {
	if x != nil {
		return x.UseHttps
	}
	return false
}

func (x *AdminBackend_Qiniu) GetUseCdnDomains() bool {
	if x != nil {
		return x.UseCdnDomains
	}
	return false
}

// ObjectStore covers S3-compatible configuration used by public cloud
// providers and self-hosted MinIO.
type AdminBackend_ObjectStore struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	Endpoint       string                 `protobuf:"bytes,1,opt,name=endpoint,proto3" json:"endpoint,omitempty"`
	Region         string                 `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
	Bucket         string                 `protobuf:"bytes,3,opt,name=bucket,proto3" json:"bucket,omitempty"`
	AccessKey      string                 `protobuf:"bytes,4,opt,name=access_key,json=accessKey,proto3" json:"access_key,omitempty"`
	SecretKey      string                 `protobuf:"bytes,5,opt,name=secret_key,json=secretKey,proto3" json:"secret_key,omitempty"`
	BaseUrl        string                 `protobuf:"bytes,6,opt,name=base_url,json=baseUrl,proto3" json:"base_url,omitempty"`
	PathPrefix     string                 `protobuf:"bytes,7,opt,name=path_prefix,json=pathPrefix,proto3" json:"path_prefix,omitempty"`
	UseSsl         bool                   `protobuf:"varint,8,opt,name=use_ssl,json=useSsl,proto3" json:"use_ssl,omitempty"`
	ForcePathStyle bool                   `protobuf:"varint,9,opt,name=force_path_style,json=forcePathStyle,proto3" json:"force_path_style,omitempty"`
	AccountId      string                 `protobuf:"bytes,10,opt,name=account_id,json=accountId,proto3" json:"account_id,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *AdminBackend_ObjectStore) Reset() {
	*x = AdminBackend_ObjectStore{}
	mi := &file_conf_conf_proto_msgTypes[22]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*AdminBackend_ObjectStore) ProtoMessage() {}

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

func (x *AdminBackend_ObjectStore) GetEndpoint() string {
	if x != nil {
		return x.Endpoint
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetRegion() string {
	if x != nil {
		return x.Region
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetBucket() string {
	if x != nil {
		return x.Bucket
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetAccessKey() string {
	if x != nil {
		return x.AccessKey
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetSecretKey() string {
	if x != nil {
		return x.SecretKey
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetBaseUrl() string {
	if x != nil {
		return x.BaseUrl
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetPathPrefix() string {
	if x != nil {
		return x.PathPrefix
	}
	return ""
}

func (x *AdminBackend_ObjectStore) GetUseSsl() bool {
	if x != nil {
		return x.UseSsl
	}
	return false
}

func (x *AdminBackend_ObjectStore) GetForcePathStyle() bool {
	if x != nil {
		return x.ForcePathStyle
	}
	return false
}

func (x *AdminBackend_ObjectStore) GetAccountId() string {
	if x != nil {
		return x.AccountId
	}
	return ""
}

var File_conf_conf_proto protoreflect.FileDescriptor

const file_conf_conf_proto_rawDesc = "" +
	"\n" +
	"\x0fconf/conf.proto\x12\n" +
	"kratos.api\x1a\x1egoogle/protobuf/duration.proto\"\x8d\x01\n" +
	"\tBootstrap\x12*\n" +
	"\x06server\x18\x01 \x01(\v2\x12.kratos.api.ServerR\x06server\x12$\n" +
	"\x04data\x18\x02 \x01(\v2\x10.kratos.api.DataR\x04data\x12.\n" +
	"\x05admin\x18\x03 \x01(\v2\x18.kratos.api.AdminBackendR\x05admin\"\xa0\x01\n" +
	"\x06Server\x12+\n" +
	"\x04http\x18\x01 \x01(\v2\x17.kratos.api.Server.HTTPR\x04http\x1ai\n" +
	"\x04HTTP\x12\x18\n" +
	"\anetwork\x18\x01 \x01(\tR\anetwork\x12\x12\n" +
	"\x04addr\x18\x02 \x01(\tR\x04addr\x123\n" +
	"\atimeout\x18\x03 \x01(\v2\x19.google.protobuf.DurationR\atimeout\"\x86\f\n" +
	"\x04Data\x125\n" +
	"\bdatabase\x18\x01 \x01(\v2\x19.kratos.api.Data.DatabaseR\bdatabase\x12,\n" +
	"\x05redis\x18\x02 \x01(\v2\x16.kratos.api.Data.RedisR\x05redis\x12>\n" +
	"\rdatabase_list\x18\x03 \x03(\v2\x19.kratos.api.Data.DatabaseR\fdatabaseList\x125\n" +
	"\n" +
	"redis_list\x18\x04 \x03(\v2\x16.kratos.api.Data.RedisR\tredisList\x12,\n" +
	"\x05mongo\x18\x05 \x01(\v2\x16.kratos.api.Data.MongoR\x05mongo\x1a\xea\x03\n" +
	"\bDatabase\x12\x16\n" +
	"\x06driver\x18\x01 \x01(\tR\x06driver\x12\x16\n" +
	"\x06source\x18\x02 \x01(\tR\x06source\x12\x12\n" +
	"\x04host\x18\x03 \x01(\tR\x04host\x12\x12\n" +
	"\x04port\x18\x04 \x01(\tR\x04port\x12\x12\n" +
	"\x04user\x18\x05 \x01(\tR\x04user\x12\x1a\n" +
	"\bpassword\x18\x06 \x01(\tR\bpassword\x12\x12\n" +
	"\x04name\x18\a \x01(\tR\x04name\x12\x16\n" +
	"\x06config\x18\b \x01(\tR\x06config\x12\x12\n" +
	"\x04path\x18\t \x01(\tR\x04path\x12\x1d\n" +
	"\n" +
	"alias_name\x18\n" +
	" \x01(\tR\taliasName\x12\x18\n" +
	"\adisable\x18\v \x01(\bR\adisable\x12\x16\n" +
	"\x06prefix\x18\f \x01(\tR\x06prefix\x12\x16\n" +
	"\x06engine\x18\r \x01(\tR\x06engine\x12\x19\n" +
	"\blog_mode\x18\x0e \x01(\tR\alogMode\x12$\n" +
	"\x0emax_idle_conns\x18\x0f \x01(\x05R\fmaxIdleConns\x12$\n" +
	"\x0emax_open_conns\x18\x10 \x01(\x05R\fmaxOpenConns\x12*\n" +
	"\x11conn_max_lifetime\x18\x11 \x01(\x05R\x0fconnMaxLifetime\x12\x1a\n" +
	"\bsingular\x18\x12 \x01(\bR\bsingular\x1a\xb9\x02\n" +
	"\x05Redis\x12\x18\n" +
	"\anetwork\x18\x01 \x01(\tR\anetwork\x12\x12\n" +
	"\x04addr\x18\x02 \x01(\tR\x04addr\x12<\n" +
	"\fread_timeout\x18\x03 \x01(\v2\x19.google.protobuf.DurationR\vreadTimeout\x12>\n" +
	"\rwrite_timeout\x18\x04 \x01(\v2\x19.google.protobuf.DurationR\fwriteTimeout\x12\x12\n" +
	"\x04name\x18\x05 \x01(\tR\x04name\x12\x1a\n" +
	"\bpassword\x18\x06 \x01(\tR\bpassword\x12\x0e\n" +
	"\x02db\x18\a \x01(\x05R\x02db\x12\x1f\n" +
	"\vuse_cluster\x18\b \x01(\bR\n" +
	"useCluster\x12#\n" +
	"\rcluster_addrs\x18\t \x03(\tR\fclusterAddrs\x1a3\n" +
	"\tMongoHost\x12\x12\n" +
	"\x04host\x18\x01 \x01(\tR\x04host\x12\x12\n" +
	"\x04port\x18\x02 \x01(\tR\x04port\x1a\x95\x03\n" +
	"\x05Mongo\x12\x12\n" +
	"\x04coll\x18\x01 \x01(\tR\x04coll\x12\x18\n" +
	"\aoptions\x18\x02 \x01(\tR\aoptions\x12\x1a\n" +
	"\bdatabase\x18\x03 \x01(\tR\bdatabase\x12\x1a\n" +
	"\busername\x18\x04 \x01(\tR\busername\x12\x1a\n" +
	"\bpassword\x18\x05 \x01(\tR\bpassword\x12\x1f\n" +
	"\vauth_source\x18\x06 \x01(\tR\n" +
	"authSource\x12\"\n" +
	"\rmin_pool_size\x18\a \x01(\x04R\vminPoolSize\x12\"\n" +
	"\rmax_pool_size\x18\b \x01(\x04R\vmaxPoolSize\x12*\n" +
	"\x11socket_timeout_ms\x18\t \x01(\x03R\x0fsocketTimeoutMs\x12,\n" +
	"\x12connect_timeout_ms\x18\n" +
	" \x01(\x03R\x10connectTimeoutMs\x12\x15\n" +
	"\x06is_zap\x18\v \x01(\bR\x05isZap\x120\n" +
	"\x05hosts\x18\f \x03(\v2\x1a.kratos.api.Data.MongoHostR\x05hosts\"\xad\x1c\n" +
	"\fAdminBackend\x12#\n" +
	"\rrouter_prefix\x18\x01 \x01(\tR\frouterPrefix\x12.\n" +
	"\x03jwt\x18\x02 \x01(\v2\x1c.kratos.api.AdminBackend.JWTR\x03jwt\x12:\n" +
	"\acaptcha\x18\x03 \x01(\v2 .kratos.api.AdminBackend.CaptchaR\acaptcha\x124\n" +
	"\x05local\x18\x04 \x01(\v2\x1e.kratos.api.AdminBackend.LocalR\x05local\x124\n" +
	"\x05email\x18\x05 \x01(\v2\x1e.kratos.api.AdminBackend.EmailR\x05email\x12:\n" +
	"\astorage\x18\x06 \x01(\v2 .kratos.api.AdminBackend.StorageR\astorage\x12\x1f\n" +
	"\vconfig_path\x18\a \x01(\tR\n" +
	"configPath\x124\n" +
	"\x05media\x18\b \x01(\v2\x1e.kratos.api.AdminBackend.MediaR\x05media\x12:\n" +
	"\tdisk_list\x18\t \x03(\v2\x1d.kratos.api.AdminBackend.DiskR\bdiskList\x127\n" +
	"\x06system\x18\n" +
	" \x01(\v2\x1f.kratos.api.AdminBackend.SystemR\x06system\x12.\n" +
	"\x03zap\x18\v \x01(\v2\x1c.kratos.api.AdminBackend.ZapR\x03zap\x121\n" +
	"\x04cors\x18\f \x01(\v2\x1d.kratos.api.AdminBackend.CORSR\x04cors\x12.\n" +
	"\x03app\x18\r \x01(\v2\x1c.kratos.api.AdminBackend.AppR\x03app\x1a\xb8\x01\n" +
	"\x03JWT\x12\x1f\n" +
	"\vsigning_key\x18\x01 \x01(\tR\n" +
	"signingKey\x12<\n" +
	"\fexpires_time\x18\x02 \x01(\v2\x19.google.protobuf.DurationR\vexpiresTime\x12:\n" +
	"\vbuffer_time\x18\x03 \x01(\v2\x19.google.protobuf.DurationR\n" +
	"bufferTime\x12\x16\n" +
	"\x06issuer\x18\x04 \x01(\tR\x06issuer\x1a\xa6\x01\n" +
	"\aCaptcha\x12\x19\n" +
	"\bkey_long\x18\x01 \x01(\x05R\akeyLong\x12\x1b\n" +
	"\timg_width\x18\x02 \x01(\x05R\bimgWidth\x12\x1d\n" +
	"\n" +
	"img_height\x18\x03 \x01(\x05R\timgHeight\x12D\n" +
	"\x10store_expiration\x18\x04 \x01(\v2\x19.google.protobuf.DurationR\x0fstoreExpiration\x1aG\n" +
	"\x05Local\x12\x1d\n" +
	"\n" +
	"store_path\x18\x01 \x01(\tR\tstorePath\x12\x1f\n" +
	"\vpath_prefix\x18\x02 \x01(\tR\n" +
	"pathPrefix\x1a\xc2\x01\n" +
	"\x05Email\x12\x0e\n" +
	"\x02to\x18\x01 \x01(\tR\x02to\x12\x12\n" +
	"\x04from\x18\x02 \x01(\tR\x04from\x12\x12\n" +
	"\x04host\x18\x03 \x01(\tR\x04host\x12\x16\n" +
	"\x06secret\x18\x04 \x01(\tR\x06secret\x12\x1a\n" +
	"\bnickname\x18\x05 \x01(\tR\bnickname\x12\x12\n" +
	"\x04port\x18\x06 \x01(\x05R\x04port\x12\x15\n" +
	"\x06is_ssl\x18\a \x01(\bR\x05isSsl\x12\"\n" +
	"\ris_login_auth\x18\b \x01(\bR\visLoginAuth\x1ai\n" +
	"\x05Media\x12\x1f\n" +
	"\vsession_ttl\x18\x01 \x01(\x05R\n" +
	"sessionTtl\x12\"\n" +
	"\rmax_file_size\x18\x02 \x01(\x03R\vmaxFileSize\x12\x1b\n" +
	"\tchunk_dir\x18\x03 \x01(\tR\bchunkDir\x1a'\n" +
	"\x04Disk\x12\x1f\n" +
	"\vmount_point\x18\x01 \x01(\tR\n" +
	"mountPoint\x1a\x9f\x02\n" +
	"\x06System\x12\x1b\n" +
	"\tuse_redis\x18\x01 \x01(\bR\buseRedis\x12%\n" +
	"\x0euse_multipoint\x18\x02 \x01(\bR\ruseMultipoint\x12&\n" +
	"\x0fuse_strict_auth\x18\x03 \x01(\bR\ruseStrictAuth\x120\n" +
	"\x14disable_auto_migrate\x18\x04 \x01(\bR\x12disableAutoMigrate\x12\x1b\n" +
	"\tuse_mongo\x18\x05 \x01(\bR\buseMongo\x12\x12\n" +
	"\x04addr\x18\x06 \x01(\x05R\x04addr\x12#\n" +
	"\riplimit_count\x18\a \x01(\x05R\fiplimitCount\x12!\n" +
	"\fiplimit_time\x18\b \x01(\x05R\viplimitTime\x1a\xf6\x03\n" +
	"\x03Zap\x12\x14\n" +
	"\x05level\x18\x01 \x01(\tR\x05level\x12\x16\n" +
	"\x06prefix\x18\x02 \x01(\tR\x06prefix\x12\x16\n" +
	"\x06format\x18\x03 \x01(\tR\x06format\x12\x1a\n" +
	"\bdirector\x18\x04 \x01(\tR\bdirector\x12!\n" +
	"\fencode_level\x18\x05 \x01(\tR\vencodeLevel\x12%\n" +
	"\x0estacktrace_key\x18\x06 \x01(\tR\rstacktraceKey\x12\x1b\n" +
	"\tshow_line\x18\a \x01(\bR\bshowLine\x12$\n" +
	"\x0elog_in_console\x18\b \x01(\bR\flogInConsole\x12#\n" +
	"\rretention_day\x18\t \x01(\x05R\fretentionDay\x12&\n" +
	"\x0faccess_req_body\x18\n" +
	" \x01(\bR\raccessReqBody\x12(\n" +
	"\x10access_resp_data\x18\v \x01(\bR\x0eaccessRespData\x12,\n" +
	"\x12access_req_headers\x18\f \x01(\bR\x10accessReqHeaders\x12/\n" +
	"\x14access_log_max_bytes\x18\r \x01(\x05R\x11accessLogMaxBytes\x12*\n" +
	"\x11file_only_modules\x18\x0e \x03(\tR\x0ffileOnlyModules\x1a[\n" +
	"\x04CORS\x12\x12\n" +
	"\x04mode\x18\x01 \x01(\tR\x04mode\x12?\n" +
	"\twhitelist\x18\x02 \x03(\v2!.kratos.api.AdminBackend.CORSRuleR\twhitelist\x1a\xcb\x01\n" +
	"\bCORSRule\x12!\n" +
	"\fallow_origin\x18\x01 \x01(\tR\vallowOrigin\x12#\n" +
	"\rallow_methods\x18\x02 \x01(\tR\fallowMethods\x12#\n" +
	"\rallow_headers\x18\x03 \x01(\tR\fallowHeaders\x12%\n" +
	"\x0eexpose_headers\x18\x04 \x01(\tR\rexposeHeaders\x12+\n" +
	"\x11allow_credentials\x18\x05 \x01(\bR\x10allowCredentials\x1aB\n" +
	"\x03App\x12\x12\n" +
	"\x04node\x18\x01 \x01(\tR\x04node\x12\x15\n" +
	"\x06app_id\x18\x02 \x01(\tR\x05appId\x12\x10\n" +
	"\x03env\x18\x03 \x01(\tR\x03env\x1a\xe8\x03\n" +
	"\aStorage\x12\x12\n" +
	"\x04type\x18\x01 \x01(\tR\x04type\x124\n" +
	"\x05qiniu\x18\x02 \x01(\v2\x1e.kratos.api.AdminBackend.QiniuR\x05qiniu\x12C\n" +
	"\n" +
	"aliyun_oss\x18\x03 \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\taliyunOss\x12C\n" +
	"\n" +
	"huawei_obs\x18\x04 \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\thuaweiObs\x12E\n" +
	"\vtencent_cos\x18\x05 \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\n" +
	"tencentCos\x12;\n" +
	"\x06aws_s3\x18\x06 \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\x05awsS3\x12I\n" +
	"\rcloudflare_r2\x18\a \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\fcloudflareR2\x12:\n" +
	"\x05minio\x18\b \x01(\v2$.kratos.api.AdminBackend.ObjectStoreR\x05minio\x1a\xd1\x01\n" +
	"\x05Qiniu\x12\x12\n" +
	"\x04zone\x18\x01 \x01(\tR\x04zone\x12\x16\n" +
	"\x06bucket\x18\x02 \x01(\tR\x06bucket\x12\x19\n" +
	"\bbase_url\x18\x03 \x01(\tR\abaseUrl\x12\x1d\n" +
	"\n" +
	"access_key\x18\x04 \x01(\tR\taccessKey\x12\x1d\n" +
	"\n" +
	"secret_key\x18\x05 \x01(\tR\tsecretKey\x12\x1b\n" +
	"\tuse_https\x18\x06 \x01(\bR\buseHttps\x12&\n" +
	"\x0fuse_cdn_domains\x18\a \x01(\bR\ruseCdnDomains\x1a\xb5\x02\n" +
	"\vObjectStore\x12\x1a\n" +
	"\bendpoint\x18\x01 \x01(\tR\bendpoint\x12\x16\n" +
	"\x06region\x18\x02 \x01(\tR\x06region\x12\x16\n" +
	"\x06bucket\x18\x03 \x01(\tR\x06bucket\x12\x1d\n" +
	"\n" +
	"access_key\x18\x04 \x01(\tR\taccessKey\x12\x1d\n" +
	"\n" +
	"secret_key\x18\x05 \x01(\tR\tsecretKey\x12\x19\n" +
	"\bbase_url\x18\x06 \x01(\tR\abaseUrl\x12\x1f\n" +
	"\vpath_prefix\x18\a \x01(\tR\n" +
	"pathPrefix\x12\x17\n" +
	"\ause_ssl\x18\b \x01(\bR\x06useSsl\x12(\n" +
	"\x10force_path_style\x18\t \x01(\bR\x0eforcePathStyle\x12\x1d\n" +
	"\n" +
	"account_id\x18\n" +
	" \x01(\tR\taccountIdB\x18Z\x16kra/internal/conf;confb\x06proto3"

var (
	file_conf_conf_proto_rawDescOnce sync.Once
	file_conf_conf_proto_rawDescData []byte
)

func file_conf_conf_proto_rawDescGZIP() []byte {
	file_conf_conf_proto_rawDescOnce.Do(func() {
		file_conf_conf_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_conf_conf_proto_rawDesc), len(file_conf_conf_proto_rawDesc)))
	})
	return file_conf_conf_proto_rawDescData
}

var file_conf_conf_proto_msgTypes = make([]protoimpl.MessageInfo, 23)
var file_conf_conf_proto_goTypes = []any{
	(*Bootstrap)(nil),                // 0: kratos.api.Bootstrap
	(*Server)(nil),                   // 1: kratos.api.Server
	(*Data)(nil),                     // 2: kratos.api.Data
	(*AdminBackend)(nil),             // 3: kratos.api.AdminBackend
	(*Server_HTTP)(nil),              // 4: kratos.api.Server.HTTP
	(*Data_Database)(nil),            // 5: kratos.api.Data.Database
	(*Data_Redis)(nil),               // 6: kratos.api.Data.Redis
	(*Data_MongoHost)(nil),           // 7: kratos.api.Data.MongoHost
	(*Data_Mongo)(nil),               // 8: kratos.api.Data.Mongo
	(*AdminBackend_JWT)(nil),         // 9: kratos.api.AdminBackend.JWT
	(*AdminBackend_Captcha)(nil),     // 10: kratos.api.AdminBackend.Captcha
	(*AdminBackend_Local)(nil),       // 11: kratos.api.AdminBackend.Local
	(*AdminBackend_Email)(nil),       // 12: kratos.api.AdminBackend.Email
	(*AdminBackend_Media)(nil),       // 13: kratos.api.AdminBackend.Media
	(*AdminBackend_Disk)(nil),        // 14: kratos.api.AdminBackend.Disk
	(*AdminBackend_System)(nil),      // 15: kratos.api.AdminBackend.System
	(*AdminBackend_Zap)(nil),         // 16: kratos.api.AdminBackend.Zap
	(*AdminBackend_CORS)(nil),        // 17: kratos.api.AdminBackend.CORS
	(*AdminBackend_CORSRule)(nil),    // 18: kratos.api.AdminBackend.CORSRule
	(*AdminBackend_App)(nil),         // 19: kratos.api.AdminBackend.App
	(*AdminBackend_Storage)(nil),     // 20: kratos.api.AdminBackend.Storage
	(*AdminBackend_Qiniu)(nil),       // 21: kratos.api.AdminBackend.Qiniu
	(*AdminBackend_ObjectStore)(nil), // 22: kratos.api.AdminBackend.ObjectStore
	(*durationpb.Duration)(nil),      // 23: google.protobuf.Duration
}
var file_conf_conf_proto_depIdxs = []int32{
	1,  // 0: kratos.api.Bootstrap.server:type_name -> kratos.api.Server
	2,  // 1: kratos.api.Bootstrap.data:type_name -> kratos.api.Data
	3,  // 2: kratos.api.Bootstrap.admin:type_name -> kratos.api.AdminBackend
	4,  // 3: kratos.api.Server.http:type_name -> kratos.api.Server.HTTP
	5,  // 4: kratos.api.Data.database:type_name -> kratos.api.Data.Database
	6,  // 5: kratos.api.Data.redis:type_name -> kratos.api.Data.Redis
	5,  // 6: kratos.api.Data.database_list:type_name -> kratos.api.Data.Database
	6,  // 7: kratos.api.Data.redis_list:type_name -> kratos.api.Data.Redis
	8,  // 8: kratos.api.Data.mongo:type_name -> kratos.api.Data.Mongo
	9,  // 9: kratos.api.AdminBackend.jwt:type_name -> kratos.api.AdminBackend.JWT
	10, // 10: kratos.api.AdminBackend.captcha:type_name -> kratos.api.AdminBackend.Captcha
	11, // 11: kratos.api.AdminBackend.local:type_name -> kratos.api.AdminBackend.Local
	12, // 12: kratos.api.AdminBackend.email:type_name -> kratos.api.AdminBackend.Email
	20, // 13: kratos.api.AdminBackend.storage:type_name -> kratos.api.AdminBackend.Storage
	13, // 14: kratos.api.AdminBackend.media:type_name -> kratos.api.AdminBackend.Media
	14, // 15: kratos.api.AdminBackend.disk_list:type_name -> kratos.api.AdminBackend.Disk
	15, // 16: kratos.api.AdminBackend.system:type_name -> kratos.api.AdminBackend.System
	16, // 17: kratos.api.AdminBackend.zap:type_name -> kratos.api.AdminBackend.Zap
	17, // 18: kratos.api.AdminBackend.cors:type_name -> kratos.api.AdminBackend.CORS
	19, // 19: kratos.api.AdminBackend.app:type_name -> kratos.api.AdminBackend.App
	23, // 20: kratos.api.Server.HTTP.timeout:type_name -> google.protobuf.Duration
	23, // 21: kratos.api.Data.Redis.read_timeout:type_name -> google.protobuf.Duration
	23, // 22: kratos.api.Data.Redis.write_timeout:type_name -> google.protobuf.Duration
	7,  // 23: kratos.api.Data.Mongo.hosts:type_name -> kratos.api.Data.MongoHost
	23, // 24: kratos.api.AdminBackend.JWT.expires_time:type_name -> google.protobuf.Duration
	23, // 25: kratos.api.AdminBackend.JWT.buffer_time:type_name -> google.protobuf.Duration
	23, // 26: kratos.api.AdminBackend.Captcha.store_expiration:type_name -> google.protobuf.Duration
	18, // 27: kratos.api.AdminBackend.CORS.whitelist:type_name -> kratos.api.AdminBackend.CORSRule
	21, // 28: kratos.api.AdminBackend.Storage.qiniu:type_name -> kratos.api.AdminBackend.Qiniu
	22, // 29: kratos.api.AdminBackend.Storage.aliyun_oss:type_name -> kratos.api.AdminBackend.ObjectStore
	22, // 30: kratos.api.AdminBackend.Storage.huawei_obs:type_name -> kratos.api.AdminBackend.ObjectStore
	22, // 31: kratos.api.AdminBackend.Storage.tencent_cos:type_name -> kratos.api.AdminBackend.ObjectStore
	22, // 32: kratos.api.AdminBackend.Storage.aws_s3:type_name -> kratos.api.AdminBackend.ObjectStore
	22, // 33: kratos.api.AdminBackend.Storage.cloudflare_r2:type_name -> kratos.api.AdminBackend.ObjectStore
	22, // 34: kratos.api.AdminBackend.Storage.minio:type_name -> kratos.api.AdminBackend.ObjectStore
	35, // [35:35] is the sub-list for method output_type
	35, // [35:35] is the sub-list for method input_type
	35, // [35:35] is the sub-list for extension type_name
	35, // [35:35] is the sub-list for extension extendee
	0,  // [0:35] is the sub-list for field type_name
}

func init() { file_conf_conf_proto_init() }
func file_conf_conf_proto_init() {
	if File_conf_conf_proto != nil {
		return
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_conf_conf_proto_rawDesc), len(file_conf_conf_proto_rawDesc)),
			NumEnums:      0,
			NumMessages:   23,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_conf_conf_proto_goTypes,
		DependencyIndexes: file_conf_conf_proto_depIdxs,
		MessageInfos:      file_conf_conf_proto_msgTypes,
	}.Build()
	File_conf_conf_proto = out.File
	file_conf_conf_proto_goTypes = nil
	file_conf_conf_proto_depIdxs = nil
}
