// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.34.2
// 	protoc        (unknown)
// source: global/serverless/v1/resources.proto

package serverlessv1

import (
	v11 "github.com/tidbcloud/tidb-management-service/api/spec/global/common/v1"
	v1 "github.com/tidbcloud/tidb-management-service/api/spec/regional/serverless/v1"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
)

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

type Sort int32

const (
	Sort_SORT_UNSPECIFIED Sort = 0
	Sort_SORT_ASC         Sort = 1
	Sort_SORT_DESC        Sort = 2
)

// Enum value maps for Sort.
var (
	Sort_name = map[int32]string{
		0: "SORT_UNSPECIFIED",
		1: "SORT_ASC",
		2: "SORT_DESC",
	}
	Sort_value = map[string]int32{
		"SORT_UNSPECIFIED": 0,
		"SORT_ASC":         1,
		"SORT_DESC":        2,
	}
)

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

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

func (Sort) Descriptor() protoreflect.EnumDescriptor {
	return file_global_serverless_v1_resources_proto_enumTypes[0].Descriptor()
}

func (Sort) Type() protoreflect.EnumType {
	return &file_global_serverless_v1_resources_proto_enumTypes[0]
}

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

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

type UserClusterStatus int32

const (
	UserClusterStatus_USER_CLUSTER_STATUS_UNSPECIFIED UserClusterStatus = 0
	UserClusterStatus_USER_CLUSTER_STATUS_NORMAL      UserClusterStatus = 1
	UserClusterStatus_USER_CLUSTER_STATUS_CREATING    UserClusterStatus = 2
	UserClusterStatus_USER_CLUSTER_STATUS_UNAVAILABLE UserClusterStatus = 3
	UserClusterStatus_USER_CLUSTER_STATUS_RECOVERING  UserClusterStatus = 4
	UserClusterStatus_USER_CLUSTER_STATUS_IMPORTING   UserClusterStatus = 5
	UserClusterStatus_USER_CLUSTER_STATUS_MAINTAINING UserClusterStatus = 6
	UserClusterStatus_USER_CLUSTER_STATUS_DELETED     UserClusterStatus = 7
)

// Enum value maps for UserClusterStatus.
var (
	UserClusterStatus_name = map[int32]string{
		0: "USER_CLUSTER_STATUS_UNSPECIFIED",
		1: "USER_CLUSTER_STATUS_NORMAL",
		2: "USER_CLUSTER_STATUS_CREATING",
		3: "USER_CLUSTER_STATUS_UNAVAILABLE",
		4: "USER_CLUSTER_STATUS_RECOVERING",
		5: "USER_CLUSTER_STATUS_IMPORTING",
		6: "USER_CLUSTER_STATUS_MAINTAINING",
		7: "USER_CLUSTER_STATUS_DELETED",
	}
	UserClusterStatus_value = map[string]int32{
		"USER_CLUSTER_STATUS_UNSPECIFIED": 0,
		"USER_CLUSTER_STATUS_NORMAL":      1,
		"USER_CLUSTER_STATUS_CREATING":    2,
		"USER_CLUSTER_STATUS_UNAVAILABLE": 3,
		"USER_CLUSTER_STATUS_RECOVERING":  4,
		"USER_CLUSTER_STATUS_IMPORTING":   5,
		"USER_CLUSTER_STATUS_MAINTAINING": 6,
		"USER_CLUSTER_STATUS_DELETED":     7,
	}
)

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

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

func (UserClusterStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_global_serverless_v1_resources_proto_enumTypes[1].Descriptor()
}

func (UserClusterStatus) Type() protoreflect.EnumType {
	return &file_global_serverless_v1_resources_proto_enumTypes[1]
}

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

// Deprecated: Use UserClusterStatus.Descriptor instead.
func (UserClusterStatus) EnumDescriptor() ([]byte, []int) {
	return file_global_serverless_v1_resources_proto_rawDescGZIP(), []int{1}
}

type SqlUser_Type int32

const (
	SqlUser_TYPE_UNSPECIFIED  SqlUser_Type = 0
	SqlUser_TYPE_USER_DEFINED SqlUser_Type = 1 // User Defined User
	SqlUser_TYPE_DELEGATE     SqlUser_Type = 2 // delegate user
)

// Enum value maps for SqlUser_Type.
var (
	SqlUser_Type_name = map[int32]string{
		0: "TYPE_UNSPECIFIED",
		1: "TYPE_USER_DEFINED",
		2: "TYPE_DELEGATE",
	}
	SqlUser_Type_value = map[string]int32{
		"TYPE_UNSPECIFIED":  0,
		"TYPE_USER_DEFINED": 1,
		"TYPE_DELEGATE":     2,
	}
)

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

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

func (SqlUser_Type) Descriptor() protoreflect.EnumDescriptor {
	return file_global_serverless_v1_resources_proto_enumTypes[2].Descriptor()
}

func (SqlUser_Type) Type() protoreflect.EnumType {
	return &file_global_serverless_v1_resources_proto_enumTypes[2]
}

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

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

type SqlUser_BuiltinRole int32

const (
	SqlUser_BUILTIN_ROLE_UNSPECIFIED SqlUser_BuiltinRole = 0
	SqlUser_BUILTIN_ROLE_USER_ADMIN  SqlUser_BuiltinRole = 1 // db admin role, include the majority of privileges exclude some server management privileges
	// BUILTIN_ROLE_USER_MEMBER = 2; // unused
	// BUILTIN_ROLE_USER_OBSERVER = 3; // unused
	SqlUser_BUILTIN_ROLE_CDC_ADMIN SqlUser_BuiltinRole = 4 // used for cdc, enable the cdc component could make changes in the secondary cluster.
)

// Enum value maps for SqlUser_BuiltinRole.
var (
	SqlUser_BuiltinRole_name = map[int32]string{
		0: "BUILTIN_ROLE_UNSPECIFIED",
		1: "BUILTIN_ROLE_USER_ADMIN",
		4: "BUILTIN_ROLE_CDC_ADMIN",
	}
	SqlUser_BuiltinRole_value = map[string]int32{
		"BUILTIN_ROLE_UNSPECIFIED": 0,
		"BUILTIN_ROLE_USER_ADMIN":  1,
		"BUILTIN_ROLE_CDC_ADMIN":   4,
	}
)

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

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

func (SqlUser_BuiltinRole) Descriptor() protoreflect.EnumDescriptor {
	return file_global_serverless_v1_resources_proto_enumTypes[3].Descriptor()
}

func (SqlUser_BuiltinRole) Type() protoreflect.EnumType {
	return &file_global_serverless_v1_resources_proto_enumTypes[3]
}

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

// Deprecated: Use SqlUser_BuiltinRole.Descriptor instead.
func (SqlUser_BuiltinRole) EnumDescriptor() ([]byte, []int) {
	return file_global_serverless_v1_resources_proto_rawDescGZIP(), []int{9, 1}
}

type SqlUser_AuthMethod int32

const (
	SqlUser_AUTH_METHOD_UNSPECIFIED SqlUser_AuthMethod = 0
	SqlUser_AUTH_METHOD_PASSWORD    SqlUser_AuthMethod = 1
	SqlUser_AUTH_METHOD_TOKEN       SqlUser_AuthMethod = 2 // only delegate user can use this method now
)

// Enum value maps for SqlUser_AuthMethod.
var (
	SqlUser_AuthMethod_name = map[int32]string{
		0: "AUTH_METHOD_UNSPECIFIED",
		1: "AUTH_METHOD_PASSWORD",
		2: "AUTH_METHOD_TOKEN",
	}
	SqlUser_AuthMethod_value = map[string]int32{
		"AUTH_METHOD_UNSPECIFIED": 0,
		"AUTH_METHOD_PASSWORD":    1,
		"AUTH_METHOD_TOKEN":       2,
	}
)

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

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

func (SqlUser_AuthMethod) Descriptor() protoreflect.EnumDescriptor {
	return file_global_serverless_v1_resources_proto_enumTypes[4].Descriptor()
}

func (SqlUser_AuthMethod) Type() protoreflect.EnumType {
	return &file_global_serverless_v1_resources_proto_enumTypes[4]
}

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

// Deprecated: Use SqlUser_AuthMethod.Descriptor instead.
func (SqlUser_AuthMethod) EnumDescriptor() ([]byte, []int) {
	return file_global_serverless_v1_resources_proto_rawDescGZIP(), []int{9, 2}
}

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

	Page     int64 `protobuf:"varint,1,opt,name=page,proto3" json:"page,omitempty"` // start from 1
	PageSize int64 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
}

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

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

func (*Pager) ProtoMessage() {}

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

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

func (x *Pager) GetPage() int64 {
	if x != nil {
		return x.Page
	}
	return 0
}

func (x *Pager) GetPageSize() int64 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

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

	OrderBy string `protobuf:"bytes,1,opt,name=order_by,json=orderBy,proto3" json:"order_by,omitempty"`
	Sort    Sort   `protobuf:"varint,2,opt,name=sort,proto3,enum=global.serverless.v1.Sort" json:"sort,omitempty"`
}

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

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

func (*Sorter) ProtoMessage() {}

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

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

func (x *Sorter) GetOrderBy() string {
	if x != nil {
		return x.OrderBy
	}
	return ""
}

func (x *Sorter) GetSort() Sort {
	if x != nil {
		return x.Sort
	}
	return Sort_SORT_UNSPECIFIED
}

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

	// see https://mariadb.com/kb/en/mariadb-error-codes/ to get all errno.
	SqlErrNo  uint32 `protobuf:"varint,1,opt,name=sql_err_no,json=sqlErrNo,proto3" json:"sql_err_no,omitempty"`   // the errno returned from tidb when execute this request
	SqlErrMsg string `protobuf:"bytes,2,opt,name=sql_err_msg,json=sqlErrMsg,proto3" json:"sql_err_msg,omitempty"` // the errmsg returned from tidb when execute this request
}

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

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

func (*ClusterProxyError) ProtoMessage() {}

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

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

func (x *ClusterProxyError) GetSqlErrNo() uint32 {
	if x != nil {
		return x.SqlErrNo
	}
	return 0
}

func (x *ClusterProxyError) GetSqlErrMsg() string {
	if x != nil {
		return x.SqlErrMsg
	}
	return ""
}

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

	ClusterId          string                                   `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	Cluster            *v1.ServerlessRegionalServiceClusterInfo `protobuf:"bytes,2,opt,name=cluster,proto3" json:"cluster,omitempty"`
	TenantId           uint64                                   `protobuf:"varint,3,opt,name=tenant_id,json=tenantId,proto3" json:"tenant_id,omitempty"`
	CloudProvider      string                                   `protobuf:"bytes,4,opt,name=cloud_provider,json=cloudProvider,proto3" json:"cloud_provider,omitempty"`
	Region             string                                   `protobuf:"bytes,5,opt,name=region,proto3" json:"region,omitempty"`
	HasSetPwd          bool                                     `protobuf:"varint,6,opt,name=has_set_pwd,json=hasSetPwd,proto3" json:"has_set_pwd,omitempty"`
	BackupPolicy       *AutomatedBackupPolicy                   `protobuf:"bytes,7,opt,name=backup_policy,json=backupPolicy,proto3" json:"backup_policy,omitempty"`
	SpendLimit         *SpendLimit                              `protobuf:"bytes,9,opt,name=spend_limit,json=spendLimit,proto3" json:"spend_limit,omitempty"`
	UserStatus         UserClusterStatus                        `protobuf:"varint,10,opt,name=user_status,json=userStatus,proto3,enum=global.serverless.v1.UserClusterStatus" json:"user_status,omitempty"`
	Attributes         *ServerlessServiceCluster_Attributes     `protobuf:"bytes,11,opt,name=attributes,proto3" json:"attributes,omitempty"`
	Features           []v11.AvailableFeature                   `protobuf:"varint,12,rep,packed,name=features,proto3,enum=global.common.v1.AvailableFeature" json:"features,omitempty"`
	ProjectId          uint64                                   `protobuf:"varint,14,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	CreationFinishedAt *int64                                   `protobuf:"varint,15,opt,name=creation_finished_at,json=creationFinishedAt,proto3,oneof" json:"creation_finished_at,omitempty"`
	InternalEndpoint   string                                   `protobuf:"bytes,16,opt,name=internal_endpoint,json=internalEndpoint,proto3" json:"internal_endpoint,omitempty"`
	RootPassword       string                                   `protobuf:"bytes,17,opt,name=root_password,json=rootPassword,proto3" json:"root_password,omitempty"`
	OriginalProjectId  uint64                                   `protobuf:"varint,18,opt,name=original_project_id,json=originalProjectId,proto3" json:"original_project_id,omitempty"`
	RuVersion          int32                                    `protobuf:"varint,19,opt,name=ru_version,json=ruVersion,proto3" json:"ru_version,omitempty"`
	EngineType         string                                   `protobuf:"bytes,20,opt,name=engine_type,json=engineType,proto3" json:"engine_type,omitempty"`
}

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

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

func (*ServerlessServiceCluster) ProtoMessage() {}

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

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

func (x *ServerlessServiceCluster) GetClusterId() string {
	if x != nil {
		return x.ClusterId
	}
	return ""
}

func (x *ServerlessServiceCluster) GetCluster() *v1.ServerlessRegionalServiceClusterInfo {
	if x != nil {
		return x.Cluster
	}
	return nil
}

func (x *ServerlessServiceCluster) GetTenantId() uint64 {
	if x != nil {
		return x.TenantId
	}
	return 0
}

func (x *ServerlessServiceCluster) GetCloudProvider() string {
	if x != nil {
		return x.CloudProvider
	}
	return ""
}

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

func (x *ServerlessServiceCluster) GetHasSetPwd() bool {
	if x != nil {
		return x.HasSetPwd
	}
	return false
}

func (x *ServerlessServiceCluster) GetBackupPolicy() *AutomatedBackupPolicy {
	if x != nil {
		return x.BackupPolicy
	}
	return nil
}

func (x *ServerlessServiceCluster) GetSpendLimit() *SpendLimit {
	if x != nil {
		return x.SpendLimit
	}
	return nil
}

func (x *ServerlessServiceCluster) GetUserStatus() UserClusterStatus {
	if x != nil {
		return x.UserStatus
	}
	return UserClusterStatus_USER_CLUSTER_STATUS_UNSPECIFIED
}

func (x *ServerlessServiceCluster) GetAttributes() *ServerlessServiceCluster_Attributes {
	if x != nil {
		return x.Attributes
	}
	return nil
}

func (x *ServerlessServiceCluster) GetFeatures() []v11.AvailableFeature {
	if x != nil {
		return x.Features
	}
	return nil
}

func (x *ServerlessServiceCluster) GetProjectId() uint64 {
	if x != nil {
		return x.ProjectId
	}
	return 0
}

func (x *ServerlessServiceCluster) GetCreationFinishedAt() int64 {
	if x != nil && x.CreationFinishedAt != nil {
		return *x.CreationFinishedAt
	}
	return 0
}

func (x *ServerlessServiceCluster) GetInternalEndpoint() string {
	if x != nil {
		return x.InternalEndpoint
	}
	return ""
}

func (x *ServerlessServiceCluster) GetRootPassword() string {
	if x != nil {
		return x.RootPassword
	}
	return ""
}

func (x *ServerlessServiceCluster) GetOriginalProjectId() uint64 {
	if x != nil {
		return x.OriginalProjectId
	}
	return 0
}

func (x *ServerlessServiceCluster) GetRuVersion() int32 {
	if x != nil {
		return x.RuVersion
	}
	return 0
}

func (x *ServerlessServiceCluster) GetEngineType() string {
	if x != nil {
		return x.EngineType
	}
	return ""
}

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

	EnhancedEncryptionEnabled bool `protobuf:"varint,1,opt,name=enhanced_encryption_enabled,json=enhancedEncryptionEnabled,proto3" json:"enhanced_encryption_enabled,omitempty"`
}

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

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

func (*EncryptionConfig) ProtoMessage() {}

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

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

func (x *EncryptionConfig) GetEnhancedEncryptionEnabled() bool {
	if x != nil {
		return x.EnhancedEncryptionEnabled
	}
	return false
}

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

	Monthly    uint32 `protobuf:"varint,1,opt,name=monthly,proto3" json:"monthly,omitempty"`
	Daily      uint32 `protobuf:"varint,2,opt,name=daily,proto3" json:"daily,omitempty"`
	FreeCredit uint32 `protobuf:"varint,3,opt,name=free_credit,json=freeCredit,proto3" json:"free_credit,omitempty"`
}

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

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

func (*SpendLimit) ProtoMessage() {}

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

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

func (x *SpendLimit) GetMonthly() uint32 {
	if x != nil {
		return x.Monthly
	}
	return 0
}

func (x *SpendLimit) GetDaily() uint32 {
	if x != nil {
		return x.Daily
	}
	return 0
}

func (x *SpendLimit) GetFreeCredit() uint32 {
	if x != nil {
		return x.FreeCredit
	}
	return 0
}

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

	BackupTime    string `protobuf:"bytes,1,opt,name=backup_time,json=backupTime,proto3" json:"backup_time,omitempty"`
	RetentionDays uint64 `protobuf:"varint,2,opt,name=retention_days,json=retentionDays,proto3" json:"retention_days,omitempty"`
}

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

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

func (*AutomatedBackupPolicy) ProtoMessage() {}

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

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

func (x *AutomatedBackupPolicy) GetBackupTime() string {
	if x != nil {
		return x.BackupTime
	}
	return ""
}

func (x *AutomatedBackupPolicy) GetRetentionDays() uint64 {
	if x != nil {
		return x.RetentionDays
	}
	return 0
}

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

	VpcEndpointId string   `protobuf:"bytes,1,opt,name=vpc_endpoint_id,json=vpcEndpointId,proto3" json:"vpc_endpoint_id,omitempty"`
	AzIds         []string `protobuf:"bytes,2,rep,name=az_ids,json=azIds,proto3" json:"az_ids,omitempty"`
}

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

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

func (*AWSPrivateEndpointService) ProtoMessage() {}

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

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

func (x *AWSPrivateEndpointService) GetVpcEndpointId() string {
	if x != nil {
		return x.VpcEndpointId
	}
	return ""
}

func (x *AWSPrivateEndpointService) GetAzIds() []string {
	if x != nil {
		return x.AzIds
	}
	return nil
}

type GCPPrivateEndpointService struct {
	state         protoimpl.MessageState
	sizeCache     protoimpl.SizeCache
	unknownFields protoimpl.UnknownFields
}

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

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

func (*GCPPrivateEndpointService) ProtoMessage() {}

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

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

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

	Username      string              `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"`
	BuiltinRole   SqlUser_BuiltinRole `protobuf:"varint,2,opt,name=builtin_role,json=builtinRole,proto3,enum=global.serverless.v1.SqlUser_BuiltinRole" json:"builtin_role,omitempty"` // optional
	CustomRoles   []string            `protobuf:"bytes,3,rep,name=custom_roles,json=customRoles,proto3" json:"custom_roles,omitempty"`                                                // optional
	Plugin        string              `protobuf:"bytes,4,opt,name=plugin,proto3" json:"plugin,omitempty"`                                                                             // optional
	AccountLocked string              `protobuf:"bytes,5,opt,name=account_locked,json=accountLocked,proto3" json:"account_locked,omitempty"`                                          // optional
}

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

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

func (*SqlUser) ProtoMessage() {}

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

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

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

func (x *SqlUser) GetBuiltinRole() SqlUser_BuiltinRole {
	if x != nil {
		return x.BuiltinRole
	}
	return SqlUser_BUILTIN_ROLE_UNSPECIFIED
}

func (x *SqlUser) GetCustomRoles() []string {
	if x != nil {
		return x.CustomRoles
	}
	return nil
}

func (x *SqlUser) GetPlugin() string {
	if x != nil {
		return x.Plugin
	}
	return ""
}

func (x *SqlUser) GetAccountLocked() string {
	if x != nil {
		return x.AccountLocked
	}
	return ""
}

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

	Username   string             `protobuf:"bytes,1,opt,name=username,proto3" json:"username,omitempty"` // the operator user must be delegate user
	AuthMethod SqlUser_AuthMethod `protobuf:"varint,2,opt,name=auth_method,json=authMethod,proto3,enum=global.serverless.v1.SqlUser_AuthMethod" json:"auth_method,omitempty"`
	// the credential for auth:
	//   - use tidb auth token if the auth_method is TOKEN
	//   - use encrypted and base64-encoded password if the auth_method is PASSWORD, refer to:
	//     https://github.com/tidbcloud/pkgv2/blob/main/secret/encrypt/encryptor.go#L24
	Credential string `protobuf:"bytes,3,opt,name=credential,proto3" json:"credential,omitempty"`
}

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

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

func (*SqlUserOperator) ProtoMessage() {}

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

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

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

func (x *SqlUserOperator) GetAuthMethod() SqlUser_AuthMethod {
	if x != nil {
		return x.AuthMethod
	}
	return SqlUser_AUTH_METHOD_UNSPECIFIED
}

func (x *SqlUserOperator) GetCredential() string {
	if x != nil {
		return x.Credential
	}
	return ""
}

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

	WithBuiltinCdcAdminRole *bool `protobuf:"varint,1,opt,name=with_builtin_cdc_admin_role,json=withBuiltinCdcAdminRole,proto3,oneof" json:"with_builtin_cdc_admin_role,omitempty"`
}

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

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

func (*ServerlessServiceCluster_Attributes) ProtoMessage() {}

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

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

func (x *ServerlessServiceCluster_Attributes) GetWithBuiltinCdcAdminRole() bool {
	if x != nil && x.WithBuiltinCdcAdminRole != nil {
		return *x.WithBuiltinCdcAdminRole
	}
	return false
}

var File_global_serverless_v1_resources_proto protoreflect.FileDescriptor

var file_global_serverless_v1_resources_proto_rawDesc = []byte{
	0x0a, 0x24, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c,
	0x65, 0x73, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73,
	0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x14, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x1a, 0x20, 0x67, 0x6c,
	0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x63, 0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2f, 0x76, 0x31, 0x2f, 0x72,
	0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
	0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
	0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
	0x26, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x61, 0x6c, 0x2f, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x6c, 0x65, 0x73, 0x73, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
	0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x38, 0x0a, 0x05, 0x50, 0x61, 0x67, 0x65, 0x72,
	0x12, 0x12, 0x0a, 0x04, 0x70, 0x61, 0x67, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x03, 0x52, 0x04,
	0x70, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
	0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x03, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
	0x65, 0x22, 0x53, 0x0a, 0x06, 0x53, 0x6f, 0x72, 0x74, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x08, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x5f, 0x62, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6f,
	0x72, 0x64, 0x65, 0x72, 0x42, 0x79, 0x12, 0x2e, 0x0a, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x18, 0x02,
	0x20, 0x01, 0x28, 0x0e, 0x32, 0x1a, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x6f, 0x72, 0x74,
	0x52, 0x04, 0x73, 0x6f, 0x72, 0x74, 0x22, 0x51, 0x0a, 0x11, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x50, 0x72, 0x6f, 0x78, 0x79, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x1c, 0x0a, 0x0a, 0x73,
	0x71, 0x6c, 0x5f, 0x65, 0x72, 0x72, 0x5f, 0x6e, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52,
	0x08, 0x73, 0x71, 0x6c, 0x45, 0x72, 0x72, 0x4e, 0x6f, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x71, 0x6c,
	0x5f, 0x65, 0x72, 0x72, 0x5f, 0x6d, 0x73, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
	0x73, 0x71, 0x6c, 0x45, 0x72, 0x72, 0x4d, 0x73, 0x67, 0x22, 0xb1, 0x08, 0x0a, 0x18, 0x53, 0x65,
	0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1d, 0x0a, 0x0a, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65,
	0x72, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x63, 0x6c, 0x75, 0x73,
	0x74, 0x65, 0x72, 0x49, 0x64, 0x12, 0x56, 0x0a, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x61,
	0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e,
	0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x52, 0x65, 0x67, 0x69, 0x6f, 0x6e,
	0x61, 0x6c, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72,
	0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x63, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a,
	0x09, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x08, 0x74, 0x65, 0x6e, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x6c,
	0x6f, 0x75, 0x64, 0x5f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x0d, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x64, 0x65,
	0x72, 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28,
	0x09, 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x0b, 0x68, 0x61, 0x73,
	0x5f, 0x73, 0x65, 0x74, 0x5f, 0x70, 0x77, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09,
	0x68, 0x61, 0x73, 0x53, 0x65, 0x74, 0x50, 0x77, 0x64, 0x12, 0x50, 0x0a, 0x0d, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x5f, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x2b, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65,
	0x64, 0x42, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x0c, 0x62,
	0x61, 0x63, 0x6b, 0x75, 0x70, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x41, 0x0a, 0x0b, 0x73,
	0x70, 0x65, 0x6e, 0x64, 0x5f, 0x6c, 0x69, 0x6d, 0x69, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b,
	0x32, 0x20, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72,
	0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6d,
	0x69, 0x74, 0x52, 0x0a, 0x73, 0x70, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12, 0x48,
	0x0a, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0a, 0x20,
	0x01, 0x28, 0x0e, 0x32, 0x27, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x73, 0x65, 0x72, 0x43,
	0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x75, 0x73,
	0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x59, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72,
	0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67,
	0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73,
	0x2e, 0x76, 0x31, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x65,
	0x72, 0x76, 0x69, 0x63, 0x65, 0x43, 0x6c, 0x75, 0x73, 0x74, 0x65, 0x72, 0x2e, 0x41, 0x74, 0x74,
	0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75,
	0x74, 0x65, 0x73, 0x12, 0x3e, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18,
	0x0c, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x22, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x63,
	0x6f, 0x6d, 0x6d, 0x6f, 0x6e, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62,
	0x6c, 0x65, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75,
	0x72, 0x65, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x04, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
	0x49, 0x64, 0x12, 0x35, 0x0a, 0x14, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66,
	0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x03,
	0x48, 0x00, 0x52, 0x12, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x69, 0x6e, 0x69,
	0x73, 0x68, 0x65, 0x64, 0x41, 0x74, 0x88, 0x01, 0x01, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x74,
	0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x18, 0x10,
	0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x45, 0x6e,
	0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x12, 0x2b, 0x0a, 0x0d, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x70,
	0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x11, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe0,
	0x41, 0x01, 0xe0, 0x41, 0x04, 0x52, 0x0c, 0x72, 0x6f, 0x6f, 0x74, 0x50, 0x61, 0x73, 0x73, 0x77,
	0x6f, 0x72, 0x64, 0x12, 0x2e, 0x0a, 0x13, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f,
	0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x12, 0x20, 0x01, 0x28, 0x04,
	0x52, 0x11, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63,
	0x74, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x75, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
	0x6e, 0x18, 0x13, 0x20, 0x01, 0x28, 0x05, 0x52, 0x09, 0x72, 0x75, 0x56, 0x65, 0x72, 0x73, 0x69,
	0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x5f, 0x74, 0x79, 0x70,
	0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x67, 0x69, 0x6e, 0x65, 0x54,
	0x79, 0x70, 0x65, 0x1a, 0x6f, 0x0a, 0x0a, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65,
	0x73, 0x12, 0x41, 0x0a, 0x1b, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69,
	0x6e, 0x5f, 0x63, 0x64, 0x63, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f, 0x72, 0x6f, 0x6c, 0x65,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x48, 0x00, 0x52, 0x17, 0x77, 0x69, 0x74, 0x68, 0x42, 0x75,
	0x69, 0x6c, 0x74, 0x69, 0x6e, 0x43, 0x64, 0x63, 0x41, 0x64, 0x6d, 0x69, 0x6e, 0x52, 0x6f, 0x6c,
	0x65, 0x88, 0x01, 0x01, 0x42, 0x1e, 0x0a, 0x1c, 0x5f, 0x77, 0x69, 0x74, 0x68, 0x5f, 0x62, 0x75,
	0x69, 0x6c, 0x74, 0x69, 0x6e, 0x5f, 0x63, 0x64, 0x63, 0x5f, 0x61, 0x64, 0x6d, 0x69, 0x6e, 0x5f,
	0x72, 0x6f, 0x6c, 0x65, 0x42, 0x17, 0x0a, 0x15, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x69, 0x6f,
	0x6e, 0x5f, 0x66, 0x69, 0x6e, 0x69, 0x73, 0x68, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x22, 0x52, 0x0a,
	0x10, 0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69,
	0x67, 0x12, 0x3e, 0x0a, 0x1b, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64, 0x5f, 0x65, 0x6e,
	0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64,
	0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x65, 0x6e, 0x68, 0x61, 0x6e, 0x63, 0x65, 0x64,
	0x45, 0x6e, 0x63, 0x72, 0x79, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65,
	0x64, 0x22, 0x5d, 0x0a, 0x0a, 0x53, 0x70, 0x65, 0x6e, 0x64, 0x4c, 0x69, 0x6d, 0x69, 0x74, 0x12,
	0x18, 0x0a, 0x07, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d,
	0x52, 0x07, 0x6d, 0x6f, 0x6e, 0x74, 0x68, 0x6c, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x64, 0x61, 0x69,
	0x6c, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x64, 0x61, 0x69, 0x6c, 0x79, 0x12,
	0x1f, 0x0a, 0x0b, 0x66, 0x72, 0x65, 0x65, 0x5f, 0x63, 0x72, 0x65, 0x64, 0x69, 0x74, 0x18, 0x03,
	0x20, 0x01, 0x28, 0x0d, 0x52, 0x0a, 0x66, 0x72, 0x65, 0x65, 0x43, 0x72, 0x65, 0x64, 0x69, 0x74,
	0x22, 0x5f, 0x0a, 0x15, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x42, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1f, 0x0a, 0x0b, 0x62, 0x61, 0x63,
	0x6b, 0x75, 0x70, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
	0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65,
	0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x64, 0x61, 0x79, 0x73, 0x18, 0x02, 0x20, 0x01,
	0x28, 0x04, 0x52, 0x0d, 0x72, 0x65, 0x74, 0x65, 0x6e, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x61, 0x79,
	0x73, 0x22, 0x5a, 0x0a, 0x19, 0x41, 0x57, 0x53, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x45,
	0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x26,
	0x0a, 0x0f, 0x76, 0x70, 0x63, 0x5f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x69,
	0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x76, 0x70, 0x63, 0x45, 0x6e, 0x64, 0x70,
	0x6f, 0x69, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x15, 0x0a, 0x06, 0x61, 0x7a, 0x5f, 0x69, 0x64, 0x73,
	0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x05, 0x61, 0x7a, 0x49, 0x64, 0x73, 0x22, 0x1b, 0x0a,
	0x19, 0x47, 0x43, 0x50, 0x50, 0x72, 0x69, 0x76, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x64, 0x70, 0x6f,
	0x69, 0x6e, 0x74, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x22, 0xdf, 0x03, 0x0a, 0x07, 0x53,
	0x71, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61,
	0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61,
	0x6d, 0x65, 0x12, 0x4c, 0x0a, 0x0c, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x5f, 0x72, 0x6f,
	0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x29, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61,
	0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e,
	0x53, 0x71, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x2e, 0x42, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x52,
	0x6f, 0x6c, 0x65, 0x52, 0x0b, 0x62, 0x75, 0x69, 0x6c, 0x74, 0x69, 0x6e, 0x52, 0x6f, 0x6c, 0x65,
	0x12, 0x21, 0x0a, 0x0c, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x73,
	0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0b, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x52, 0x6f,
	0x6c, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x18, 0x04, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x6c, 0x75, 0x67, 0x69, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x61,
	0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6c, 0x6f, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x05, 0x20,
	0x01, 0x28, 0x09, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4c, 0x6f, 0x63, 0x6b,
	0x65, 0x64, 0x22, 0x46, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59,
	0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
	0x12, 0x15, 0x0a, 0x11, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x44, 0x45,
	0x46, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x59, 0x50, 0x45, 0x5f,
	0x44, 0x45, 0x4c, 0x45, 0x47, 0x41, 0x54, 0x45, 0x10, 0x02, 0x22, 0x64, 0x0a, 0x0b, 0x42, 0x75,
	0x69, 0x6c, 0x74, 0x69, 0x6e, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x42, 0x55, 0x49,
	0x4c, 0x54, 0x49, 0x4e, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
	0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1b, 0x0a, 0x17, 0x42, 0x55, 0x49, 0x4c, 0x54,
	0x49, 0x4e, 0x5f, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x41, 0x44, 0x4d,
	0x49, 0x4e, 0x10, 0x01, 0x12, 0x1a, 0x0a, 0x16, 0x42, 0x55, 0x49, 0x4c, 0x54, 0x49, 0x4e, 0x5f,
	0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x43, 0x44, 0x43, 0x5f, 0x41, 0x44, 0x4d, 0x49, 0x4e, 0x10, 0x04,
	0x22, 0x5a, 0x0a, 0x0a, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1b,
	0x0a, 0x17, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x55, 0x4e,
	0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x18, 0x0a, 0x14, 0x41,
	0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45, 0x54, 0x48, 0x4f, 0x44, 0x5f, 0x50, 0x41, 0x53, 0x53, 0x57,
	0x4f, 0x52, 0x44, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x55, 0x54, 0x48, 0x5f, 0x4d, 0x45,
	0x54, 0x48, 0x4f, 0x44, 0x5f, 0x54, 0x4f, 0x4b, 0x45, 0x4e, 0x10, 0x02, 0x22, 0x98, 0x01, 0x0a,
	0x0f, 0x53, 0x71, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x6f, 0x72,
	0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
	0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x0b,
	0x61, 0x75, 0x74, 0x68, 0x5f, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28,
	0x0e, 0x32, 0x28, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x73, 0x65, 0x72, 0x76, 0x65,
	0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x2e, 0x53, 0x71, 0x6c, 0x55, 0x73, 0x65, 0x72,
	0x2e, 0x41, 0x75, 0x74, 0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x52, 0x0a, 0x61, 0x75, 0x74,
	0x68, 0x4d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x64, 0x65,
	0x6e, 0x74, 0x69, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x72, 0x65,
	0x64, 0x65, 0x6e, 0x74, 0x69, 0x61, 0x6c, 0x2a, 0x39, 0x0a, 0x04, 0x53, 0x6f, 0x72, 0x74, 0x12,
	0x14, 0x0a, 0x10, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
	0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x41, 0x53,
	0x43, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x4f, 0x52, 0x54, 0x5f, 0x44, 0x45, 0x53, 0x43,
	0x10, 0x02, 0x2a, 0xac, 0x02, 0x0a, 0x11, 0x55, 0x73, 0x65, 0x72, 0x43, 0x6c, 0x75, 0x73, 0x74,
	0x65, 0x72, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x23, 0x0a, 0x1f, 0x55, 0x53, 0x45, 0x52,
	0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1e, 0x0a,
	0x1a, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54,
	0x41, 0x54, 0x55, 0x53, 0x5f, 0x4e, 0x4f, 0x52, 0x4d, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x20, 0x0a,
	0x1c, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54,
	0x41, 0x54, 0x55, 0x53, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12,
	0x23, 0x0a, 0x1f, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f,
	0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x41, 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42,
	0x4c, 0x45, 0x10, 0x03, 0x12, 0x22, 0x0a, 0x1e, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55,
	0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x52, 0x45, 0x43, 0x4f,
	0x56, 0x45, 0x52, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x21, 0x0a, 0x1d, 0x55, 0x53, 0x45, 0x52,
	0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f,
	0x49, 0x4d, 0x50, 0x4f, 0x52, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x23, 0x0a, 0x1f, 0x55,
	0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41, 0x54,
	0x55, 0x53, 0x5f, 0x4d, 0x41, 0x49, 0x4e, 0x54, 0x41, 0x49, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x06,
	0x12, 0x1f, 0x0a, 0x1b, 0x55, 0x53, 0x45, 0x52, 0x5f, 0x43, 0x4c, 0x55, 0x53, 0x54, 0x45, 0x52,
	0x5f, 0x53, 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10,
	0x07, 0x42, 0xf7, 0x01, 0x0a, 0x18, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c,
	0x2e, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2e, 0x76, 0x31, 0x42, 0x0e,
	0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
	0x5a, 0x57, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x74, 0x69, 0x64,
	0x62, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x74, 0x69, 0x64, 0x62, 0x2d, 0x6d, 0x61, 0x6e, 0x61,
	0x67, 0x65, 0x6d, 0x65, 0x6e, 0x74, 0x2d, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x2f, 0x61,
	0x70, 0x69, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x2f, 0x67, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2f, 0x73,
	0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x2f, 0x76, 0x31, 0x3b, 0x73, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x76, 0x31, 0xa2, 0x02, 0x03, 0x47, 0x53, 0x58, 0xaa,
	0x02, 0x14, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c,
	0x65, 0x73, 0x73, 0x2e, 0x56, 0x31, 0xca, 0x02, 0x15, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f,
	0x5c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x5c, 0x56, 0x31, 0xe2, 0x02,
	0x21, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x5f, 0x5c, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x6c,
	0x65, 0x73, 0x73, 0x5c, 0x56, 0x31, 0x5c, 0x47, 0x50, 0x42, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
	0x74, 0x61, 0xea, 0x02, 0x16, 0x47, 0x6c, 0x6f, 0x62, 0x61, 0x6c, 0x3a, 0x3a, 0x53, 0x65, 0x72,
	0x76, 0x65, 0x72, 0x6c, 0x65, 0x73, 0x73, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
	0x74, 0x6f, 0x33,
}

var (
	file_global_serverless_v1_resources_proto_rawDescOnce sync.Once
	file_global_serverless_v1_resources_proto_rawDescData = file_global_serverless_v1_resources_proto_rawDesc
)

func file_global_serverless_v1_resources_proto_rawDescGZIP() []byte {
	file_global_serverless_v1_resources_proto_rawDescOnce.Do(func() {
		file_global_serverless_v1_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_global_serverless_v1_resources_proto_rawDescData)
	})
	return file_global_serverless_v1_resources_proto_rawDescData
}

var file_global_serverless_v1_resources_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_global_serverless_v1_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
var file_global_serverless_v1_resources_proto_goTypes = []any{
	(Sort)(0),                                       // 0: global.serverless.v1.Sort
	(UserClusterStatus)(0),                          // 1: global.serverless.v1.UserClusterStatus
	(SqlUser_Type)(0),                               // 2: global.serverless.v1.SqlUser.Type
	(SqlUser_BuiltinRole)(0),                        // 3: global.serverless.v1.SqlUser.BuiltinRole
	(SqlUser_AuthMethod)(0),                         // 4: global.serverless.v1.SqlUser.AuthMethod
	(*Pager)(nil),                                   // 5: global.serverless.v1.Pager
	(*Sorter)(nil),                                  // 6: global.serverless.v1.Sorter
	(*ClusterProxyError)(nil),                       // 7: global.serverless.v1.ClusterProxyError
	(*ServerlessServiceCluster)(nil),                // 8: global.serverless.v1.ServerlessServiceCluster
	(*EncryptionConfig)(nil),                        // 9: global.serverless.v1.EncryptionConfig
	(*SpendLimit)(nil),                              // 10: global.serverless.v1.SpendLimit
	(*AutomatedBackupPolicy)(nil),                   // 11: global.serverless.v1.AutomatedBackupPolicy
	(*AWSPrivateEndpointService)(nil),               // 12: global.serverless.v1.AWSPrivateEndpointService
	(*GCPPrivateEndpointService)(nil),               // 13: global.serverless.v1.GCPPrivateEndpointService
	(*SqlUser)(nil),                                 // 14: global.serverless.v1.SqlUser
	(*SqlUserOperator)(nil),                         // 15: global.serverless.v1.SqlUserOperator
	(*ServerlessServiceCluster_Attributes)(nil),     // 16: global.serverless.v1.ServerlessServiceCluster.Attributes
	(*v1.ServerlessRegionalServiceClusterInfo)(nil), // 17: regional.serverless.v1.ServerlessRegionalServiceClusterInfo
	(v11.AvailableFeature)(0),                       // 18: global.common.v1.AvailableFeature
}
var file_global_serverless_v1_resources_proto_depIdxs = []int32{
	0,  // 0: global.serverless.v1.Sorter.sort:type_name -> global.serverless.v1.Sort
	17, // 1: global.serverless.v1.ServerlessServiceCluster.cluster:type_name -> regional.serverless.v1.ServerlessRegionalServiceClusterInfo
	11, // 2: global.serverless.v1.ServerlessServiceCluster.backup_policy:type_name -> global.serverless.v1.AutomatedBackupPolicy
	10, // 3: global.serverless.v1.ServerlessServiceCluster.spend_limit:type_name -> global.serverless.v1.SpendLimit
	1,  // 4: global.serverless.v1.ServerlessServiceCluster.user_status:type_name -> global.serverless.v1.UserClusterStatus
	16, // 5: global.serverless.v1.ServerlessServiceCluster.attributes:type_name -> global.serverless.v1.ServerlessServiceCluster.Attributes
	18, // 6: global.serverless.v1.ServerlessServiceCluster.features:type_name -> global.common.v1.AvailableFeature
	3,  // 7: global.serverless.v1.SqlUser.builtin_role:type_name -> global.serverless.v1.SqlUser.BuiltinRole
	4,  // 8: global.serverless.v1.SqlUserOperator.auth_method:type_name -> global.serverless.v1.SqlUser.AuthMethod
	9,  // [9:9] is the sub-list for method output_type
	9,  // [9:9] is the sub-list for method input_type
	9,  // [9:9] is the sub-list for extension type_name
	9,  // [9:9] is the sub-list for extension extendee
	0,  // [0:9] is the sub-list for field type_name
}

func init() { file_global_serverless_v1_resources_proto_init() }
func file_global_serverless_v1_resources_proto_init() {
	if File_global_serverless_v1_resources_proto != nil {
		return
	}
	if !protoimpl.UnsafeEnabled {
		file_global_serverless_v1_resources_proto_msgTypes[0].Exporter = func(v any, i int) any {
			switch v := v.(*Pager); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[1].Exporter = func(v any, i int) any {
			switch v := v.(*Sorter); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[2].Exporter = func(v any, i int) any {
			switch v := v.(*ClusterProxyError); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[3].Exporter = func(v any, i int) any {
			switch v := v.(*ServerlessServiceCluster); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[4].Exporter = func(v any, i int) any {
			switch v := v.(*EncryptionConfig); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[5].Exporter = func(v any, i int) any {
			switch v := v.(*SpendLimit); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[6].Exporter = func(v any, i int) any {
			switch v := v.(*AutomatedBackupPolicy); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[7].Exporter = func(v any, i int) any {
			switch v := v.(*AWSPrivateEndpointService); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[8].Exporter = func(v any, i int) any {
			switch v := v.(*GCPPrivateEndpointService); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[9].Exporter = func(v any, i int) any {
			switch v := v.(*SqlUser); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[10].Exporter = func(v any, i int) any {
			switch v := v.(*SqlUserOperator); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
		file_global_serverless_v1_resources_proto_msgTypes[11].Exporter = func(v any, i int) any {
			switch v := v.(*ServerlessServiceCluster_Attributes); i {
			case 0:
				return &v.state
			case 1:
				return &v.sizeCache
			case 2:
				return &v.unknownFields
			default:
				return nil
			}
		}
	}
	file_global_serverless_v1_resources_proto_msgTypes[3].OneofWrappers = []any{}
	file_global_serverless_v1_resources_proto_msgTypes[11].OneofWrappers = []any{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: file_global_serverless_v1_resources_proto_rawDesc,
			NumEnums:      5,
			NumMessages:   12,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_global_serverless_v1_resources_proto_goTypes,
		DependencyIndexes: file_global_serverless_v1_resources_proto_depIdxs,
		EnumInfos:         file_global_serverless_v1_resources_proto_enumTypes,
		MessageInfos:      file_global_serverless_v1_resources_proto_msgTypes,
	}.Build()
	File_global_serverless_v1_resources_proto = out.File
	file_global_serverless_v1_resources_proto_rawDesc = nil
	file_global_serverless_v1_resources_proto_goTypes = nil
	file_global_serverless_v1_resources_proto_depIdxs = nil
}
