// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        (unknown)
// source: openapi/cm/cm.proto

package cm

import (
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	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 CloudProvider int32

const (
	CloudProvider_CLOUD_PROVIDER_UNSPECIFIED CloudProvider = 0
	CloudProvider_AWS                        CloudProvider = 1
	CloudProvider_GCP                        CloudProvider = 2
)

// Enum value maps for CloudProvider.
var (
	CloudProvider_name = map[int32]string{
		0: "CLOUD_PROVIDER_UNSPECIFIED",
		1: "AWS",
		2: "GCP",
	}
	CloudProvider_value = map[string]int32{
		"CLOUD_PROVIDER_UNSPECIFIED": 0,
		"AWS":                        1,
		"GCP":                        2,
	}
)

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

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

func (CloudProvider) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[0].Descriptor()
}

func (CloudProvider) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[0]
}

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

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

type ClusterType int32

const (
	ClusterType_CLUSTER_TYPE_UNSPECIFIED ClusterType = 0
	ClusterType_DEDICATED                ClusterType = 1
	ClusterType_DEVELOPER                ClusterType = 2
)

// Enum value maps for ClusterType.
var (
	ClusterType_name = map[int32]string{
		0: "CLUSTER_TYPE_UNSPECIFIED",
		1: "DEDICATED",
		2: "DEVELOPER",
	}
	ClusterType_value = map[string]int32{
		"CLUSTER_TYPE_UNSPECIFIED": 0,
		"DEDICATED":                1,
		"DEVELOPER":                2,
	}
)

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

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

func (ClusterType) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[1].Descriptor()
}

func (ClusterType) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[1]
}

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

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

type ClusterStatus int32

const (
	ClusterStatus_CLUSTER_STATUS_UNSPECIFIED ClusterStatus = 0
	ClusterStatus_AVAILABLE                  ClusterStatus = 1
	ClusterStatus_CREATING                   ClusterStatus = 2
	ClusterStatus_MODIFYING                  ClusterStatus = 3
	ClusterStatus_PAUSED                     ClusterStatus = 4
	ClusterStatus_RESUMING                   ClusterStatus = 5
	ClusterStatus_UNAVAILABLE                ClusterStatus = 6
	ClusterStatus_IMPORTING                  ClusterStatus = 7
	ClusterStatus_MAINTAINING                ClusterStatus = 8
	ClusterStatus_PAUSING                    ClusterStatus = 9
)

// Enum value maps for ClusterStatus.
var (
	ClusterStatus_name = map[int32]string{
		0: "CLUSTER_STATUS_UNSPECIFIED",
		1: "AVAILABLE",
		2: "CREATING",
		3: "MODIFYING",
		4: "PAUSED",
		5: "RESUMING",
		6: "UNAVAILABLE",
		7: "IMPORTING",
		8: "MAINTAINING",
		9: "PAUSING",
	}
	ClusterStatus_value = map[string]int32{
		"CLUSTER_STATUS_UNSPECIFIED": 0,
		"AVAILABLE":                  1,
		"CREATING":                   2,
		"MODIFYING":                  3,
		"PAUSED":                     4,
		"RESUMING":                   5,
		"UNAVAILABLE":                6,
		"IMPORTING":                  7,
		"MAINTAINING":                8,
		"PAUSING":                    9,
	}
)

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

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

func (ClusterStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[2].Descriptor()
}

func (ClusterStatus) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[2]
}

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

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

type NodeStatus int32

const (
	NodeStatus_NODE_STATUS_UNSPECIFIED NodeStatus = 0
	NodeStatus_NODE_STATUS_AVAILABLE   NodeStatus = 1
	NodeStatus_NODE_STATUS_UNAVAILABLE NodeStatus = 2
	NodeStatus_NODE_STATUS_CREATING    NodeStatus = 3
	NodeStatus_NODE_STATUS_DELETING    NodeStatus = 4
)

// Enum value maps for NodeStatus.
var (
	NodeStatus_name = map[int32]string{
		0: "NODE_STATUS_UNSPECIFIED",
		1: "NODE_STATUS_AVAILABLE",
		2: "NODE_STATUS_UNAVAILABLE",
		3: "NODE_STATUS_CREATING",
		4: "NODE_STATUS_DELETING",
	}
	NodeStatus_value = map[string]int32{
		"NODE_STATUS_UNSPECIFIED": 0,
		"NODE_STATUS_AVAILABLE":   1,
		"NODE_STATUS_UNAVAILABLE": 2,
		"NODE_STATUS_CREATING":    3,
		"NODE_STATUS_DELETING":    4,
	}
)

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

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

func (NodeStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[3].Descriptor()
}

func (NodeStatus) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[3]
}

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

// Deprecated: Use NodeStatus.Descriptor instead.
func (NodeStatus) EnumDescriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{3}
}

type PrivateEndpointService_Status int32

const (
	PrivateEndpointService_NOT_CONFIGURE PrivateEndpointService_Status = 0
	PrivateEndpointService_CREATING      PrivateEndpointService_Status = 1
	PrivateEndpointService_ACTIVE        PrivateEndpointService_Status = 2
	PrivateEndpointService_DELETING      PrivateEndpointService_Status = 3
)

// Enum value maps for PrivateEndpointService_Status.
var (
	PrivateEndpointService_Status_name = map[int32]string{
		0: "NOT_CONFIGURE",
		1: "CREATING",
		2: "ACTIVE",
		3: "DELETING",
	}
	PrivateEndpointService_Status_value = map[string]int32{
		"NOT_CONFIGURE": 0,
		"CREATING":      1,
		"ACTIVE":        2,
		"DELETING":      3,
	}
)

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

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

func (PrivateEndpointService_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[4].Descriptor()
}

func (PrivateEndpointService_Status) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[4]
}

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

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

type PrivateEndpoint_Status int32

const (
	PrivateEndpoint_NOT_CONFIGURE PrivateEndpoint_Status = 0
	PrivateEndpoint_PENDING       PrivateEndpoint_Status = 1
	PrivateEndpoint_ACTIVE        PrivateEndpoint_Status = 2
	PrivateEndpoint_DELETING      PrivateEndpoint_Status = 3
	PrivateEndpoint_FAILED        PrivateEndpoint_Status = 4
)

// Enum value maps for PrivateEndpoint_Status.
var (
	PrivateEndpoint_Status_name = map[int32]string{
		0: "NOT_CONFIGURE",
		1: "PENDING",
		2: "ACTIVE",
		3: "DELETING",
		4: "FAILED",
	}
	PrivateEndpoint_Status_value = map[string]int32{
		"NOT_CONFIGURE": 0,
		"PENDING":       1,
		"ACTIVE":        2,
		"DELETING":      3,
		"FAILED":        4,
	}
)

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

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

func (PrivateEndpoint_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[5].Descriptor()
}

func (PrivateEndpoint_Status) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[5]
}

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

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

type Accesspoint_PrivateEndpoint_PrivateLinkService_Status int32

const (
	Accesspoint_PrivateEndpoint_PrivateLinkService_NOT_CONFIGURE Accesspoint_PrivateEndpoint_PrivateLinkService_Status = 0
	Accesspoint_PrivateEndpoint_PrivateLinkService_CREATING      Accesspoint_PrivateEndpoint_PrivateLinkService_Status = 1
	Accesspoint_PrivateEndpoint_PrivateLinkService_ACTIVE        Accesspoint_PrivateEndpoint_PrivateLinkService_Status = 2
	Accesspoint_PrivateEndpoint_PrivateLinkService_DELETING      Accesspoint_PrivateEndpoint_PrivateLinkService_Status = 3
)

// Enum value maps for Accesspoint_PrivateEndpoint_PrivateLinkService_Status.
var (
	Accesspoint_PrivateEndpoint_PrivateLinkService_Status_name = map[int32]string{
		0: "NOT_CONFIGURE",
		1: "CREATING",
		2: "ACTIVE",
		3: "DELETING",
	}
	Accesspoint_PrivateEndpoint_PrivateLinkService_Status_value = map[string]int32{
		"NOT_CONFIGURE": 0,
		"CREATING":      1,
		"ACTIVE":        2,
		"DELETING":      3,
	}
)

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

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

func (Accesspoint_PrivateEndpoint_PrivateLinkService_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[6].Descriptor()
}

func (Accesspoint_PrivateEndpoint_PrivateLinkService_Status) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[6]
}

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

// Deprecated: Use Accesspoint_PrivateEndpoint_PrivateLinkService_Status.Descriptor instead.
func (Accesspoint_PrivateEndpoint_PrivateLinkService_Status) EnumDescriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{58, 2, 0, 0}
}

type PrivateLinkEndpoint_Status int32

const (
	PrivateLinkEndpoint_NOT_CONFIGURE PrivateLinkEndpoint_Status = 0
	PrivateLinkEndpoint_PENDING       PrivateLinkEndpoint_Status = 1
	PrivateLinkEndpoint_ACTIVE        PrivateLinkEndpoint_Status = 2
	PrivateLinkEndpoint_DELETING      PrivateLinkEndpoint_Status = 3
	PrivateLinkEndpoint_FAILED        PrivateLinkEndpoint_Status = 4
)

// Enum value maps for PrivateLinkEndpoint_Status.
var (
	PrivateLinkEndpoint_Status_name = map[int32]string{
		0: "NOT_CONFIGURE",
		1: "PENDING",
		2: "ACTIVE",
		3: "DELETING",
		4: "FAILED",
	}
	PrivateLinkEndpoint_Status_value = map[string]int32{
		"NOT_CONFIGURE": 0,
		"PENDING":       1,
		"ACTIVE":        2,
		"DELETING":      3,
		"FAILED":        4,
	}
)

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

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

func (PrivateLinkEndpoint_Status) Descriptor() protoreflect.EnumDescriptor {
	return file_openapi_cm_cm_proto_enumTypes[7].Descriptor()
}

func (PrivateLinkEndpoint_Status) Type() protoreflect.EnumType {
	return &file_openapi_cm_cm_proto_enumTypes[7]
}

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

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

type IpAccessListItem struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Cidr          string                 `protobuf:"bytes,1,opt,name=cidr,proto3" json:"cidr,omitempty"`
	Description   string                 `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*IpAccessListItem) ProtoMessage() {}

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

func (x *IpAccessListItem) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

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

type ClusterComponents struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Tidb          *TiDBComponent         `protobuf:"bytes,1,opt,name=tidb,proto3" json:"tidb,omitempty"`
	Tikv          *TiKVComponent         `protobuf:"bytes,2,opt,name=tikv,proto3" json:"tikv,omitempty"`
	Tiflash       *TiFlashComponent      `protobuf:"bytes,3,opt,name=tiflash,proto3" json:"tiflash,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ClusterComponents) ProtoMessage() {}

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

func (x *ClusterComponents) GetTidb() *TiDBComponent {
	if x != nil {
		return x.Tidb
	}
	return nil
}

func (x *ClusterComponents) GetTikv() *TiKVComponent {
	if x != nil {
		return x.Tikv
	}
	return nil
}

func (x *ClusterComponents) GetTiflash() *TiFlashComponent {
	if x != nil {
		return x.Tiflash
	}
	return nil
}

type TiDBComponent struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	NodeSize      string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	NodeQuantity  int32                  `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3" json:"node_quantity,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*TiDBComponent) ProtoMessage() {}

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

func (x *TiDBComponent) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiDBComponent) GetNodeQuantity() int32 {
	if x != nil {
		return x.NodeQuantity
	}
	return 0
}

type TiKVComponent struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	NodeSize       string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	StorageSizeGib int32                  `protobuf:"varint,2,opt,name=storage_size_gib,json=storageSizeGib,proto3" json:"storage_size_gib,omitempty"`
	NodeQuantity   int32                  `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3" json:"node_quantity,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*TiKVComponent) ProtoMessage() {}

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

func (x *TiKVComponent) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiKVComponent) GetStorageSizeGib() int32 {
	if x != nil {
		return x.StorageSizeGib
	}
	return 0
}

func (x *TiKVComponent) GetNodeQuantity() int32 {
	if x != nil {
		return x.NodeQuantity
	}
	return 0
}

type TiFlashComponent struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	NodeSize       string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	StorageSizeGib int32                  `protobuf:"varint,2,opt,name=storage_size_gib,json=storageSizeGib,proto3" json:"storage_size_gib,omitempty"`
	NodeQuantity   int32                  `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3" json:"node_quantity,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*TiFlashComponent) ProtoMessage() {}

func (x *TiFlashComponent) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_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 TiFlashComponent.ProtoReflect.Descriptor instead.
func (*TiFlashComponent) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{4}
}

func (x *TiFlashComponent) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiFlashComponent) GetStorageSizeGib() int32 {
	if x != nil {
		return x.StorageSizeGib
	}
	return 0
}

func (x *TiFlashComponent) GetNodeQuantity() int32 {
	if x != nil {
		return x.NodeQuantity
	}
	return 0
}

type ClusterConfig struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	RootPassword  string                 `protobuf:"bytes,1,opt,name=root_password,json=rootPassword,proto3" json:"root_password,omitempty"`
	Port          int32                  `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	Components    *ClusterComponents     `protobuf:"bytes,3,opt,name=components,proto3" json:"components,omitempty"`
	IpAccessList  []*IpAccessListItem    `protobuf:"bytes,4,rep,name=ip_access_list,json=ipAccessList,proto3" json:"ip_access_list,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ClusterConfig) ProtoMessage() {}

func (x *ClusterConfig) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_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 ClusterConfig.ProtoReflect.Descriptor instead.
func (*ClusterConfig) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{5}
}

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

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

func (x *ClusterConfig) GetComponents() *ClusterComponents {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *ClusterConfig) GetIpAccessList() []*IpAccessListItem {
	if x != nil {
		return x.IpAccessList
	}
	return nil
}

type GetClusterConfig struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Port          int32                  `protobuf:"varint,1,opt,name=port,proto3" json:"port,omitempty"`
	Components    *ClusterComponents     `protobuf:"bytes,2,opt,name=components,proto3" json:"components,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetClusterConfig) ProtoMessage() {}

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

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

func (x *GetClusterConfig) GetComponents() *ClusterComponents {
	if x != nil {
		return x.Components
	}
	return nil
}

type CreateClusterReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Name          string                 `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	ClusterType   ClusterType            `protobuf:"varint,3,opt,name=cluster_type,json=clusterType,proto3,enum=openapi.ClusterType" json:"cluster_type,omitempty"`
	CloudProvider CloudProvider          `protobuf:"varint,4,opt,name=cloud_provider,json=cloudProvider,proto3,enum=openapi.CloudProvider" json:"cloud_provider,omitempty"`
	Region        string                 `protobuf:"bytes,5,opt,name=region,proto3" json:"region,omitempty"`
	Config        *ClusterConfig         `protobuf:"bytes,6,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateClusterReq) ProtoMessage() {}

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

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

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

func (x *CreateClusterReq) GetClusterType() ClusterType {
	if x != nil {
		return x.ClusterType
	}
	return ClusterType_CLUSTER_TYPE_UNSPECIFIED
}

func (x *CreateClusterReq) GetCloudProvider() CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
}

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

func (x *CreateClusterReq) GetConfig() *ClusterConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

type CreateClusterResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            uint64                 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateClusterResp) ProtoMessage() {}

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

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

type AwsCmekSpec struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Region        string                 `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	KmsArn        string                 `protobuf:"bytes,2,opt,name=kms_arn,json=kmsArn,proto3" json:"kms_arn,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AwsCmekSpec) ProtoMessage() {}

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

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

func (x *AwsCmekSpec) GetKmsArn() string {
	if x != nil {
		return x.KmsArn
	}
	return ""
}

type CreateAwsCmekReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Specs         []*AwsCmekSpec         `protobuf:"bytes,2,rep,name=specs,proto3" json:"specs,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateAwsCmekReq) ProtoMessage() {}

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

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

func (x *CreateAwsCmekReq) GetSpecs() []*AwsCmekSpec {
	if x != nil {
		return x.Specs
	}
	return nil
}

type TiDBNodeMap struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	NodeName         string                 `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	AvailabilityZone string                 `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	NodeSize         string                 `protobuf:"bytes,3,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	VcpuNum          int32                  `protobuf:"varint,4,opt,name=vcpu_num,json=vcpuNum,proto3" json:"vcpu_num,omitempty"`
	RamBytes         int64                  `protobuf:"varint,5,opt,name=ram_bytes,json=ramBytes,proto3" json:"ram_bytes,omitempty"`
	Status           NodeStatus             `protobuf:"varint,7,opt,name=status,proto3,enum=openapi.NodeStatus" json:"status,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*TiDBNodeMap) ProtoMessage() {}

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

func (x *TiDBNodeMap) GetNodeName() string {
	if x != nil {
		return x.NodeName
	}
	return ""
}

func (x *TiDBNodeMap) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *TiDBNodeMap) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiDBNodeMap) GetVcpuNum() int32 {
	if x != nil {
		return x.VcpuNum
	}
	return 0
}

func (x *TiDBNodeMap) GetRamBytes() int64 {
	if x != nil {
		return x.RamBytes
	}
	return 0
}

func (x *TiDBNodeMap) GetStatus() NodeStatus {
	if x != nil {
		return x.Status
	}
	return NodeStatus_NODE_STATUS_UNSPECIFIED
}

type TiKVNodeMap struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	NodeName         string                 `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	AvailabilityZone string                 `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	NodeSize         string                 `protobuf:"bytes,3,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	VcpuNum          int32                  `protobuf:"varint,4,opt,name=vcpu_num,json=vcpuNum,proto3" json:"vcpu_num,omitempty"`
	RamBytes         int64                  `protobuf:"varint,5,opt,name=ram_bytes,json=ramBytes,proto3" json:"ram_bytes,omitempty"`
	StorageSizeGib   int32                  `protobuf:"varint,6,opt,name=storage_size_gib,json=storageSizeGib,proto3" json:"storage_size_gib,omitempty"`
	Status           NodeStatus             `protobuf:"varint,7,opt,name=status,proto3,enum=openapi.NodeStatus" json:"status,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*TiKVNodeMap) ProtoMessage() {}

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

func (x *TiKVNodeMap) GetNodeName() string {
	if x != nil {
		return x.NodeName
	}
	return ""
}

func (x *TiKVNodeMap) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *TiKVNodeMap) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiKVNodeMap) GetVcpuNum() int32 {
	if x != nil {
		return x.VcpuNum
	}
	return 0
}

func (x *TiKVNodeMap) GetRamBytes() int64 {
	if x != nil {
		return x.RamBytes
	}
	return 0
}

func (x *TiKVNodeMap) GetStorageSizeGib() int32 {
	if x != nil {
		return x.StorageSizeGib
	}
	return 0
}

func (x *TiKVNodeMap) GetStatus() NodeStatus {
	if x != nil {
		return x.Status
	}
	return NodeStatus_NODE_STATUS_UNSPECIFIED
}

type TiFlashNodeMap struct {
	state            protoimpl.MessageState `protogen:"open.v1"`
	NodeName         string                 `protobuf:"bytes,1,opt,name=node_name,json=nodeName,proto3" json:"node_name,omitempty"`
	AvailabilityZone string                 `protobuf:"bytes,2,opt,name=availability_zone,json=availabilityZone,proto3" json:"availability_zone,omitempty"`
	NodeSize         string                 `protobuf:"bytes,3,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	VcpuNum          int32                  `protobuf:"varint,4,opt,name=vcpu_num,json=vcpuNum,proto3" json:"vcpu_num,omitempty"`
	RamBytes         int64                  `protobuf:"varint,5,opt,name=ram_bytes,json=ramBytes,proto3" json:"ram_bytes,omitempty"`
	StorageSizeGib   int32                  `protobuf:"varint,6,opt,name=storage_size_gib,json=storageSizeGib,proto3" json:"storage_size_gib,omitempty"`
	Status           NodeStatus             `protobuf:"varint,7,opt,name=status,proto3,enum=openapi.NodeStatus" json:"status,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*TiFlashNodeMap) ProtoMessage() {}

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

func (x *TiFlashNodeMap) GetNodeName() string {
	if x != nil {
		return x.NodeName
	}
	return ""
}

func (x *TiFlashNodeMap) GetAvailabilityZone() string {
	if x != nil {
		return x.AvailabilityZone
	}
	return ""
}

func (x *TiFlashNodeMap) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiFlashNodeMap) GetVcpuNum() int32 {
	if x != nil {
		return x.VcpuNum
	}
	return 0
}

func (x *TiFlashNodeMap) GetRamBytes() int64 {
	if x != nil {
		return x.RamBytes
	}
	return 0
}

func (x *TiFlashNodeMap) GetStorageSizeGib() int32 {
	if x != nil {
		return x.StorageSizeGib
	}
	return 0
}

func (x *TiFlashNodeMap) GetStatus() NodeStatus {
	if x != nil {
		return x.Status
	}
	return NodeStatus_NODE_STATUS_UNSPECIFIED
}

type ClusterNodeMap struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Tidb          []*TiDBNodeMap         `protobuf:"bytes,1,rep,name=tidb,proto3" json:"tidb,omitempty"`
	Tikv          []*TiKVNodeMap         `protobuf:"bytes,2,rep,name=tikv,proto3" json:"tikv,omitempty"`
	Tiflash       []*TiFlashNodeMap      `protobuf:"bytes,3,rep,name=tiflash,proto3" json:"tiflash,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ClusterNodeMap) ProtoMessage() {}

func (x *ClusterNodeMap) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_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 ClusterNodeMap.ProtoReflect.Descriptor instead.
func (*ClusterNodeMap) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{14}
}

func (x *ClusterNodeMap) GetTidb() []*TiDBNodeMap {
	if x != nil {
		return x.Tidb
	}
	return nil
}

func (x *ClusterNodeMap) GetTikv() []*TiKVNodeMap {
	if x != nil {
		return x.Tikv
	}
	return nil
}

func (x *ClusterNodeMap) GetTiflash() []*TiFlashNodeMap {
	if x != nil {
		return x.Tiflash
	}
	return nil
}

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

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

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

func (*StandardConnection) ProtoMessage() {}

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

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

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

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

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

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

func (*VPCPeeringConnection) ProtoMessage() {}

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

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

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

type ClusterConnectionStrings struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	DefaultUser   string                 `protobuf:"bytes,1,opt,name=default_user,json=defaultUser,proto3" json:"default_user,omitempty"`
	Standard      *StandardConnection    `protobuf:"bytes,2,opt,name=standard,proto3" json:"standard,omitempty"`
	VpcPeering    *VPCPeeringConnection  `protobuf:"bytes,3,opt,name=vpc_peering,json=vpcPeering,proto3" json:"vpc_peering,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ClusterConnectionStrings) ProtoMessage() {}

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

func (x *ClusterConnectionStrings) GetDefaultUser() string {
	if x != nil {
		return x.DefaultUser
	}
	return ""
}

func (x *ClusterConnectionStrings) GetStandard() *StandardConnection {
	if x != nil {
		return x.Standard
	}
	return nil
}

func (x *ClusterConnectionStrings) GetVpcPeering() *VPCPeeringConnection {
	if x != nil {
		return x.VpcPeering
	}
	return nil
}

type GetClusterReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetClusterReq) ProtoMessage() {}

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

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

func (x *GetClusterReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type ClusterItem struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	Id              uint64                 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ProjectId       uint64                 `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Name            string                 `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	ClusterType     ClusterType            `protobuf:"varint,4,opt,name=cluster_type,json=clusterType,proto3,enum=openapi.ClusterType" json:"cluster_type,omitempty"`
	CloudProvider   CloudProvider          `protobuf:"varint,5,opt,name=cloud_provider,json=cloudProvider,proto3,enum=openapi.CloudProvider" json:"cloud_provider,omitempty"`
	Region          string                 `protobuf:"bytes,6,opt,name=region,proto3" json:"region,omitempty"`
	CreateTimestamp int64                  `protobuf:"varint,7,opt,name=create_timestamp,json=createTimestamp,proto3" json:"create_timestamp,omitempty"`
	Config          *GetClusterConfig      `protobuf:"bytes,8,opt,name=config,proto3" json:"config,omitempty"`
	Status          *ClusterItemStatus     `protobuf:"bytes,9,opt,name=status,proto3" json:"status,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*ClusterItem) ProtoMessage() {}

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

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

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

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

func (x *ClusterItem) GetClusterType() ClusterType {
	if x != nil {
		return x.ClusterType
	}
	return ClusterType_CLUSTER_TYPE_UNSPECIFIED
}

func (x *ClusterItem) GetCloudProvider() CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
}

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

func (x *ClusterItem) GetCreateTimestamp() int64 {
	if x != nil {
		return x.CreateTimestamp
	}
	return 0
}

func (x *ClusterItem) GetConfig() *GetClusterConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *ClusterItem) GetStatus() *ClusterItemStatus {
	if x != nil {
		return x.Status
	}
	return nil
}

type ClusterItemStatus struct {
	state             protoimpl.MessageState    `protogen:"open.v1"`
	TidbVersion       string                    `protobuf:"bytes,1,opt,name=tidb_version,json=tidbVersion,proto3" json:"tidb_version,omitempty"`
	ClusterStatus     ClusterStatus             `protobuf:"varint,2,opt,name=cluster_status,json=clusterStatus,proto3,enum=openapi.ClusterStatus" json:"cluster_status,omitempty"`
	NodeMap           *ClusterNodeMap           `protobuf:"bytes,3,opt,name=node_map,json=nodeMap,proto3" json:"node_map,omitempty"`
	ConnectionStrings *ClusterConnectionStrings `protobuf:"bytes,4,opt,name=connection_strings,json=connectionStrings,proto3" json:"connection_strings,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*ClusterItemStatus) ProtoMessage() {}

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

func (x *ClusterItemStatus) GetTidbVersion() string {
	if x != nil {
		return x.TidbVersion
	}
	return ""
}

func (x *ClusterItemStatus) GetClusterStatus() ClusterStatus {
	if x != nil {
		return x.ClusterStatus
	}
	return ClusterStatus_CLUSTER_STATUS_UNSPECIFIED
}

func (x *ClusterItemStatus) GetNodeMap() *ClusterNodeMap {
	if x != nil {
		return x.NodeMap
	}
	return nil
}

func (x *ClusterItemStatus) GetConnectionStrings() *ClusterConnectionStrings {
	if x != nil {
		return x.ConnectionStrings
	}
	return nil
}

type ListClustersOfProjectReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	Page          uint32                 `protobuf:"varint,100,opt,name=page,proto3" json:"page,omitempty"`
	PageSize      uint32                 `protobuf:"varint,101,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListClustersOfProjectReq) ProtoMessage() {}

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

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

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

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

type ListClustersOfProjectResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Items         []*ClusterItem         `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total         uint32                 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListClustersOfProjectResp) ProtoMessage() {}

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

func (x *ListClustersOfProjectResp) GetItems() []*ClusterItem {
	if x != nil {
		return x.Items
	}
	return nil
}

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

type UpdateTiDBComponent struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	NodeSize      *string                `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3,oneof" json:"node_size,omitempty"`
	NodeQuantity  *int32                 `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3,oneof" json:"node_quantity,omitempty"`
	AccesspointId *uint64                `protobuf:"varint,4,opt,name=accesspoint_id,json=accesspointId,proto3,oneof" json:"accesspoint_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateTiDBComponent) Reset() {
	*x = UpdateTiDBComponent{}
	mi := &file_openapi_cm_cm_proto_msgTypes[23]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateTiDBComponent) ProtoMessage() {}

func (x *UpdateTiDBComponent) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[23]
	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 UpdateTiDBComponent.ProtoReflect.Descriptor instead.
func (*UpdateTiDBComponent) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{23}
}

func (x *UpdateTiDBComponent) GetNodeSize() string {
	if x != nil && x.NodeSize != nil {
		return *x.NodeSize
	}
	return ""
}

func (x *UpdateTiDBComponent) GetNodeQuantity() int32 {
	if x != nil && x.NodeQuantity != nil {
		return *x.NodeQuantity
	}
	return 0
}

func (x *UpdateTiDBComponent) GetAccesspointId() uint64 {
	if x != nil && x.AccesspointId != nil {
		return *x.AccesspointId
	}
	return 0
}

type UpdateTiKVComponent struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	NodeSize       *string                `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3,oneof" json:"node_size,omitempty"`
	StorageSizeGib *int32                 `protobuf:"varint,2,opt,name=storage_size_gib,json=storageSizeGib,proto3,oneof" json:"storage_size_gib,omitempty"`
	NodeQuantity   *int32                 `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3,oneof" json:"node_quantity,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *UpdateTiKVComponent) Reset() {
	*x = UpdateTiKVComponent{}
	mi := &file_openapi_cm_cm_proto_msgTypes[24]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateTiKVComponent) ProtoMessage() {}

func (x *UpdateTiKVComponent) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[24]
	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 UpdateTiKVComponent.ProtoReflect.Descriptor instead.
func (*UpdateTiKVComponent) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{24}
}

func (x *UpdateTiKVComponent) GetNodeSize() string {
	if x != nil && x.NodeSize != nil {
		return *x.NodeSize
	}
	return ""
}

func (x *UpdateTiKVComponent) GetStorageSizeGib() int32 {
	if x != nil && x.StorageSizeGib != nil {
		return *x.StorageSizeGib
	}
	return 0
}

func (x *UpdateTiKVComponent) GetNodeQuantity() int32 {
	if x != nil && x.NodeQuantity != nil {
		return *x.NodeQuantity
	}
	return 0
}

type UpdateTiFlashComponent struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	NodeSize       *string                `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3,oneof" json:"node_size,omitempty"`
	StorageSizeGib *int32                 `protobuf:"varint,2,opt,name=storage_size_gib,json=storageSizeGib,proto3,oneof" json:"storage_size_gib,omitempty"`
	NodeQuantity   *int32                 `protobuf:"varint,3,opt,name=node_quantity,json=nodeQuantity,proto3,oneof" json:"node_quantity,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *UpdateTiFlashComponent) Reset() {
	*x = UpdateTiFlashComponent{}
	mi := &file_openapi_cm_cm_proto_msgTypes[25]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateTiFlashComponent) ProtoMessage() {}

func (x *UpdateTiFlashComponent) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[25]
	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 UpdateTiFlashComponent.ProtoReflect.Descriptor instead.
func (*UpdateTiFlashComponent) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{25}
}

func (x *UpdateTiFlashComponent) GetNodeSize() string {
	if x != nil && x.NodeSize != nil {
		return *x.NodeSize
	}
	return ""
}

func (x *UpdateTiFlashComponent) GetStorageSizeGib() int32 {
	if x != nil && x.StorageSizeGib != nil {
		return *x.StorageSizeGib
	}
	return 0
}

func (x *UpdateTiFlashComponent) GetNodeQuantity() int32 {
	if x != nil && x.NodeQuantity != nil {
		return *x.NodeQuantity
	}
	return 0
}

type UpdateClusterComponents struct {
	state         protoimpl.MessageState  `protogen:"open.v1"`
	Tidb          *UpdateTiDBComponent    `protobuf:"bytes,1,opt,name=tidb,proto3" json:"tidb,omitempty"`
	Tikv          *UpdateTiKVComponent    `protobuf:"bytes,2,opt,name=tikv,proto3" json:"tikv,omitempty"`
	Tiflash       *UpdateTiFlashComponent `protobuf:"bytes,3,opt,name=tiflash,proto3" json:"tiflash,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateClusterComponents) Reset() {
	*x = UpdateClusterComponents{}
	mi := &file_openapi_cm_cm_proto_msgTypes[26]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateClusterComponents) ProtoMessage() {}

func (x *UpdateClusterComponents) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[26]
	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 UpdateClusterComponents.ProtoReflect.Descriptor instead.
func (*UpdateClusterComponents) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{26}
}

func (x *UpdateClusterComponents) GetTidb() *UpdateTiDBComponent {
	if x != nil {
		return x.Tidb
	}
	return nil
}

func (x *UpdateClusterComponents) GetTikv() *UpdateTiKVComponent {
	if x != nil {
		return x.Tikv
	}
	return nil
}

func (x *UpdateClusterComponents) GetTiflash() *UpdateTiFlashComponent {
	if x != nil {
		return x.Tiflash
	}
	return nil
}

type UpdateClusterConfig struct {
	state         protoimpl.MessageState   `protogen:"open.v1"`
	Components    *UpdateClusterComponents `protobuf:"bytes,1,opt,name=components,proto3" json:"components,omitempty"`
	Paused        *bool                    `protobuf:"varint,2,opt,name=paused,proto3,oneof" json:"paused,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateClusterConfig) Reset() {
	*x = UpdateClusterConfig{}
	mi := &file_openapi_cm_cm_proto_msgTypes[27]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateClusterConfig) ProtoMessage() {}

func (x *UpdateClusterConfig) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[27]
	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 UpdateClusterConfig.ProtoReflect.Descriptor instead.
func (*UpdateClusterConfig) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{27}
}

func (x *UpdateClusterConfig) GetComponents() *UpdateClusterComponents {
	if x != nil {
		return x.Components
	}
	return nil
}

func (x *UpdateClusterConfig) GetPaused() bool {
	if x != nil && x.Paused != nil {
		return *x.Paused
	}
	return false
}

type UpdateClusterReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	Config        *UpdateClusterConfig   `protobuf:"bytes,3,opt,name=config,proto3" json:"config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateClusterReq) Reset() {
	*x = UpdateClusterReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[28]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateClusterReq) ProtoMessage() {}

func (x *UpdateClusterReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[28]
	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 UpdateClusterReq.ProtoReflect.Descriptor instead.
func (*UpdateClusterReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{28}
}

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

func (x *UpdateClusterReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *UpdateClusterReq) GetConfig() *UpdateClusterConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

type DeleteClusterReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteClusterReq) Reset() {
	*x = DeleteClusterReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[29]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeleteClusterReq) ProtoMessage() {}

func (x *DeleteClusterReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[29]
	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 DeleteClusterReq.ProtoReflect.Descriptor instead.
func (*DeleteClusterReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{29}
}

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

func (x *DeleteClusterReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type NodeQuantityRange struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Min           int32                  `protobuf:"varint,1,opt,name=min,proto3" json:"min,omitempty"`
	Step          int32                  `protobuf:"varint,2,opt,name=step,proto3" json:"step,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NodeQuantityRange) Reset() {
	*x = NodeQuantityRange{}
	mi := &file_openapi_cm_cm_proto_msgTypes[30]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*NodeQuantityRange) ProtoMessage() {}

func (x *NodeQuantityRange) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[30]
	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 NodeQuantityRange.ProtoReflect.Descriptor instead.
func (*NodeQuantityRange) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{30}
}

func (x *NodeQuantityRange) GetMin() int32 {
	if x != nil {
		return x.Min
	}
	return 0
}

func (x *NodeQuantityRange) GetStep() int32 {
	if x != nil {
		return x.Step
	}
	return 0
}

type NodeStorageSizeRange struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Min           int32                  `protobuf:"varint,1,opt,name=min,proto3" json:"min,omitempty"`
	Max           int32                  `protobuf:"varint,2,opt,name=max,proto3" json:"max,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *NodeStorageSizeRange) Reset() {
	*x = NodeStorageSizeRange{}
	mi := &file_openapi_cm_cm_proto_msgTypes[31]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*NodeStorageSizeRange) ProtoMessage() {}

func (x *NodeStorageSizeRange) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[31]
	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 NodeStorageSizeRange.ProtoReflect.Descriptor instead.
func (*NodeStorageSizeRange) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{31}
}

func (x *NodeStorageSizeRange) GetMin() int32 {
	if x != nil {
		return x.Min
	}
	return 0
}

func (x *NodeStorageSizeRange) GetMax() int32 {
	if x != nil {
		return x.Max
	}
	return 0
}

type TiDBProfile struct {
	state             protoimpl.MessageState `protogen:"open.v1"`
	NodeSize          string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	NodeQuantityRange *NodeQuantityRange     `protobuf:"bytes,2,opt,name=node_quantity_range,json=nodeQuantityRange,proto3" json:"node_quantity_range,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *TiDBProfile) Reset() {
	*x = TiDBProfile{}
	mi := &file_openapi_cm_cm_proto_msgTypes[32]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*TiDBProfile) ProtoMessage() {}

func (x *TiDBProfile) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[32]
	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 TiDBProfile.ProtoReflect.Descriptor instead.
func (*TiDBProfile) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{32}
}

func (x *TiDBProfile) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiDBProfile) GetNodeQuantityRange() *NodeQuantityRange {
	if x != nil {
		return x.NodeQuantityRange
	}
	return nil
}

type TiKVProfile struct {
	state               protoimpl.MessageState `protogen:"open.v1"`
	NodeSize            string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	NodeQuantityRange   *NodeQuantityRange     `protobuf:"bytes,2,opt,name=node_quantity_range,json=nodeQuantityRange,proto3" json:"node_quantity_range,omitempty"`
	StorageSizeGibRange *NodeStorageSizeRange  `protobuf:"bytes,3,opt,name=storage_size_gib_range,json=storageSizeGibRange,proto3" json:"storage_size_gib_range,omitempty"`
	unknownFields       protoimpl.UnknownFields
	sizeCache           protoimpl.SizeCache
}

func (x *TiKVProfile) Reset() {
	*x = TiKVProfile{}
	mi := &file_openapi_cm_cm_proto_msgTypes[33]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*TiKVProfile) ProtoMessage() {}

func (x *TiKVProfile) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[33]
	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 TiKVProfile.ProtoReflect.Descriptor instead.
func (*TiKVProfile) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{33}
}

func (x *TiKVProfile) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiKVProfile) GetNodeQuantityRange() *NodeQuantityRange {
	if x != nil {
		return x.NodeQuantityRange
	}
	return nil
}

func (x *TiKVProfile) GetStorageSizeGibRange() *NodeStorageSizeRange {
	if x != nil {
		return x.StorageSizeGibRange
	}
	return nil
}

type TiFlashProfile struct {
	state               protoimpl.MessageState `protogen:"open.v1"`
	NodeSize            string                 `protobuf:"bytes,1,opt,name=node_size,json=nodeSize,proto3" json:"node_size,omitempty"`
	NodeQuantityRange   *NodeQuantityRange     `protobuf:"bytes,2,opt,name=node_quantity_range,json=nodeQuantityRange,proto3" json:"node_quantity_range,omitempty"`
	StorageSizeGibRange *NodeStorageSizeRange  `protobuf:"bytes,3,opt,name=storage_size_gib_range,json=storageSizeGibRange,proto3" json:"storage_size_gib_range,omitempty"`
	unknownFields       protoimpl.UnknownFields
	sizeCache           protoimpl.SizeCache
}

func (x *TiFlashProfile) Reset() {
	*x = TiFlashProfile{}
	mi := &file_openapi_cm_cm_proto_msgTypes[34]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*TiFlashProfile) ProtoMessage() {}

func (x *TiFlashProfile) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[34]
	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 TiFlashProfile.ProtoReflect.Descriptor instead.
func (*TiFlashProfile) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{34}
}

func (x *TiFlashProfile) GetNodeSize() string {
	if x != nil {
		return x.NodeSize
	}
	return ""
}

func (x *TiFlashProfile) GetNodeQuantityRange() *NodeQuantityRange {
	if x != nil {
		return x.NodeQuantityRange
	}
	return nil
}

func (x *TiFlashProfile) GetStorageSizeGibRange() *NodeStorageSizeRange {
	if x != nil {
		return x.StorageSizeGibRange
	}
	return nil
}

type ListProviderRegionsItem struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ClusterType   ClusterType            `protobuf:"varint,1,opt,name=cluster_type,json=clusterType,proto3,enum=openapi.ClusterType" json:"cluster_type,omitempty"`
	CloudProvider CloudProvider          `protobuf:"varint,2,opt,name=cloud_provider,json=cloudProvider,proto3,enum=openapi.CloudProvider" json:"cloud_provider,omitempty"`
	Region        string                 `protobuf:"bytes,3,opt,name=region,proto3" json:"region,omitempty"`
	Tidb          []*TiDBProfile         `protobuf:"bytes,4,rep,name=tidb,proto3" json:"tidb,omitempty"`
	Tikv          []*TiKVProfile         `protobuf:"bytes,5,rep,name=tikv,proto3" json:"tikv,omitempty"`
	Tiflash       []*TiFlashProfile      `protobuf:"bytes,6,rep,name=tiflash,proto3" json:"tiflash,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListProviderRegionsItem) Reset() {
	*x = ListProviderRegionsItem{}
	mi := &file_openapi_cm_cm_proto_msgTypes[35]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListProviderRegionsItem) ProtoMessage() {}

func (x *ListProviderRegionsItem) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[35]
	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 ListProviderRegionsItem.ProtoReflect.Descriptor instead.
func (*ListProviderRegionsItem) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{35}
}

func (x *ListProviderRegionsItem) GetClusterType() ClusterType {
	if x != nil {
		return x.ClusterType
	}
	return ClusterType_CLUSTER_TYPE_UNSPECIFIED
}

func (x *ListProviderRegionsItem) GetCloudProvider() CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
}

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

func (x *ListProviderRegionsItem) GetTidb() []*TiDBProfile {
	if x != nil {
		return x.Tidb
	}
	return nil
}

func (x *ListProviderRegionsItem) GetTikv() []*TiKVProfile {
	if x != nil {
		return x.Tikv
	}
	return nil
}

func (x *ListProviderRegionsItem) GetTiflash() []*TiFlashProfile {
	if x != nil {
		return x.Tiflash
	}
	return nil
}

type ListProviderRegionsResp struct {
	state         protoimpl.MessageState     `protogen:"open.v1"`
	Items         []*ListProviderRegionsItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListProviderRegionsResp) Reset() {
	*x = ListProviderRegionsResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[36]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListProviderRegionsResp) ProtoMessage() {}

func (x *ListProviderRegionsResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[36]
	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 ListProviderRegionsResp.ProtoReflect.Descriptor instead.
func (*ListProviderRegionsResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{36}
}

func (x *ListProviderRegionsResp) GetItems() []*ListProviderRegionsItem {
	if x != nil {
		return x.Items
	}
	return nil
}

type ListAwsCmekReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAwsCmekReq) Reset() {
	*x = ListAwsCmekReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[37]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListAwsCmekReq) ProtoMessage() {}

func (x *ListAwsCmekReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[37]
	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 ListAwsCmekReq.ProtoReflect.Descriptor instead.
func (*ListAwsCmekReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{37}
}

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

type ListAwsCmekResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Items         []*AwsCmekSpec         `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAwsCmekResp) Reset() {
	*x = ListAwsCmekResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[38]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListAwsCmekResp) ProtoMessage() {}

func (x *ListAwsCmekResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[38]
	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 ListAwsCmekResp.ProtoReflect.Descriptor instead.
func (*ListAwsCmekResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{38}
}

func (x *ListAwsCmekResp) GetItems() []*AwsCmekSpec {
	if x != nil {
		return x.Items
	}
	return nil
}

type PrivateEndpointService struct {
	state         protoimpl.MessageState        `protogen:"open.v1"`
	CloudProvider CloudProvider                 `protobuf:"varint,1,opt,name=cloud_provider,json=cloudProvider,proto3,enum=openapi.CloudProvider" json:"cloud_provider,omitempty"`
	Name          string                        `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	Status        PrivateEndpointService_Status `protobuf:"varint,3,opt,name=status,proto3,enum=openapi.PrivateEndpointService_Status" json:"status,omitempty"`
	DnsName       string                        `protobuf:"bytes,4,opt,name=dns_name,json=dnsName,proto3" json:"dns_name,omitempty"`
	Port          int32                         `protobuf:"varint,5,opt,name=port,proto3" json:"port,omitempty"`
	AzIds         []string                      `protobuf:"bytes,6,rep,name=az_ids,json=azIds,proto3" json:"az_ids,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PrivateEndpointService) Reset() {
	*x = PrivateEndpointService{}
	mi := &file_openapi_cm_cm_proto_msgTypes[39]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*PrivateEndpointService) ProtoMessage() {}

func (x *PrivateEndpointService) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[39]
	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 PrivateEndpointService.ProtoReflect.Descriptor instead.
func (*PrivateEndpointService) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{39}
}

func (x *PrivateEndpointService) GetCloudProvider() CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
}

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

func (x *PrivateEndpointService) GetStatus() PrivateEndpointService_Status {
	if x != nil {
		return x.Status
	}
	return PrivateEndpointService_NOT_CONFIGURE
}

func (x *PrivateEndpointService) GetDnsName() string {
	if x != nil {
		return x.DnsName
	}
	return ""
}

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

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

type CreatePrivateEndpointServiceReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreatePrivateEndpointServiceReq) Reset() {
	*x = CreatePrivateEndpointServiceReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[40]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateEndpointServiceReq) ProtoMessage() {}

func (x *CreatePrivateEndpointServiceReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[40]
	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 CreatePrivateEndpointServiceReq.ProtoReflect.Descriptor instead.
func (*CreatePrivateEndpointServiceReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{40}
}

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

func (x *CreatePrivateEndpointServiceReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type CreatePrivateEndpointServiceResp struct {
	state                  protoimpl.MessageState  `protogen:"open.v1"`
	PrivateEndpointService *PrivateEndpointService `protobuf:"bytes,1,opt,name=private_endpoint_service,json=privateEndpointService,proto3" json:"private_endpoint_service,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

func (x *CreatePrivateEndpointServiceResp) Reset() {
	*x = CreatePrivateEndpointServiceResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[41]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateEndpointServiceResp) ProtoMessage() {}

func (x *CreatePrivateEndpointServiceResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[41]
	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 CreatePrivateEndpointServiceResp.ProtoReflect.Descriptor instead.
func (*CreatePrivateEndpointServiceResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{41}
}

func (x *CreatePrivateEndpointServiceResp) GetPrivateEndpointService() *PrivateEndpointService {
	if x != nil {
		return x.PrivateEndpointService
	}
	return nil
}

type GetPrivateEndpointServiceReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetPrivateEndpointServiceReq) Reset() {
	*x = GetPrivateEndpointServiceReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[42]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetPrivateEndpointServiceReq) ProtoMessage() {}

func (x *GetPrivateEndpointServiceReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[42]
	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 GetPrivateEndpointServiceReq.ProtoReflect.Descriptor instead.
func (*GetPrivateEndpointServiceReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{42}
}

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

func (x *GetPrivateEndpointServiceReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type GetPrivateEndpointServiceResp struct {
	state                  protoimpl.MessageState  `protogen:"open.v1"`
	PrivateEndpointService *PrivateEndpointService `protobuf:"bytes,1,opt,name=private_endpoint_service,json=privateEndpointService,proto3" json:"private_endpoint_service,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

func (x *GetPrivateEndpointServiceResp) Reset() {
	*x = GetPrivateEndpointServiceResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[43]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetPrivateEndpointServiceResp) ProtoMessage() {}

func (x *GetPrivateEndpointServiceResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[43]
	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 GetPrivateEndpointServiceResp.ProtoReflect.Descriptor instead.
func (*GetPrivateEndpointServiceResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{43}
}

func (x *GetPrivateEndpointServiceResp) GetPrivateEndpointService() *PrivateEndpointService {
	if x != nil {
		return x.PrivateEndpointService
	}
	return nil
}

type PrivateEndpoint struct {
	state         protoimpl.MessageState        `protogen:"open.v1"`
	CloudProvider CloudProvider                 `protobuf:"varint,1,opt,name=cloud_provider,json=cloudProvider,proto3,enum=openapi.CloudProvider" json:"cloud_provider,omitempty"`
	ClusterId     uint64                        `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	ClusterName   string                        `protobuf:"bytes,3,opt,name=cluster_name,json=clusterName,proto3" json:"cluster_name,omitempty"`
	RegionName    string                        `protobuf:"bytes,4,opt,name=region_name,json=regionName,proto3" json:"region_name,omitempty"`
	EndpointName  string                        `protobuf:"bytes,5,opt,name=endpoint_name,json=endpointName,proto3" json:"endpoint_name,omitempty"`
	Status        PrivateEndpoint_Status        `protobuf:"varint,6,opt,name=status,proto3,enum=openapi.PrivateEndpoint_Status" json:"status,omitempty"`
	Message       string                        `protobuf:"bytes,7,opt,name=message,proto3" json:"message,omitempty"`
	ServiceName   string                        `protobuf:"bytes,8,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
	ServiceStatus PrivateEndpointService_Status `protobuf:"varint,9,opt,name=service_status,json=serviceStatus,proto3,enum=openapi.PrivateEndpointService_Status" json:"service_status,omitempty"`
	Id            uint64                        `protobuf:"varint,10,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PrivateEndpoint) Reset() {
	*x = PrivateEndpoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[44]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*PrivateEndpoint) ProtoMessage() {}

func (x *PrivateEndpoint) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[44]
	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 PrivateEndpoint.ProtoReflect.Descriptor instead.
func (*PrivateEndpoint) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{44}
}

func (x *PrivateEndpoint) GetCloudProvider() CloudProvider {
	if x != nil {
		return x.CloudProvider
	}
	return CloudProvider_CLOUD_PROVIDER_UNSPECIFIED
}

func (x *PrivateEndpoint) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *PrivateEndpoint) GetClusterName() string {
	if x != nil {
		return x.ClusterName
	}
	return ""
}

func (x *PrivateEndpoint) GetRegionName() string {
	if x != nil {
		return x.RegionName
	}
	return ""
}

func (x *PrivateEndpoint) GetEndpointName() string {
	if x != nil {
		return x.EndpointName
	}
	return ""
}

func (x *PrivateEndpoint) GetStatus() PrivateEndpoint_Status {
	if x != nil {
		return x.Status
	}
	return PrivateEndpoint_NOT_CONFIGURE
}

func (x *PrivateEndpoint) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

func (x *PrivateEndpoint) GetServiceName() string {
	if x != nil {
		return x.ServiceName
	}
	return ""
}

func (x *PrivateEndpoint) GetServiceStatus() PrivateEndpointService_Status {
	if x != nil {
		return x.ServiceStatus
	}
	return PrivateEndpointService_NOT_CONFIGURE
}

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

type ListPrivateEndpointsOfProjectReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateEndpointsOfProjectReq) Reset() {
	*x = ListPrivateEndpointsOfProjectReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[45]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateEndpointsOfProjectReq) ProtoMessage() {}

func (x *ListPrivateEndpointsOfProjectReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[45]
	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 ListPrivateEndpointsOfProjectReq.ProtoReflect.Descriptor instead.
func (*ListPrivateEndpointsOfProjectReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{45}
}

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

type ListPrivateEndpointsOfProjectResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Endpoints     []*PrivateEndpoint     `protobuf:"bytes,1,rep,name=endpoints,proto3" json:"endpoints,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateEndpointsOfProjectResp) Reset() {
	*x = ListPrivateEndpointsOfProjectResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[46]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateEndpointsOfProjectResp) ProtoMessage() {}

func (x *ListPrivateEndpointsOfProjectResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[46]
	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 ListPrivateEndpointsOfProjectResp.ProtoReflect.Descriptor instead.
func (*ListPrivateEndpointsOfProjectResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{46}
}

func (x *ListPrivateEndpointsOfProjectResp) GetEndpoints() []*PrivateEndpoint {
	if x != nil {
		return x.Endpoints
	}
	return nil
}

type CreatePrivateEndpointReq struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	ProjectId       uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId       uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	PrivateEndpoint *PrivateEndpoint       `protobuf:"bytes,3,opt,name=private_endpoint,json=privateEndpoint,proto3" json:"private_endpoint,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *CreatePrivateEndpointReq) Reset() {
	*x = CreatePrivateEndpointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[47]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateEndpointReq) ProtoMessage() {}

func (x *CreatePrivateEndpointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[47]
	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 CreatePrivateEndpointReq.ProtoReflect.Descriptor instead.
func (*CreatePrivateEndpointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{47}
}

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

func (x *CreatePrivateEndpointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *CreatePrivateEndpointReq) GetPrivateEndpoint() *PrivateEndpoint {
	if x != nil {
		return x.PrivateEndpoint
	}
	return nil
}

type CreatePrivateEndpointResp struct {
	state           protoimpl.MessageState `protogen:"open.v1"`
	PrivateEndpoint *PrivateEndpoint       `protobuf:"bytes,1,opt,name=private_endpoint,json=privateEndpoint,proto3" json:"private_endpoint,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *CreatePrivateEndpointResp) Reset() {
	*x = CreatePrivateEndpointResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[48]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateEndpointResp) ProtoMessage() {}

func (x *CreatePrivateEndpointResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[48]
	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 CreatePrivateEndpointResp.ProtoReflect.Descriptor instead.
func (*CreatePrivateEndpointResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{48}
}

func (x *CreatePrivateEndpointResp) GetPrivateEndpoint() *PrivateEndpoint {
	if x != nil {
		return x.PrivateEndpoint
	}
	return nil
}

type ListPrivateEndpointsReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateEndpointsReq) Reset() {
	*x = ListPrivateEndpointsReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[49]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateEndpointsReq) ProtoMessage() {}

func (x *ListPrivateEndpointsReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[49]
	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 ListPrivateEndpointsReq.ProtoReflect.Descriptor instead.
func (*ListPrivateEndpointsReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{49}
}

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

func (x *ListPrivateEndpointsReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type ListPrivateEndpointsResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Endpoints     []*PrivateEndpoint     `protobuf:"bytes,1,rep,name=endpoints,proto3" json:"endpoints,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateEndpointsResp) Reset() {
	*x = ListPrivateEndpointsResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[50]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateEndpointsResp) ProtoMessage() {}

func (x *ListPrivateEndpointsResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[50]
	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 ListPrivateEndpointsResp.ProtoReflect.Descriptor instead.
func (*ListPrivateEndpointsResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{50}
}

func (x *ListPrivateEndpointsResp) GetEndpoints() []*PrivateEndpoint {
	if x != nil {
		return x.Endpoints
	}
	return nil
}

type DeletePrivateEndpointReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	EndpointId    uint64                 `protobuf:"varint,3,opt,name=endpoint_id,json=endpointId,proto3" json:"endpoint_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeletePrivateEndpointReq) Reset() {
	*x = DeletePrivateEndpointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[51]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeletePrivateEndpointReq) ProtoMessage() {}

func (x *DeletePrivateEndpointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[51]
	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 DeletePrivateEndpointReq.ProtoReflect.Descriptor instead.
func (*DeletePrivateEndpointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{51}
}

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

func (x *DeletePrivateEndpointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *DeletePrivateEndpointReq) GetEndpointId() uint64 {
	if x != nil {
		return x.EndpointId
	}
	return 0
}

type CreateAccesspointReq struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	ProjectId      uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId      uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	DisplayName    string                 `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	PublicEndpoint *PublicEndpointSpec    `protobuf:"bytes,4,opt,name=public_endpoint,json=publicEndpoint,proto3" json:"public_endpoint,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *CreateAccesspointReq) Reset() {
	*x = CreateAccesspointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[52]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreateAccesspointReq) ProtoMessage() {}

func (x *CreateAccesspointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[52]
	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 CreateAccesspointReq.ProtoReflect.Descriptor instead.
func (*CreateAccesspointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{52}
}

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

func (x *CreateAccesspointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *CreateAccesspointReq) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *CreateAccesspointReq) GetPublicEndpoint() *PublicEndpointSpec {
	if x != nil {
		return x.PublicEndpoint
	}
	return nil
}

type CreateAccesspointResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            uint64                 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateAccesspointResp) Reset() {
	*x = CreateAccesspointResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[53]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreateAccesspointResp) ProtoMessage() {}

func (x *CreateAccesspointResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[53]
	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 CreateAccesspointResp.ProtoReflect.Descriptor instead.
func (*CreateAccesspointResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{53}
}

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

type DeleteAccesspointReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteAccesspointReq) Reset() {
	*x = DeleteAccesspointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[54]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeleteAccesspointReq) ProtoMessage() {}

func (x *DeleteAccesspointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[54]
	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 DeleteAccesspointReq.ProtoReflect.Descriptor instead.
func (*DeleteAccesspointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{54}
}

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

func (x *DeleteAccesspointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *DeleteAccesspointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

type GetAccesspointReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetAccesspointReq) Reset() {
	*x = GetAccesspointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[55]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetAccesspointReq) ProtoMessage() {}

func (x *GetAccesspointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[55]
	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 GetAccesspointReq.ProtoReflect.Descriptor instead.
func (*GetAccesspointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{55}
}

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

func (x *GetAccesspointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *GetAccesspointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

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

func (x *IPAllowlist) Reset() {
	*x = IPAllowlist{}
	mi := &file_openapi_cm_cm_proto_msgTypes[56]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*IPAllowlist) ProtoMessage() {}

func (x *IPAllowlist) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[56]
	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 IPAllowlist.ProtoReflect.Descriptor instead.
func (*IPAllowlist) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{56}
}

func (x *IPAllowlist) GetCidr() string {
	if x != nil {
		return x.Cidr
	}
	return ""
}

type PublicEndpointSpec struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	IpAllowlist   []*IPAllowlist         `protobuf:"bytes,1,rep,name=ip_allowlist,json=ipAllowlist,proto3" json:"ip_allowlist,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PublicEndpointSpec) Reset() {
	*x = PublicEndpointSpec{}
	mi := &file_openapi_cm_cm_proto_msgTypes[57]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*PublicEndpointSpec) ProtoMessage() {}

func (x *PublicEndpointSpec) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[57]
	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 PublicEndpointSpec.ProtoReflect.Descriptor instead.
func (*PublicEndpointSpec) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{57}
}

func (x *PublicEndpointSpec) GetIpAllowlist() []*IPAllowlist {
	if x != nil {
		return x.IpAllowlist
	}
	return nil
}

type Accesspoint struct {
	state              protoimpl.MessageState          `protogen:"open.v1"`
	Id                 uint64                          `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	ProjectId          uint64                          `protobuf:"varint,2,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId          uint64                          `protobuf:"varint,3,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	DisplayName        string                          `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	TidbNodeQuantity   int32                           `protobuf:"varint,5,opt,name=tidb_node_quantity,json=tidbNodeQuantity,proto3" json:"tidb_node_quantity,omitempty"`
	PublicEndpoint     *Accesspoint_PublicEndpoint     `protobuf:"bytes,6,opt,name=public_endpoint,json=publicEndpoint,proto3" json:"public_endpoint,omitempty"`
	VpcPeeringEndpoint *Accesspoint_VpcPeeringEndpoint `protobuf:"bytes,7,opt,name=vpc_peering_endpoint,json=vpcPeeringEndpoint,proto3" json:"vpc_peering_endpoint,omitempty"`
	PrivateEndpoint    *Accesspoint_PrivateEndpoint    `protobuf:"bytes,8,opt,name=private_endpoint,json=privateEndpoint,proto3" json:"private_endpoint,omitempty"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

func (x *Accesspoint) Reset() {
	*x = Accesspoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[58]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Accesspoint) ProtoMessage() {}

func (x *Accesspoint) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[58]
	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 Accesspoint.ProtoReflect.Descriptor instead.
func (*Accesspoint) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{58}
}

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

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

func (x *Accesspoint) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *Accesspoint) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *Accesspoint) GetTidbNodeQuantity() int32 {
	if x != nil {
		return x.TidbNodeQuantity
	}
	return 0
}

func (x *Accesspoint) GetPublicEndpoint() *Accesspoint_PublicEndpoint {
	if x != nil {
		return x.PublicEndpoint
	}
	return nil
}

func (x *Accesspoint) GetVpcPeeringEndpoint() *Accesspoint_VpcPeeringEndpoint {
	if x != nil {
		return x.VpcPeeringEndpoint
	}
	return nil
}

func (x *Accesspoint) GetPrivateEndpoint() *Accesspoint_PrivateEndpoint {
	if x != nil {
		return x.PrivateEndpoint
	}
	return nil
}

type ListAccesspointsReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAccesspointsReq) Reset() {
	*x = ListAccesspointsReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[59]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListAccesspointsReq) ProtoMessage() {}

func (x *ListAccesspointsReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[59]
	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 ListAccesspointsReq.ProtoReflect.Descriptor instead.
func (*ListAccesspointsReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{59}
}

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

func (x *ListAccesspointsReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

type ListAccesspointsResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Items         []*Accesspoint         `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total         uint32                 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListAccesspointsResp) Reset() {
	*x = ListAccesspointsResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[60]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListAccesspointsResp) ProtoMessage() {}

func (x *ListAccesspointsResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[60]
	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 ListAccesspointsResp.ProtoReflect.Descriptor instead.
func (*ListAccesspointsResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{60}
}

func (x *ListAccesspointsResp) GetItems() []*Accesspoint {
	if x != nil {
		return x.Items
	}
	return nil
}

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

type UpdateAccesspointReq struct {
	state          protoimpl.MessageState `protogen:"open.v1"`
	ProjectId      uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId      uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId  uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	DisplayName    *string                `protobuf:"bytes,5,opt,name=display_name,json=displayName,proto3,oneof" json:"display_name,omitempty"`
	PublicEndpoint *PublicEndpointSpec    `protobuf:"bytes,4,opt,name=public_endpoint,json=publicEndpoint,proto3" json:"public_endpoint,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *UpdateAccesspointReq) Reset() {
	*x = UpdateAccesspointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[61]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateAccesspointReq) ProtoMessage() {}

func (x *UpdateAccesspointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[61]
	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 UpdateAccesspointReq.ProtoReflect.Descriptor instead.
func (*UpdateAccesspointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{61}
}

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

func (x *UpdateAccesspointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *UpdateAccesspointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

func (x *UpdateAccesspointReq) GetDisplayName() string {
	if x != nil && x.DisplayName != nil {
		return *x.DisplayName
	}
	return ""
}

func (x *UpdateAccesspointReq) GetPublicEndpoint() *PublicEndpointSpec {
	if x != nil {
		return x.PublicEndpoint
	}
	return nil
}

type CreatePrivateLinkEndpointReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	EndpointName  string                 `protobuf:"bytes,4,opt,name=endpoint_name,json=endpointName,proto3" json:"endpoint_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreatePrivateLinkEndpointReq) Reset() {
	*x = CreatePrivateLinkEndpointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[62]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateLinkEndpointReq) ProtoMessage() {}

func (x *CreatePrivateLinkEndpointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[62]
	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 CreatePrivateLinkEndpointReq.ProtoReflect.Descriptor instead.
func (*CreatePrivateLinkEndpointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{62}
}

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

func (x *CreatePrivateLinkEndpointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *CreatePrivateLinkEndpointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

func (x *CreatePrivateLinkEndpointReq) GetEndpointName() string {
	if x != nil {
		return x.EndpointName
	}
	return ""
}

type CreatePrivateLinkEndpointResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Id            uint64                 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreatePrivateLinkEndpointResp) Reset() {
	*x = CreatePrivateLinkEndpointResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[63]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*CreatePrivateLinkEndpointResp) ProtoMessage() {}

func (x *CreatePrivateLinkEndpointResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[63]
	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 CreatePrivateLinkEndpointResp.ProtoReflect.Descriptor instead.
func (*CreatePrivateLinkEndpointResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{63}
}

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

type DeletePrivateLinkEndpointReq struct {
	state                 protoimpl.MessageState `protogen:"open.v1"`
	ProjectId             uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId             uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId         uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	PrivateLinkEndpointId uint64                 `protobuf:"varint,4,opt,name=private_link_endpoint_id,json=privateLinkEndpointId,proto3" json:"private_link_endpoint_id,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *DeletePrivateLinkEndpointReq) Reset() {
	*x = DeletePrivateLinkEndpointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[64]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*DeletePrivateLinkEndpointReq) ProtoMessage() {}

func (x *DeletePrivateLinkEndpointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[64]
	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 DeletePrivateLinkEndpointReq.ProtoReflect.Descriptor instead.
func (*DeletePrivateLinkEndpointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{64}
}

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

func (x *DeletePrivateLinkEndpointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *DeletePrivateLinkEndpointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

func (x *DeletePrivateLinkEndpointReq) GetPrivateLinkEndpointId() uint64 {
	if x != nil {
		return x.PrivateLinkEndpointId
	}
	return 0
}

type GetPrivateLinkEndpointReq struct {
	state                 protoimpl.MessageState `protogen:"open.v1"`
	ProjectId             uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId             uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId         uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	PrivateLinkEndpointId uint64                 `protobuf:"varint,4,opt,name=private_link_endpoint_id,json=privateLinkEndpointId,proto3" json:"private_link_endpoint_id,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *GetPrivateLinkEndpointReq) Reset() {
	*x = GetPrivateLinkEndpointReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[65]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GetPrivateLinkEndpointReq) ProtoMessage() {}

func (x *GetPrivateLinkEndpointReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[65]
	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 GetPrivateLinkEndpointReq.ProtoReflect.Descriptor instead.
func (*GetPrivateLinkEndpointReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{65}
}

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

func (x *GetPrivateLinkEndpointReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *GetPrivateLinkEndpointReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

func (x *GetPrivateLinkEndpointReq) GetPrivateLinkEndpointId() uint64 {
	if x != nil {
		return x.PrivateLinkEndpointId
	}
	return 0
}

type PrivateLinkEndpoint struct {
	state         protoimpl.MessageState     `protogen:"open.v1"`
	Id            uint64                     `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
	EndpointName  string                     `protobuf:"bytes,2,opt,name=endpoint_name,json=endpointName,proto3" json:"endpoint_name,omitempty"`
	Status        PrivateLinkEndpoint_Status `protobuf:"varint,6,opt,name=status,proto3,enum=openapi.PrivateLinkEndpoint_Status" json:"status,omitempty"`
	Message       string                     `protobuf:"bytes,4,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *PrivateLinkEndpoint) Reset() {
	*x = PrivateLinkEndpoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[66]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*PrivateLinkEndpoint) ProtoMessage() {}

func (x *PrivateLinkEndpoint) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[66]
	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 PrivateLinkEndpoint.ProtoReflect.Descriptor instead.
func (*PrivateLinkEndpoint) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{66}
}

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

func (x *PrivateLinkEndpoint) GetEndpointName() string {
	if x != nil {
		return x.EndpointName
	}
	return ""
}

func (x *PrivateLinkEndpoint) GetStatus() PrivateLinkEndpoint_Status {
	if x != nil {
		return x.Status
	}
	return PrivateLinkEndpoint_NOT_CONFIGURE
}

func (x *PrivateLinkEndpoint) GetMessage() string {
	if x != nil {
		return x.Message
	}
	return ""
}

type ListPrivateLinkEndpointsReq struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	ProjectId     uint64                 `protobuf:"varint,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	ClusterId     uint64                 `protobuf:"varint,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	AccesspointId uint64                 `protobuf:"varint,3,opt,name=accesspoint_id,json=accesspointId,proto3" json:"accesspoint_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateLinkEndpointsReq) Reset() {
	*x = ListPrivateLinkEndpointsReq{}
	mi := &file_openapi_cm_cm_proto_msgTypes[67]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateLinkEndpointsReq) ProtoMessage() {}

func (x *ListPrivateLinkEndpointsReq) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[67]
	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 ListPrivateLinkEndpointsReq.ProtoReflect.Descriptor instead.
func (*ListPrivateLinkEndpointsReq) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{67}
}

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

func (x *ListPrivateLinkEndpointsReq) GetClusterId() uint64 {
	if x != nil {
		return x.ClusterId
	}
	return 0
}

func (x *ListPrivateLinkEndpointsReq) GetAccesspointId() uint64 {
	if x != nil {
		return x.AccesspointId
	}
	return 0
}

type ListPrivateLinkEndpointsResp struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Items         []*PrivateLinkEndpoint `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	Total         uint32                 `protobuf:"varint,2,opt,name=total,proto3" json:"total,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListPrivateLinkEndpointsResp) Reset() {
	*x = ListPrivateLinkEndpointsResp{}
	mi := &file_openapi_cm_cm_proto_msgTypes[68]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListPrivateLinkEndpointsResp) ProtoMessage() {}

func (x *ListPrivateLinkEndpointsResp) ProtoReflect() protoreflect.Message {
	mi := &file_openapi_cm_cm_proto_msgTypes[68]
	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 ListPrivateLinkEndpointsResp.ProtoReflect.Descriptor instead.
func (*ListPrivateLinkEndpointsResp) Descriptor() ([]byte, []int) {
	return file_openapi_cm_cm_proto_rawDescGZIP(), []int{68}
}

func (x *ListPrivateLinkEndpointsResp) GetItems() []*PrivateLinkEndpoint {
	if x != nil {
		return x.Items
	}
	return nil
}

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

type Accesspoint_PublicEndpoint struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	Host          string                 `protobuf:"bytes,1,opt,name=host,proto3" json:"host,omitempty"`
	Port          int32                  `protobuf:"varint,2,opt,name=port,proto3" json:"port,omitempty"`
	IpAllowlist   []*IPAllowlist         `protobuf:"bytes,4,rep,name=ip_allowlist,json=ipAllowlist,proto3" json:"ip_allowlist,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Accesspoint_PublicEndpoint) Reset() {
	*x = Accesspoint_PublicEndpoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[69]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Accesspoint_PublicEndpoint) ProtoMessage() {}

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

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

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

func (x *Accesspoint_PublicEndpoint) GetIpAllowlist() []*IPAllowlist {
	if x != nil {
		return x.IpAllowlist
	}
	return nil
}

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

func (x *Accesspoint_VpcPeeringEndpoint) Reset() {
	*x = Accesspoint_VpcPeeringEndpoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[70]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Accesspoint_VpcPeeringEndpoint) ProtoMessage() {}

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

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

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

type Accesspoint_PrivateEndpoint struct {
	state              protoimpl.MessageState                          `protogen:"open.v1"`
	PrivateLinkService *Accesspoint_PrivateEndpoint_PrivateLinkService `protobuf:"bytes,1,opt,name=private_link_service,json=privateLinkService,proto3" json:"private_link_service,omitempty"`
	Host               string                                          `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"`
	Port               int32                                           `protobuf:"varint,3,opt,name=port,proto3" json:"port,omitempty"`
	AzIds              []string                                        `protobuf:"bytes,4,rep,name=az_ids,json=azIds,proto3" json:"az_ids,omitempty"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

func (x *Accesspoint_PrivateEndpoint) Reset() {
	*x = Accesspoint_PrivateEndpoint{}
	mi := &file_openapi_cm_cm_proto_msgTypes[71]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Accesspoint_PrivateEndpoint) ProtoMessage() {}

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

func (x *Accesspoint_PrivateEndpoint) GetPrivateLinkService() *Accesspoint_PrivateEndpoint_PrivateLinkService {
	if x != nil {
		return x.PrivateLinkService
	}
	return nil
}

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

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

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

type Accesspoint_PrivateEndpoint_PrivateLinkService struct {
	state         protoimpl.MessageState                                `protogen:"open.v1"`
	ServiceName   string                                                `protobuf:"bytes,1,opt,name=service_name,json=serviceName,proto3" json:"service_name,omitempty"`
	Status        Accesspoint_PrivateEndpoint_PrivateLinkService_Status `protobuf:"varint,2,opt,name=status,proto3,enum=openapi.Accesspoint_PrivateEndpoint_PrivateLinkService_Status" json:"status,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Accesspoint_PrivateEndpoint_PrivateLinkService) Reset() {
	*x = Accesspoint_PrivateEndpoint_PrivateLinkService{}
	mi := &file_openapi_cm_cm_proto_msgTypes[72]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Accesspoint_PrivateEndpoint_PrivateLinkService) ProtoMessage() {}

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

func (x *Accesspoint_PrivateEndpoint_PrivateLinkService) GetServiceName() string {
	if x != nil {
		return x.ServiceName
	}
	return ""
}

func (x *Accesspoint_PrivateEndpoint_PrivateLinkService) GetStatus() Accesspoint_PrivateEndpoint_PrivateLinkService_Status {
	if x != nil {
		return x.Status
	}
	return Accesspoint_PrivateEndpoint_PrivateLinkService_NOT_CONFIGURE
}

var File_openapi_cm_cm_proto protoreflect.FileDescriptor

const file_openapi_cm_cm_proto_rawDesc = "" +
	"\n" +
	"\x13openapi/cm/cm.proto\x12\aopenapi\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1cgoogle/api/annotations.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"\x90\x02\n" +
	"\x10IpAccessListItem\x12y\n" +
	"\x04cidr\x18\x01 \x01(\tBe\x92Ab2RThe IP address or CIDR range that you want to add to the cluster's IP access list.J\f\"8.8.8.8/32\"R\x04cidr\x12s\n" +
	"\vdescription\x18\x02 \x01(\tBQ\x92AN23Description that explains the purpose of the entry.J\x17\"My Current IP Address\"R\vdescription:\f\x92A\t\n" +
	"\a\xd2\x01\x04cidr\"\xb3\x02\n" +
	"\x11ClusterComponents\x12S\n" +
	"\x04tidb\x18\x01 \x01(\v2\x16.openapi.TiDBComponentB'\x92A$2\"The TiDB component of the cluster.R\x04tidb\x12S\n" +
	"\x04tikv\x18\x02 \x01(\v2\x16.openapi.TiKVComponentB'\x92A$2\"The TiKV component of the cluster.R\x04tikv\x12_\n" +
	"\atiflash\x18\x03 \x01(\v2\x19.openapi.TiFlashComponentB*\x92A'2%The TiFlash component of the cluster.R\atiflash:\x13\x92A\x10\n" +
	"\x0e\xd2\x01\x04tidb\xd2\x01\x04tikv\"\xa7\x06\n" +
	"\rTiDBComponent\x12\xe4\x03\n" +
	"\tnode_size\x18\x01 \x01(\tB\xc6\x03\x92A\xc2\x032\xb6\x03The size of the TiDB component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.J\a\"8C16G\"R\bnodeSize\x12\x8b\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xe5\x01\x92A\xe1\x012\xdb\x01The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"J\x012R\fnodeQuantity:!\x92A\x1e\n" +
	"\x1c\xd2\x01\tnode_size\xd2\x01\rnode_quantity\"\x9e\t\n" +
	"\rTiKVComponent\x12\xe4\x03\n" +
	"\tnode_size\x18\x01 \x01(\tB\xc6\x03\x92A\xc2\x032\xb6\x03The size of the TiKV component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.J\a\"8C64G\"R\bnodeSize\x12\x99\x02\n" +
	"\x10storage_size_gib\x18\x02 \x01(\x05B\xee\x01\x92A\xea\x012\xe1\x01The storage size of a node in the cluster. You can get the minimum and maximum of storage size from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).J\x041024R\x0estorageSizeGib\x12\xd3\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xad\x02\x92A\xa9\x022\xa3\x02The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Limitations**:\n" +
	"- The `node_quantity` of TiKV must be a multiple of 3.J\x013R\fnodeQuantity:4\x92A1\n" +
	"/\xd2\x01\tnode_size\xd2\x01\x10storage_size_gib\xd2\x01\rnode_quantity\"\xdc\b\n" +
	"\x10TiFlashComponent\x12\xe7\x03\n" +
	"\tnode_size\x18\x01 \x01(\tB\xc9\x03\x92A\xc5\x032\xb9\x03The size of the TiFlash component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.J\a\"8C64G\"R\bnodeSize\x12\x9a\x02\n" +
	"\x10storage_size_gib\x18\x02 \x01(\x05B\xef\x01\x92A\xeb\x012\xe2\x01The storage size of a node in the cluster. You can get the minimum and maximum of storage size from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"J\x041024R\x0estorageSizeGib\x12\x8a\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xe4\x01\x92A\xe0\x012\xda\x01The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).J\x011R\fnodeQuantity:4\x92A1\n" +
	"/\xd2\x01\tnode_size\xd2\x01\x10storage_size_gib\xd2\x01\rnode_quantity\"\xa5\t\n" +
	"\rClusterConfig\x12\x87\x01\n" +
	"\rroot_password\x18\x01 \x01(\tBb\x92A_2DThe root password to access the cluster. It must be 8-64 characters.J\x12\"password_example\"x@\x80\x01\bR\frootPassword\x12\xef\x01\n" +
	"\x04port\x18\x02 \x01(\x05B\xda\x01\x92A\xd6\x012\xad\x01The TiDB port for connection. The port must be in the range of 1024-65535 except 10080.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- For a TiDB Cloud Starter instance, only port `4000` is available.:\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\x12\xc1\x03\n" +
	"\n" +
	"components\x18\x03 \x01(\v2\x1a.openapi.ClusterComponentsB\x84\x03\x92A\x80\x032\x84\x02The components of the cluster.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- For a TiDB Cloud Dedicated cluster, the `components` parameter is **required**.\n" +
	"- For a TiDB Cloud Starter instance, the `components` value is **ignored**. Setting this configuration does not have any effects.Jw{\"tidb\":{\"node_size\":\"8C16G\",\"node_quantity\":2},\"tikv\":{\"node_size\":\"8C32G\",\"storage_size_gib\":1024,\"node_quantity\":3}}R\n" +
	"components\x12\xbc\x02\n" +
	"\x0eip_access_list\x18\x04 \x03(\v2\x19.openapi.IpAccessListItemB\xfa\x01\x92A\xf6\x012\xf3\x01A list of IP addresses and Classless Inter-Domain Routing (CIDR) addresses that are allowed to access the TiDB Cloud cluster via [standard connection](https://docs.pingcap.com/tidbcloud/connect-to-tidb-cluster#connect-via-standard-connection).R\fipAccessList:\x15\x92A\x12\n" +
	"\x10\xd2\x01\rroot_password\"\x89\x03\n" +
	"\x10GetClusterConfig\x12\x97\x01\n" +
	"\x04port\x18\x01 \x01(\x05B\x82\x01\x92A\x7f2WThe TiDB port for connection. The port must be in the range of 1024-65535 except 10080.:\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\x12\xda\x01\n" +
	"\n" +
	"components\x18\x02 \x01(\v2\x1a.openapi.ClusterComponentsB\x9d\x01\x92A\x99\x012\x1eThe components of the cluster.Jw{\"tidb\":{\"node_size\":\"8C16G\",\"node_quantity\":2},\"tikv\":{\"node_size\":\"8C32G\",\"storage_size_gib\":1024,\"node_quantity\":3}}R\n" +
	"components\"\xa6\x11\n" +
	"\x10CreateClusterReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12\x80\x02\n" +
	"\x04name\x18\x02 \x01(\tB\xeb\x01\x92A\xe7\x012\xab\x01The name of the cluster. The name must be 4-64 characters that can only include numbers, letters, and hyphens, and the first and last character must be a letter or number.J\n" +
	"\"Cluster0\"\x8a\x01*^[A-Za-z0-9][-A-Za-z0-9]{2,62}[A-Za-z0-9]$R\x04name\x12\xd5\x04\n" +
	"\fcluster_type\x18\x03 \x01(\x0e2\x14.openapi.ClusterTypeB\x9b\x04\x92A\x97\x042\x80\x04The cluster type.\n" +
	"- `\"DEVELOPER\"`: create a [TiDB Cloud Starter](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#tidb-cloud-serverless) cluster\n" +
	"- `\"DEDICATED\"`: create a [TiDB Cloud Dedicated](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-dedicated) cluster. Before creating a TiDB Cloud Dedicated cluster, you must [set a Project CIDR](https://docs.pingcap.com/tidbcloud/set-up-vpc-peering-connections#prerequisite-set-a-project-cidr) on [TiDB Cloud console](https://tidbcloud.com/).J\v\"DEDICATED\"\xa2\x02\x04enumR\vclusterType\x12\xec\x01\n" +
	"\x0ecloud_provider\x18\x04 \x01(\x0e2\x16.openapi.CloudProviderB\xac\x01\x92A\xa8\x012\x95\x01The cloud provider on which your TiDB cluster is hosted.\n" +
	"- `\"AWS\"`: the Amazon Web Services cloud provider\n" +
	"- `\"GCP\"`: the Google Cloud cloud providerJ\x05\"AWS\"\xa2\x02\x06stringR\rcloudProvider\x12\x9c\x05\n" +
	"\x06region\x18\x05 \x01(\tB\x83\x05\x92A\xff\x042\xef\x04The region value should match the cloud provider's region code.\n" +
	"You can get the complete list of available regions from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"For the detailed information on each region, refer to the documentation of the corresponding cloud provider ([AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) | [GCP](https://cloud.google.com/about/locations#americas)).\n" +
	"\n" +
	"For example, if you want to deploy the cluster in the Oregon region for AWS, set the value to `\"us-west-2\"`.J\v\"us-west-2\"R\x06region\x12V\n" +
	"\x06config\x18\x06 \x01(\v2\x16.openapi.ClusterConfigB&\x92A#2!The configuration of the cluster.R\x06config:\x96\x01\x92A\x92\x01\n" +
	"\x8f\x01*\x10CreateClusterReq25CreateClusterReq is the request for creating cluster.\xd2\x01\n" +
	"project_id\xd2\x01\x04name\xd2\x01\fcluster_type\xd2\x01\x0ecloud_provider\xd2\x01\x06region\xd2\x01\x06config\"\x9d\x01\n" +
	"\x11CreateClusterResp\x120\n" +
	"\x02id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\x02id:V\x92AS\n" +
	"Q*\x11CreateClusterResp27CreateClusterResp is the response for creating cluster.\xd2\x01\x02id\"\xc2\x05\n" +
	"\vAwsCmekSpec\x12\x85\x04\n" +
	"\x06region\x18\x01 \x01(\tB\xec\x03\x92A\xe8\x032\xd8\x03The region name of the AWS CMEK. The region value should match the cloud provider's region code.\n" +
	"\n" +
	"You can get the complete list of available regions from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"For the detailed information on each region, refer to the documentation of the [AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) cloud provider.J\v\"us-west-2\"R\x06region\x12Q\n" +
	"\akms_arn\x18\x02 \x01(\tB8\x92A52\x1cThe KMS ARN of the AWS CMEK.J\x15\"arn:aws:kms:example\"R\x06kmsArn:X\x92AU\n" +
	"S*\vAwsCmekSpec21AwsCmekSpec is the specification of the AWS CMEK.\xd2\x01\x06region\xd2\x01\akms_arn\"\xfe\x04\n" +
	"\x10CreateAwsCmekReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12\x99\x02\n" +
	"\x05specs\x18\x02 \x03(\v2\x14.openapi.AwsCmekSpecB\xec\x01\x92A\xe8\x012\xe5\x01The specification of the AWS CMEK. You can configure multiple AWS CMEKs.\n" +
	"\n" +
	"For a particular project, CMEK can only be configured for one AWS region. Once configured, you cannot create clusters in other regions in the same project.R\x05specs:\x93\x01\x92A\x8f\x01\n" +
	"\x8c\x01*\x10CreateAwsCmekReq2cCreateAwsCmekReq is the request for configuring AWS Customer-Managed Encryption Keys for a project.\xd2\x01\n" +
	"project_id\xd2\x01\x05specs\"\xc4\x05\n" +
	"\vTiDBNodeMap\x12N\n" +
	"\tnode_name\x18\x01 \x01(\tB1\x92A.2\"The name of a node in the cluster.J\b\"tidb-0\"R\bnodeName\x12o\n" +
	"\x11availability_zone\x18\x02 \x01(\tBB\x92A?2/The availability zone of a node in the cluster.J\f\"us-west-2a\"R\x10availabilityZone\x12Y\n" +
	"\tnode_size\x18\x03 \x01(\tB<\x92A92.The size of the TiDB component in the cluster.J\a\"8C16G\"R\bnodeSize\x12\x8c\x01\n" +
	"\bvcpu_num\x18\x04 \x01(\x05Bq\x92An2iThe total vCPUs of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `vcpu_num` is always 0.J\x018R\avcpuNum\x12\x98\x01\n" +
	"\tram_bytes\x18\x05 \x01(\x03B{\x92Ax2gThe RAM size of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `ram_bytes` is always 0.J\r\"17179869184\"R\bramBytes\x12o\n" +
	"\x06status\x18\a \x01(\x0e2\x13.openapi.NodeStatusBB\x92A?2$The status of a node in the cluster.J\x17\"NODE_STATUS_AVAILABLE\"R\x06status\"\xa5\x06\n" +
	"\vTiKVNodeMap\x12N\n" +
	"\tnode_name\x18\x01 \x01(\tB1\x92A.2\"The name of a node in the cluster.J\b\"tikv-0\"R\bnodeName\x12o\n" +
	"\x11availability_zone\x18\x02 \x01(\tBB\x92A?2/The availability zone of a node in the cluster.J\f\"us-west-2a\"R\x10availabilityZone\x12Y\n" +
	"\tnode_size\x18\x03 \x01(\tB<\x92A92.The size of the TiKV component in the cluster.J\a\"8C32G\"R\bnodeSize\x12\x8c\x01\n" +
	"\bvcpu_num\x18\x04 \x01(\x05Bq\x92An2iThe total vCPUs of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `vcpu_num` is always 0.J\x018R\avcpuNum\x12\x98\x01\n" +
	"\tram_bytes\x18\x05 \x01(\x03B{\x92Ax2gThe RAM size of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `ram_bytes` is always 0.J\r\"68719476736\"R\bramBytes\x12_\n" +
	"\x10storage_size_gib\x18\x06 \x01(\x05B5\x92A22*The storage size of a node in the cluster.J\x041024R\x0estorageSizeGib\x12o\n" +
	"\x06status\x18\a \x01(\x0e2\x13.openapi.NodeStatusBB\x92A?2$The status of a node in the cluster.J\x17\"NODE_STATUS_AVAILABLE\"R\x06status\"\xae\x06\n" +
	"\x0eTiFlashNodeMap\x12Q\n" +
	"\tnode_name\x18\x01 \x01(\tB4\x92A12\"The name of a node in the cluster.J\v\"tiflash-0\"R\bnodeName\x12o\n" +
	"\x11availability_zone\x18\x02 \x01(\tBB\x92A?2/The availability zone of a node in the cluster.J\f\"us-west-2a\"R\x10availabilityZone\x12\\\n" +
	"\tnode_size\x18\x03 \x01(\tB?\x92A<21The size of the TiFlash component in the cluster.J\a\"8C64G\"R\bnodeSize\x12\x8c\x01\n" +
	"\bvcpu_num\x18\x04 \x01(\x05Bq\x92An2iThe total vCPUs of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `vcpu_num` is always 0.J\x018R\avcpuNum\x12\x98\x01\n" +
	"\tram_bytes\x18\x05 \x01(\x03B{\x92Ax2gThe RAM size of a node in the cluster. If the `cluster_type` is `\"DEVELOPER\"`, `ram_bytes` is always 0.J\r\"68719476736\"R\bramBytes\x12_\n" +
	"\x10storage_size_gib\x18\x06 \x01(\x05B5\x92A22*The storage size of a node in the cluster.J\x041024R\x0estorageSizeGib\x12o\n" +
	"\x06status\x18\a \x01(\x0e2\x13.openapi.NodeStatusBB\x92A?2$The status of a node in the cluster.J\x17\"NODE_STATUS_AVAILABLE\"R\x06status\"\x8d\v\n" +
	"\x0eClusterNodeMap\x12\xeb\x02\n" +
	"\x04tidb\x18\x01 \x03(\v2\x14.openapi.TiDBNodeMapB\xc0\x02\x92A\xbc\x022\x0eTiDB node map.J\xa9\x02[{\"node_name\":\"tidb-0\",\"availability_zone\":\"us-west-2a\",\"node_size\":\"8C16G\",\"vcpu_num\":8,\"ram_bytes\":\"17179869184\",\"status\":\"NODE_STATUS_AVAILABLE\"},{\"node_name\":\"tidb-1\",\"availability_zone\":\"us-west-2b\",\"node_size\":\"8C16G\",\"vcpu_num\":8,\"ram_bytes\":\"17179869184\",\"status\":\"NODE_STATUS_AVAILABLE\"}]R\x04tidb\x12\xc7\x04\n" +
	"\x04tikv\x18\x02 \x03(\v2\x14.openapi.TiKVNodeMapB\x9c\x04\x92A\x98\x042\x0eTiKV node map.J\x85\x04[{\"node_name\":\"tikv-0\",\"availability_zone\":\"us-west-2a\",\"node_size\":\"8C32G\",\"vcpu_num\":8,\"ram_bytes\":\"68719476736\",\"storage_size_gib\":1024,\"status\":\"NODE_STATUS_AVAILABLE\"},{\"node_name\":\"tikv-1\",\"availability_zone\":\"us-west-2b\",\"node_size\":\"8C64G\",\"vcpu_num\":8,\"ram_bytes\":\"68719476736\",\"storage_size_gib\":1024,\"status\":\"NODE_STATUS_AVAILABLE\"},{\"node_name\":\"tikv-2\",\"availability_zone\":\"us-west-2c\",\"node_size\":\"8C64G\",\"vcpu_num\":8,\"ram_bytes\":\"68719476736\",\"storage_size_gib\":1024,\"status\":\"NODE_STATUS_AVAILABLE\"}]R\x04tikv\x12\xad\x03\n" +
	"\atiflash\x18\x03 \x03(\v2\x17.openapi.TiFlashNodeMapB\xf9\x02\x92A\xf5\x022\x11TiFlash node map.J\xdf\x02[{\"node_name\":\"tiflash-0\",\"availability_zone\":\"us-west-2a\",\"node_size\":\"8C64G\",\"vcpu_num\":8,\"ram_bytes\":\"68719476736\",\"storage_size_gib\":1024,\"status\":\"NODE_STATUS_AVAILABLE\"},{\"node_name\":\"tiflash-1\",\"availability_zone\":\"us-west-2b\",\"node_size\":\"8C64G\",\"vcpu_num\":8,\"ram_bytes\":\"68719476736\",\"storage_size_gib\":1024,\"status\":\"NODE_STATUS_AVAILABLE\"}]R\atiflash:\x13\x92A\x10\n" +
	"\x0e\xd2\x01\x04tidb\xd2\x01\x04tikv\"\xfe\x02\n" +
	"\x12StandardConnection\x12v\n" +
	"\x04host\x18\x01 \x01(\tBb\x92A_2 The host of standard connection.J;\"tidb.f69f3808.acea1f2a.us-east-1.shared.aws.tidbcloud.com\"R\x04host\x12\xef\x01\n" +
	"\x04port\x18\x02 \x01(\x05B\xda\x01\x92A\xd6\x012\xad\x01The TiDB port for connection. The port must be in the range of 1024-65535 except 10080.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- For a TiDB Cloud Starter instance, only port `4000` is available.:\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\"\x8c\x03\n" +
	"\x14VPCPeeringConnection\x12\x81\x01\n" +
	"\x04host\x18\x01 \x01(\tBm\x92Aj2#The host of VPC peering connection.JC\"private-tidb.f69f3808.acea1f2a.us-east-1.shared.aws.tidbcloud.com\"R\x04host\x12\xef\x01\n" +
	"\x04port\x18\x02 \x01(\x05B\xda\x01\x92A\xd6\x012\xad\x01The TiDB port for connection. The port must be in the range of 1024-65535 except 10080.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- For a TiDB Cloud Starter instance, only port `4000` is available.:\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\"\xb0\x06\n" +
	"\x18ClusterConnectionStrings\x12U\n" +
	"\fdefault_user\x18\x01 \x01(\tB2\x92A/2%The default TiDB user for connection.J\x06\"root\"R\vdefaultUser\x12\xda\x02\n" +
	"\bstandard\x18\x02 \x01(\v2\x1b.openapi.StandardConnectionB\xa0\x02\x92A\x9c\x022\x99\x02Standard connection string.\n" +
	"\n" +
	"You must configure the [IP Access List](https://docs.pingcap.com/tidbcloud/connect-to-tidb-cluster#connect-via-standard-connection) for the cluster you created on [TiDB Cloud console](https://tidbcloud.com/) before connecting to this connection string.R\bstandard\x12\xdf\x02\n" +
	"\vvpc_peering\x18\x03 \x01(\v2\x1d.openapi.VPCPeeringConnectionB\x9e\x02\x92A\x9a\x022\x97\x02[VPC peering](https://docs.pingcap.com/tidbcloud/tidb-cloud-glossary#vpc-peering) connection string.\n" +
	"\n" +
	"You must [Set up VPC peering connections](https://docs.pingcap.com/tidbcloud/set-up-vpc-peering-connections) for the project before connecting to this private connection string.R\n" +
	"vpcPeering\"\xf2\x02\n" +
	"\rGetClusterReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:f\x92Ac\n" +
	"a*\rGetClusterReq26GetClusterReq is the request for getting cluster info.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xb4\v\n" +
	"\vClusterItem\x120\n" +
	"\x02id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\x02id\x12?\n" +
	"\n" +
	"project_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12j\n" +
	"\x04name\x18\x03 \x01(\tBV\x92AS2\x18The name of the cluster.J\n" +
	"\"Cluster0\"\x8a\x01*^[A-Za-z0-9][-A-Za-z0-9]{2,62}[A-Za-z0-9]$R\x04name\x12\xe5\x02\n" +
	"\fcluster_type\x18\x04 \x01(\x0e2\x14.openapi.ClusterTypeB\xab\x02\x92A\xa7\x022\x90\x02The cluster type:\n" +
	"- `\"DEVELOPER\"`: a [TiDB Cloud Starter](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#tidb-cloud-serverless) cluster\n" +
	"- `\"DEDICATED\"`: a [TiDB Cloud Dedicated](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-dedicated) cluster.J\v\"DEDICATED\"\xa2\x02\x04enumR\vclusterType\x12\xec\x01\n" +
	"\x0ecloud_provider\x18\x05 \x01(\x0e2\x16.openapi.CloudProviderB\xac\x01\x92A\xa8\x012\x95\x01The cloud provider on which your TiDB cluster is hosted.\n" +
	"- `\"AWS\"`: the Amazon Web Services cloud provider\n" +
	"- `\"GCP\"`: the Google Cloud cloud providerJ\x05\"AWS\"\xa2\x02\x06stringR\rcloudProvider\x12@\n" +
	"\x06region\x18\x06 \x01(\tB(\x92A%2\x16Region of the cluster.J\v\"us-west-2\"R\x06region\x12\x92\x01\n" +
	"\x10create_timestamp\x18\a \x01(\x03Bg\x92Ad2HThe creation time of the cluster in Unix timestamp seconds (epoch time).J\f\"1656991448\"\xa2\x02\ttimestampR\x0fcreateTimestamp\x12\xf0\x01\n" +
	"\x06config\x18\b \x01(\v2\x19.openapi.GetClusterConfigB\xbc\x01\x92A\xb8\x012!The configuration of the cluster.J\x92\x01{\"port\":4000,\"components\":{\"tidb\":{\"node_size\":\"8C16G\",\"node_quantity\":2},\"tikv\":{\"node_size\":\"8C32G\",\"storage_size_gib\":1024,\"node_quantity\":3}}}R\x06config\x12S\n" +
	"\x06status\x18\t \x01(\v2\x1a.openapi.ClusterItemStatusB\x1f\x92A\x1c2\x1aThe status of the cluster.R\x06status:P\x92AM\n" +
	"K*\vClusterItem2*ClusterItem is the information of cluster.\xd2\x01\x02id\xd2\x01\n" +
	"project_id\"\x99\x04\n" +
	"\x11ClusterItemStatus\x12?\n" +
	"\ftidb_version\x18\x01 \x01(\tB\x1c\x92A\x192\rTiDB version.J\b\"v6.1.0\"R\vtidbVersion\x12n\n" +
	"\x0ecluster_status\x18\x02 \x01(\x0e2\x16.openapi.ClusterStatusB/\x92A,2\x16Status of the cluster.J\v\"AVAILABLE\"\xa2\x02\x04enumR\rclusterStatus\x12\x9f\x01\n" +
	"\bnode_map\x18\x03 \x01(\v2\x17.openapi.ClusterNodeMapBk\x92Ah2fNode map. The `node_map` is returned only when the `cluster_status` is `\"AVAILABLE\"` or `\"MODIFYING\"`.R\anodeMap\x12j\n" +
	"\x12connection_strings\x18\x04 \x01(\v2!.openapi.ClusterConnectionStringsB\x18\x92A\x152\x13Connection strings.R\x11connectionStrings:E\x92AB\n" +
	"@*\x11ClusterItemStatus2+ClusterItemStatus is the status of cluster.\"\xd2\x03\n" +
	"\x18ListClustersOfProjectReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12<\n" +
	"\x04page\x18d \x01(\rB(\x92A%2\x14The number of pages.:\x011J\x011i\x00\x00\x00\x00\x00\x00\xf0?R\x04page\x12F\n" +
	"\tpage_size\x18e \x01(\rB)\x92A&2\x13The size of a page.:\x0210J\x0210i\x00\x00\x00\x00\x00\x00\xf0?R\bpageSize:v\x92As\n" +
	"q*\x18ListClustersOfProjectReq2HListClustersOfProjectReq is the request for getting clusters of project.\xd2\x01\n" +
	"project_id\"\xbb\x02\n" +
	"\x19ListClustersOfProjectResp\x12V\n" +
	"\x05items\x18\x01 \x03(\v2\x14.openapi.ClusterItemB*\x92A'2%The items of clusters in the project.R\x05items\x12J\n" +
	"\x05total\x18\x02 \x01(\rB4\x92A12,The total number of clusters in the project.J\x011R\x05total:z\x92Aw\n" +
	"u*\x18GetClustersOfProjectResp2IGetClustersOfProjectResp is the response for getting clusters of project.\xd2\x01\x05total\xd2\x01\x05items\"\x94\b\n" +
	"\x13UpdateTiDBComponent\x12\xde\x04\n" +
	"\tnode_size\x18\x01 \x01(\tB\xbb\x04\x92A\xb7\x042\xaa\x04The size of the TiDB component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- See [Change node size](https://docs.pingcap.com/tidbcloud/scale-tidb-cluster#change-node-size).J\b\"16C32G\"H\x00R\bnodeSize\x88\x01\x01\x12\x8f\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xe4\x01\x92A\xe0\x012\xda\x01The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).J\x013H\x01R\fnodeQuantity\x88\x01\x01\x12P\n" +
	"\x0eaccesspoint_id\x18\x04 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"H\x02R\raccesspointId\x88\x01\x01:\x05\x92A\x02\n" +
	"\x00B\f\n" +
	"\n" +
	"_node_sizeB\x10\n" +
	"\x0e_node_quantityB\x11\n" +
	"\x0f_accesspoint_id\"\x80\f\n" +
	"\x13UpdateTiKVComponent\x12\xde\x04\n" +
	"\tnode_size\x18\x01 \x01(\tB\xbb\x04\x92A\xb7\x042\xaa\x04The size of the TiKV component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- See [Change node size](https://docs.pingcap.com/tidbcloud/scale-tidb-cluster#change-node-size).J\b\"16C64G\"H\x00R\bnodeSize\x88\x01\x01\x12\xf0\x03\n" +
	"\x10storage_size_gib\x18\x02 \x01(\x05B\xc0\x03\x92A\xbc\x032\xb3\x03The storage size of a node in the cluster. You can get the minimum and maximum of storage size from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Limitations**:\n" +
	"- You cannot decrease storage size for TiKV.\n" +
	"- If your TiDB cluster is hosted by AWS, after changing the storage size of TiKV, you must wait at least six hours before you can change it again.J\x042048H\x01R\x0estorageSizeGib\x88\x01\x01\x12\xd8\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xad\x02\x92A\xa9\x022\xa3\x02The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Limitations**:\n" +
	"- The `node_quantity` of TiKV must be a multiple of 3.J\x016H\x02R\fnodeQuantity\x88\x01\x01:\x05\x92A\x02\n" +
	"\x00B\f\n" +
	"\n" +
	"_node_sizeB\x13\n" +
	"\x11_storage_size_gibB\x10\n" +
	"\x0e_node_quantity\"\xc4\v\n" +
	"\x16UpdateTiFlashComponent\x12\xe2\x04\n" +
	"\tnode_size\x18\x01 \x01(\tB\xbf\x04\x92A\xbb\x042\xad\x04The size of the TiFlash component in the cluster. You can get the available node size of each region from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Additional combination rules**:\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then their vCPUs need to be the same.\n" +
	"- If the vCPUs of TiDB or TiKV component is 4, then the cluster does not support TiFlash.\n" +
	"\n" +
	"**Limitations**:\n" +
	"- See [Change node size](https://docs.pingcap.com/tidbcloud/scale-tidb-cluster#change-node-size).J\t\"16C128G\"H\x00R\bnodeSize\x88\x01\x01\x12\xf6\x03\n" +
	"\x10storage_size_gib\x18\x02 \x01(\x05B\xc6\x03\x92A\xc2\x032\xb9\x03The storage size of a node in the cluster. You can get the minimum and maximum of storage size from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).\n" +
	"\n" +
	"**Limitations**:\n" +
	"- You cannot decrease storage size for TiFlash.\n" +
	"- If your TiDB cluster is hosted by AWS, after changing the storage size of TiFlash, you must wait at least six hours before you can change it again.J\x042048H\x01R\x0estorageSizeGib\x88\x01\x01\x12\x8f\x02\n" +
	"\rnode_quantity\x18\x03 \x01(\x05B\xe4\x01\x92A\xe0\x012\xda\x01The number of nodes in the cluster. You can get the minimum and step of a node quantity from the response of [List the cloud providers, regions and available specifications](#tag/Cluster/operation/ListProviderRegions).J\x012H\x02R\fnodeQuantity\x88\x01\x01:\x05\x92A\x02\n" +
	"\x00B\f\n" +
	"\n" +
	"_node_sizeB\x13\n" +
	"\x11_storage_size_gibB\x10\n" +
	"\x0e_node_quantity\"\x96\x04\n" +
	"\x17UpdateClusterComponents\x12Y\n" +
	"\x04tidb\x18\x01 \x01(\v2\x1c.openapi.UpdateTiDBComponentB'\x92A$2\"The TiDB component of the cluster.R\x04tidb\x12Y\n" +
	"\x04tikv\x18\x02 \x01(\v2\x1c.openapi.UpdateTiKVComponentB'\x92A$2\"The TiKV component of the cluster.R\x04tikv\x12\xc4\x02\n" +
	"\atiflash\x18\x03 \x01(\v2\x1f.openapi.UpdateTiFlashComponentB\x88\x02\x92A\x84\x022\x81\x02The TiFlash component of the cluster.\n" +
	"\n" +
	"If you want to add TiFlash nodes to a cluster that does not have one before (increase the node_quantity of `\"TIFLASH\"` from 0), you must specify the `node_size`, `storage_size_gib` and `node_quantity` of TiFlash nodes.R\atiflash\"\xbf\x05\n" +
	"\x13UpdateClusterConfig\x12e\n" +
	"\n" +
	"components\x18\x01 \x01(\v2 .openapi.UpdateClusterComponentsB#\x92A 2\x1eThe components of the cluster.R\n" +
	"components\x12\xcc\x03\n" +
	"\x06paused\x18\x02 \x01(\bB\xae\x03\x92A\xaa\x032\xa7\x03Flag that indicates whether the cluster is paused. `true` means to pause the cluster, and `false` means to resume the cluster. For more details, refer to [Pause or Resume a TiDB Cluster](https://docs.pingcap.com/tidbcloud/pause-or-resume-tidb-cluster).\n" +
	"\n" +
	"**Limitations:**\n" +
	" - The cluster can be paused only when the `cluster_status` is `\"AVAILABLE\"`.\n" +
	"- The cluster can be resumed only when the `cluster_status` is `\"PAUSED\"`.H\x00R\x06paused\x88\x01\x01:g\x92Ad\n" +
	"b*\x17UpdateClusterComponents2GUpdateClusterComponents is the request for updating cluster components.B\t\n" +
	"\a_paused\"\xbc\a\n" +
	"\x10UpdateClusterReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12\xb9\x04\n" +
	"\x06config\x18\x03 \x01(\v2\x1c.openapi.UpdateClusterConfigB\x82\x04\x92A\xfe\x032\xa4\x02The configuration of the cluster. You can modify the components of the cluster using `components`, or pause or resume the cluster using `paused`.\n" +
	"\n" +
	" You cannot change the cluster components and cluster status at the same time. That is, `components` and `paused` cannot be set at the same time.J\xd4\x01{\"components\":{\"tidb\":{\"node_size\":\"16C32G\",\"node_quantity\":3},\"tikv\":{\"node_size\":\"16C64G\",\"storage_size_gib\":2048,\"node_quantity\":6},\"tiflash\":{\"node_size\":\"16C128G\",\"storage_size_gib\":2048,\"node_quantity\":2}}}R\x06config:q\x92An\n" +
	"l*\x10UpdateClusterReq25UpdateClusterReq is the request for updating cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x06config\"\xf7\x02\n" +
	"\x10DeleteClusterReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:h\x92Ae\n" +
	"c*\x10DeleteClusterReq25DeleteClusterReq is the request for deleting cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xbb\x01\n" +
	"\x11NodeQuantityRange\x12Q\n" +
	"\x03min\x18\x01 \x01(\x05B?\x92A<2:The minimum node quantity of the component in the cluster.R\x03min\x12S\n" +
	"\x04step\x18\x02 \x01(\x05B?\x92A<2:The step of node quantity of the component in the cluster.R\x04step\"\xd6\x01\n" +
	"\x14NodeStorageSizeRange\x12^\n" +
	"\x03min\x18\x01 \x01(\x05BL\x92AI2GThe minimum storage size for each node of the component in the cluster.R\x03min\x12^\n" +
	"\x03max\x18\x02 \x01(\x05BL\x92AI2GThe maximum storage size for each node of the component in the cluster.R\x03max\"\x85\x02\n" +
	"\vTiDBProfile\x12Y\n" +
	"\tnode_size\x18\x01 \x01(\tB<\x92A92.The size of the TiDB component in the cluster.J\a\"8C16G\"R\bnodeSize\x12\x9a\x01\n" +
	"\x13node_quantity_range\x18\x02 \x01(\v2\x1a.openapi.NodeQuantityRangeBN\x92AK2IThe range and step of node quantity of the TiDB component in the cluster.R\x11nodeQuantityRange\"\xab\x03\n" +
	"\vTiKVProfile\x12Y\n" +
	"\tnode_size\x18\x01 \x01(\tB<\x92A92.The size of the TiKV component in the cluster.J\a\"8C32G\"R\bnodeSize\x12\x9a\x01\n" +
	"\x13node_quantity_range\x18\x02 \x01(\v2\x1a.openapi.NodeQuantityRangeBN\x92AK2IThe range and step of node quantity of the TiKV component in the cluster.R\x11nodeQuantityRange\x12\xa3\x01\n" +
	"\x16storage_size_gib_range\x18\x03 \x01(\v2\x1d.openapi.NodeStorageSizeRangeBO\x92AL2JThe storage size range for each node of the TiKV component in the cluster.R\x13storageSizeGibRange\"\xb7\x03\n" +
	"\x0eTiFlashProfile\x12\\\n" +
	"\tnode_size\x18\x01 \x01(\tB?\x92A<21The size of the TiFlash component in the cluster.J\a\"8C64G\"R\bnodeSize\x12\x9d\x01\n" +
	"\x13node_quantity_range\x18\x02 \x01(\v2\x1a.openapi.NodeQuantityRangeBQ\x92AN2LThe range and step of node quantity of the TiFlash component in the cluster.R\x11nodeQuantityRange\x12\xa6\x01\n" +
	"\x16storage_size_gib_range\x18\x03 \x01(\v2\x1d.openapi.NodeStorageSizeRangeBR\x92AO2MThe storage size range for each node of the TiFlash component in the cluster.R\x13storageSizeGibRange\"\x95\v\n" +
	"\x17ListProviderRegionsItem\x12\xe5\x02\n" +
	"\fcluster_type\x18\x01 \x01(\x0e2\x14.openapi.ClusterTypeB\xab\x02\x92A\xa7\x022\x90\x02The cluster type.\n" +
	"- `\"DEVELOPER\"`: a [TiDB Cloud Starter](https://docs.pingcap.com/tidbcloud/select-cluster-tier/#tidb-cloud-serverless) cluster\n" +
	"- `\"DEDICATED\"`: a [TiDB Cloud Dedicated](https://docs.pingcap.com/tidbcloud/select-cluster-tier#tidb-cloud-dedicated) cluster.J\v\"DEDICATED\"\xa2\x02\x04enumR\vclusterType\x12\xec\x01\n" +
	"\x0ecloud_provider\x18\x02 \x01(\x0e2\x16.openapi.CloudProviderB\xac\x01\x92A\xa8\x012\x95\x01The cloud provider on which your TiDB cluster is hosted.\n" +
	"- `\"AWS\"`: the Amazon Web Services cloud provider\n" +
	"- `\"GCP\"`: the Google Cloud cloud providerJ\x05\"AWS\"\xa2\x02\x06stringR\rcloudProvider\x12\x9f\x03\n" +
	"\x06region\x18\x03 \x01(\tB\x86\x03\x92A\x82\x032\xf2\x02The region in which your TiDB cluster is hosted.\n" +
	"\n" +
	"For the detailed information on each region, refer to the documentation of the corresponding cloud provider ([AWS](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html) | [GCP](https://cloud.google.com/about/locations#americas)).\n" +
	"\n" +
	"For example, `\"us-west-2\"` refers to Oregon for AWS.J\v\"us-west-2\"R\x06region\x12]\n" +
	"\x04tidb\x18\x04 \x03(\v2\x14.openapi.TiDBProfileB3\x92A02.The list of TiDB specifications in the region.R\x04tidb\x12]\n" +
	"\x04tikv\x18\x05 \x03(\v2\x14.openapi.TiKVProfileB3\x92A02.The list of TiKV specifications in the region.R\x04tikv\x12i\n" +
	"\atiflash\x18\x06 \x03(\v2\x17.openapi.TiFlashProfileB6\x92A321The list of TiFlash specifications in the region.R\atiflash:X\x92AU\n" +
	"S*\x17ListProviderRegionsItem28ListProviderRegionsItem is the item of provider regions.\"\xea\a\n" +
	"\x17ListProviderRegionsResp\x12\xe9\x06\n" +
	"\x05items\x18\x01 \x03(\v2 .openapi.ListProviderRegionsItemB\xb0\x06\x92A\xac\x062\x1aItems of provider regions.J\x85\x06[{\"cluster_type\":\"DEDICATED\",\"cloud_provider\":\"AWS\",\"region\":\"us-west-2\",\"tidb\":[{\"node_size\":\"8C16G\",\"node_quantity_range\":{\"min\":1,\"step\":1}}],\"tikv\":[{\"node_size\":\"8C32G\",\"node_quantity_range\":{\"min\":3,\"step\":3},\"storage_size_gib_range\":{\"min\":500,\"max\":4096}}],\"tiflash\":[{\"node_size\":\"8C64G\",\"node_quantity_range\":{\"min\":0,\"step\":1},\"storage_size_gib_range\":{\"min\":500,\"max\":2048}}]},{\"cluster_type\":\"DEVELOPER\",\"cloud_provider\":\"AWS\",\"region\":\"us-west-2\",\"tidb\":[{\"node_size\":\"Shared0\",\"node_quantity_range\":{\"min\":1,\"step\":1}}],\"tikv\":[{\"node_size\":\"Shared0\",\"node_quantity_range\":{\"min\":1,\"step\":1},\"storage_size_gib_range\":{\"min\":1,\"max\":1}}],\"tiflash\":[{\"node_size\":\"Shared0\",\"node_quantity_range\":{\"min\":1,\"step\":1},\"storage_size_gib_range\":{\"min\":1,\"max\":1}}]}]\xa2\x02\x05arrayR\x05items:c\x92A`\n" +
	"^*\x16GetProviderRegionsResp2DGetProviderRegionsResp is the response for getting provider regions.\"\xce\x02\n" +
	"\x0eListAwsCmekReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId:\x81\x01\x92A~\n" +
	"|*\x0eListAwsCmekReq2]ListAwsCmekReq is the request for getting AWS Customer-Managed Encryption Keys for a project.\xd2\x01\n" +
	"project_id\"\xe8\x01\n" +
	"\x0fListAwsCmekResp\x12\\\n" +
	"\x05items\x18\x01 \x03(\v2\x14.openapi.AwsCmekSpecB0\x92A-2#The specifications of the AWS CMEK.\xa2\x02\x05arrayR\x05items:w\x92At\n" +
	"r*\x0fListAwsCmekResp2_ListAwsCmekResp is the response for getting AWS Customer-Managed Encryption Keys for a project.\"\xa3\b\n" +
	"\x16PrivateEndpointService\x12\xf7\x01\n" +
	"\x0ecloud_provider\x18\x01 \x01(\x0e2\x16.openapi.CloudProviderB\xb7\x01\x92A\xb3\x012\xa0\x01The cloud provider on which the private endpoint service is hosted.\n" +
	"- `\"AWS\"`: the Amazon Web Services cloud provider\n" +
	"- `\"GCP\"`: the Google Cloud cloud providerJ\x05\"AWS\"\xa2\x02\x06stringR\rcloudProvider\x12\xa6\x01\n" +
	"\x04name\x18\x02 \x01(\tB\x91\x01\x92A\x8d\x012GThe name of the private endpoint service, which is used for connection.J9\"com.amazonaws.vpce.us-west-2.vpce-svc-01234567890123456\"\xa2\x02\x06stringR\x04name\x12\x81\x01\n" +
	"\x06status\x18\x03 \x01(\x0e2&.openapi.PrivateEndpointService.StatusBA\x92A>2+The status of the private endpoint service.J\b\"ACTIVE\"\xa2\x02\x04enumR\x06status\x12\x8e\x01\n" +
	"\bdns_name\x18\x04 \x01(\tBs\x92Ap2-The DNS name of the private endpoint service.J6\"privatelink-tidb.01234567890.clusters.tidb-cloud.com\"\xa2\x02\x06stringR\adnsName\x12R\n" +
	"\x04port\x18\x05 \x01(\x05B>\x92A;2)The port of the private endpoint service.J\x06\"4000\"\xa2\x02\x05int32R\x04port\x12\xb7\x01\n" +
	"\x06az_ids\x18\x06 \x03(\tB\x9f\x01\x92A\x9b\x012xAvailability zones for the private endpoint service. This field is only applicable when the `cloud_provider` is `\"AWS\"`.J\x17[\"usw2-az2\",\"usw2-az1\"]\xa2\x02\x05arrayR\x05azIds\"C\n" +
	"\x06Status\x12\x11\n" +
	"\rNOT_CONFIGURE\x10\x00\x12\f\n" +
	"\bCREATING\x10\x01\x12\n" +
	"\n" +
	"\x06ACTIVE\x10\x02\x12\f\n" +
	"\bDELETING\x10\x03\"\xc8\x03\n" +
	"\x1fCreatePrivateEndpointServiceReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:\xa9\x01\x92A\xa5\x01\n" +
	"\xa2\x01*\x1fCreatePrivateEndpointServiceReq2eCreatePrivateEndpointServiceReq is the request for creating a private endpoint service for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xe7\x02\n" +
	" CreatePrivateEndpointServiceResp\x12\x94\x01\n" +
	"\x18private_endpoint_service\x18\x01 \x01(\v2\x1f.openapi.PrivateEndpointServiceB9\x92A624The newly created private endpoint service resource.R\x16privateEndpointService:\xab\x01\x92A\xa7\x01\n" +
	"\xa4\x01* CreatePrivateEndpointServiceResp2eCreatePrivateEndpointServiceResp is the response for creating private endpoint service for a cluster.\xd2\x01\x18private_endpoint_service\"\xbc\x03\n" +
	"\x1cGetPrivateEndpointServiceReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:\xa0\x01\x92A\x9c\x01\n" +
	"\x99\x01*\x1cGetPrivateEndpointServiceReq2_GetPrivateEndpointServiceReq is the request for getting private endpoint service for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xde\x02\n" +
	"\x1dGetPrivateEndpointServiceResp\x12\x95\x01\n" +
	"\x18private_endpoint_service\x18\x01 \x01(\v2\x1f.openapi.PrivateEndpointServiceB:\x92A725The private endpoint service resource of the cluster.R\x16privateEndpointService:\xa4\x01\x92A\xa0\x01\n" +
	"\x9d\x01*\x1dGetPrivateEndpointServiceResp2aGetPrivateEndpointServiceResp is the response for getting private endpoint service for a cluster.\xd2\x01\x18private_endpoint_service\"\x8f\r\n" +
	"\x0fPrivateEndpoint\x12\x85\x02\n" +
	"\x0ecloud_provider\x18\x01 \x01(\x0e2\x16.openapi.CloudProviderB\xc5\x01\x92A\xc1\x012\xae\x01[Output Only] The cloud provider on which the private endpoint service is hosted.\n" +
	"- `\"AWS\"`: the Amazon Web Services cloud provider\n" +
	"- `\"GCP\"`: the Google Cloud cloud providerJ\x05\"AWS\"\xa2\x02\x06stringR\rcloudProvider\x12M\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B.\x92A+2$[Output Only] The ID of the cluster.J\x03\"1\"R\tclusterId\x12Z\n" +
	"\fcluster_name\x18\x03 \x01(\tB7\x92A42&[Output Only] The name of the cluster.J\n" +
	"\"Cluster0\"R\vclusterName\x12\x85\x01\n" +
	"\vregion_name\x18\x04 \x01(\tBd\x92Aa2U[Output Only] The region where the private endpoint is hosted, such as Oregon in AWS.J\b\"Oregon\"R\n" +
	"regionName\x12\xee\x01\n" +
	"\rendpoint_name\x18\x05 \x01(\tB\xc8\x01\x92A\xc4\x012\x9e\x01The format of the private endpoint name varies by cloud provider: `\"vpce-xxxx\"` for AWS and `\"projects/xxx/regions/xxx/forwardingRules/xxx\"` for Google Cloud.J\x18\"vpce-01234567890123456\"\xa2\x02\x06stringR\fendpointName\x12\x80\x01\n" +
	"\x06status\x18\x06 \x01(\x0e2\x1f.openapi.PrivateEndpoint.StatusBG\x92AD21[Output Only] The status of the private endpoint.J\b\"FAILED\"\xa2\x02\x04enumR\x06status\x12\x87\x01\n" +
	"\amessage\x18\a \x01(\tBm\x92Aj2A[Output Only] The detailed message when the `status` is \"FAILED\".J\x1e\"The endpoint does not exist.\"\xa2\x02\x04enumR\amessage\x12\xa4\x01\n" +
	"\fservice_name\x18\b \x01(\tB\x80\x01\x92A}27[Output Only] The service name of the private endpoint.J9\"com.amazonaws.vpce.us-west-2.vpce-svc-01234567890123456\"\xa2\x02\x06stringR\vserviceName\x12\x9e\x01\n" +
	"\x0eservice_status\x18\t \x01(\x0e2&.openapi.PrivateEndpointService.StatusBO\x92AL29[Output Only] The status of the private endpoint service.J\b\"ACTIVE\"\xa2\x02\x04enumR\rserviceStatus\x12\xaa\x01\n" +
	"\x02id\x18\n" +
	" \x01(\x04B\x99\x01\x92A\x95\x012\x84\x01[Output Only] The ID of private endpoint. It is used when you [deleting the endpoint](#tag/Cluster/operation/DeletePrivateEndpoint).J\x03\"1\"\xa2\x02\x06uint64R\x02id\"N\n" +
	"\x06Status\x12\x11\n" +
	"\rNOT_CONFIGURE\x10\x00\x12\v\n" +
	"\aPENDING\x10\x01\x12\n" +
	"\n" +
	"\x06ACTIVE\x10\x02\x12\f\n" +
	"\bDELETING\x10\x03\x12\n" +
	"\n" +
	"\x06FAILED\x10\x04\"\xf3\x02\n" +
	" ListPrivateEndpointsOfProjectReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId:\x94\x01\x92A\x90\x01\n" +
	"\x8d\x01* ListPrivateEndpointsOfProjectReq2\\ListPrivateEndpointsOfProjectReq is the request for listing private endpoints for a project.\xd2\x01\n" +
	"project_id\"\xa8\x02\n" +
	"!ListPrivateEndpointsOfProjectResp\x12j\n" +
	"\tendpoints\x18\x01 \x03(\v2\x18.openapi.PrivateEndpointB2\x92A/2%The private endpoints in the project.\xa2\x02\x05arrayR\tendpoints:\x96\x01\x92A\x92\x01\n" +
	"\x8f\x01*!ListPrivateEndpointsOfProjectResp2^ListPrivateEndpointsOfProjectResp is the response for listing private endpoints for a project.\xd2\x01\tendpoints\"\xfe\x04\n" +
	"\x18CreatePrivateEndpointReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12\xbf\x01\n" +
	"\x10private_endpoint\x18\x03 \x01(\v2\x18.openapi.PrivateEndpointBz\x92Aw2HThe endpoint resource to be created. Only the endpoint_name is required.J+{\"endpoint_name\": \"vpce-01234567890123456\"}R\x0fprivateEndpoint:\xa4\x01\x92A\xa0\x01\n" +
	"\x9d\x01*\x18CreatePrivateEndpointReq2gCreatePrivateEndpointReq is the request for creating a private endpoint for a private endpoint service.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xae\x02\n" +
	"\x19CreatePrivateEndpointResp\x12n\n" +
	"\x10private_endpoint\x18\x01 \x01(\v2\x18.openapi.PrivateEndpointB)\x92A&2$The newly endpoint created resource.R\x0fprivateEndpoint:\xa0\x01\x92A\x9c\x01\n" +
	"\x99\x01*\x19CreatePrivateEndpointResp2iCreatePrivateEndpointResp is the response for creating a private endpoint for a private endpoint service.\xd2\x01\x10private_endpoint\"\xa6\x03\n" +
	"\x17ListPrivateEndpointsReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:\x8f\x01\x92A\x8b\x01\n" +
	"\x88\x01*\x17ListPrivateEndpointsReq2SListPrivateEndpointsReq is the request for listing private endpoints for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\x8c\x02\n" +
	"\x18ListPrivateEndpointsResp\x12k\n" +
	"\tendpoints\x18\x01 \x03(\v2\x18.openapi.PrivateEndpointB3\x92A02&The private endpoints for the cluster.\xa2\x02\x05arrayR\tendpoints:\x82\x01\x92A\x7f\n" +
	"}*\x18ListPrivateEndpointsResp2UListPrivateEndpointsResp is the response for listing private endpoints for a cluster.\xd2\x01\tendpoints\"\xc4\x05\n" +
	"\x18DeletePrivateEndpointReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12\xf7\x01\n" +
	"\vendpoint_id\x18\x03 \x01(\x04B\xd5\x01\x92A\xd1\x012\xc9\x01The ID of the private endpoint to be deleted. You can get the ID from the `endpoints.id` field in the response of [List all private endpoints in a project](#tag/Cluster/operation/ListPrivateEndpoints).J\x03\"1\"R\n" +
	"endpointId:\xb2\x01\x92A\xae\x01\n" +
	"\xab\x01*\x18DeletePrivateEndpointReq2gDeletePrivateEndpointReq is the request for deleting a private endpoint for a private endpoint service.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\vendpoint_id\"\xac\x06\n" +
	"\x14CreateAccesspointReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12\x9e\x02\n" +
	"\fdisplay_name\x18\x03 \x01(\tB\xfa\x01\x92A\xf6\x012\xb7\x01The display name of the accesspoint. The name must be 4-64 characters that can only include numbers, letters, and hyphens, and the first and last character must be a letter or number.J\r\"Accesspoint\"\x8a\x01*^[A-Za-z0-9][-A-Za-z0-9]{2,62}[A-Za-z0-9]$R\vdisplayName\x12_\n" +
	"\x0fpublic_endpoint\x18\x04 \x01(\v2\x1b.openapi.PublicEndpointSpecB\x19\x92A\x162\x14The public endpoint.R\x0epublicEndpoint:\x96\x01\x92A\x92\x01\n" +
	"\x8f\x01*\x14CreateAccesspointReq2NCreateAccesspointReq is the request for creating an accesspoint for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\fdisplay_name\"M\n" +
	"\x15CreateAccesspointResp\x124\n" +
	"\x02id\x18\x01 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\x02id\"\x8b\x04\n" +
	"\x14DeleteAccesspointReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12Y\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B2\x92A/2(The ID of the accesspoint to be deleted.J\x03\"1\"R\raccesspointId:\x9c\x01\x92A\x98\x01\n" +
	"\x95\x01*\x14DeleteAccesspointReq2RDeleteAccesspointReq is the request for deleting an accessendpoint from a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\"\xef\x03\n" +
	"\x11GetAccesspointReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12K\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\raccesspointId:\x91\x01\x92A\x8d\x01\n" +
	"\x8a\x01*\x11GetAccesspointReq2JGetAccesspointReq is the request for getting an accesspoint for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\":\n" +
	"\vIPAllowlist\x12+\n" +
	"\x04cidr\x18\x01 \x01(\tB\x17\x92A\x142\x05CIDR.J\v\"0.0.0.0/0\"R\x04cidr\"\x85\x01\n" +
	"\x12PublicEndpointSpec\x12o\n" +
	"\fip_allowlist\x18\x01 \x03(\v2\x14.openapi.IPAllowlistB6\x92A32)The IP allowlist for the public endpoint.\xa2\x02\x05arrayR\vipAllowlist\"\x9e\x16\n" +
	"\vAccesspoint\x124\n" +
	"\x02id\x18\x01 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\x02id\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x02 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x03 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12\x9e\x02\n" +
	"\fdisplay_name\x18\x04 \x01(\tB\xfa\x01\x92A\xf6\x012\xb7\x01The display name of the accesspoint. The name must be 4-64 characters that can only include numbers, letters, and hyphens, and the first and last character must be a letter or number.J\r\"Accesspoint\"\x8a\x01*^[A-Za-z0-9][-A-Za-z0-9]{2,62}[A-Za-z0-9]$R\vdisplayName\x12b\n" +
	"\x12tidb_node_quantity\x18\x05 \x01(\x05B4\x92A12,The number of tidb nodes in the accesspoint.J\x012R\x10tidbNodeQuantity\x12g\n" +
	"\x0fpublic_endpoint\x18\x06 \x01(\v2#.openapi.Accesspoint.PublicEndpointB\x19\x92A\x162\x14The public endpoint.R\x0epublicEndpoint\x12y\n" +
	"\x14vpc_peering_endpoint\x18\a \x01(\v2'.openapi.Accesspoint.VpcPeeringEndpointB\x1e\x92A\x1b2\x19The VPC peering endpoint.R\x12vpcPeeringEndpoint\x12k\n" +
	"\x10private_endpoint\x18\b \x01(\v2$.openapi.Accesspoint.PrivateEndpointB\x1a\x92A\x172\x15The private endpoint.R\x0fprivateEndpoint\x1a\x95\x03\n" +
	"\x0ePublicEndpoint\x12v\n" +
	"\x04host\x18\x01 \x01(\tBb\x92A_2 The host of standard connection.J;\"tidb.f69f3808.acea1f2a.us-east-1.shared.aws.tidbcloud.com\"R\x04host\x12\x99\x01\n" +
	"\x04port\x18\x02 \x01(\x05B\x84\x01\x92A\x80\x012XThe TiDB port for connection. The port must be in the range of 1024-65535 except 10080.\n" +
	":\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\x12o\n" +
	"\fip_allowlist\x18\x04 \x03(\v2\x14.openapi.IPAllowlistB6\x92A32)The IP allowlist for the public endpoint.\xa2\x02\x05arrayR\vipAllowlist\x1a\xb4\x02\n" +
	"\x12VpcPeeringEndpoint\x12\x81\x01\n" +
	"\x04host\x18\x01 \x01(\tBm\x92Aj2#The host of VPC peering connection.JC\"private-tidb.f69f3808.acea1f2a.us-east-1.shared.aws.tidbcloud.com\"R\x04host\x12\x99\x01\n" +
	"\x04port\x18\x02 \x01(\x05B\x84\x01\x92A\x80\x012XThe TiDB port for connection. The port must be in the range of 1024-65535 except 10080.\n" +
	":\x044000J\x044000Y\x00\x00\x00\x00\xe0\xff\xef@i\x00\x00\x00\x00\x00\x00\x90@\xa2\x02\x05int32R\x04port\x1a\xe9\a\n" +
	"\x0fPrivateEndpoint\x12\x8d\x01\n" +
	"\x14private_link_service\x18\x01 \x01(\v27.openapi.Accesspoint.PrivateEndpoint.PrivateLinkServiceB\"\x92A\x1f2\x1dThe private endpoint service.R\x12privateLinkService\x12\x87\x01\n" +
	"\x04host\x18\x02 \x01(\tBs\x92Ap2-The DNS name of the private endpoint service.J6\"privatelink-tidb.01234567890.clusters.tidb-cloud.com\"\xa2\x02\x06stringR\x04host\x12R\n" +
	"\x04port\x18\x03 \x01(\x05B>\x92A;2)The port of the private endpoint service.J\x06\"4000\"\xa2\x02\x05int32R\x04port\x12\xb7\x01\n" +
	"\x06az_ids\x18\x04 \x03(\tB\x9f\x01\x92A\x9b\x012xAvailability zones for the private endpoint service. This field is only applicable when the `cloud_provider` is `\"AWS\"`.J\x17[\"usw2-az2\",\"usw2-az1\"]\xa2\x02\x05arrayR\x05azIds\x1a\xad\x03\n" +
	"\x12PrivateLinkService\x12\xb5\x01\n" +
	"\fservice_name\x18\x01 \x01(\tB\x91\x01\x92A\x8d\x012GThe name of the private endpoint service, which is used for connection.J9\"com.amazonaws.vpce.us-west-2.vpce-svc-01234567890123456\"\xa2\x02\x06stringR\vserviceName\x12\x99\x01\n" +
	"\x06status\x18\x02 \x01(\x0e2>.openapi.Accesspoint.PrivateEndpoint.PrivateLinkService.StatusBA\x92A>2+The status of the private endpoint service.J\b\"ACTIVE\"\xa2\x02\x04enumR\x06status\"C\n" +
	"\x06Status\x12\x11\n" +
	"\rNOT_CONFIGURE\x10\x00\x12\f\n" +
	"\bCREATING\x10\x01\x12\n" +
	"\n" +
	"\x06ACTIVE\x10\x02\x12\f\n" +
	"\bDELETING\x10\x03:M\x92AJ\n" +
	"H*\vAccesspoint2\vAccesspoint\xd2\x01\x02id\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\fdisplay_name\"\x93\x03\n" +
	"\x13ListAccesspointsReq\x12\xb7\x01\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B\x97\x01\x92A\x93\x012\x8b\x01The ID of the project. You can get the project ID from the response of [List all accessible projects](#tag/Project/operation/ListProjects).J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId:\x80\x01\x92A}\n" +
	"{*\x13ListAccesspointsReq2JListAccesspointsReq is the request for listing accesspoints for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\"\xae\x02\n" +
	"\x14ListAccesspointsResp\x12Z\n" +
	"\x05items\x18\x01 \x03(\v2\x14.openapi.AccesspointB.\x92A+2!The accesspoints for the cluster.\xa2\x02\x05arrayR\x05items\x12?\n" +
	"\x05total\x18\x02 \x01(\rB)\x92A&2!The total number of accesspoints.J\x011R\x05total:y\x92Av\n" +
	"t*\x14ListAccesspointsResp2LListAccesspointsResp is the response for listing accesspoints for a cluster.\xd2\x01\x05items\xd2\x01\x05total\"\xa6\x06\n" +
	"\x14UpdateAccesspointReq\x12?\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12Y\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B2\x92A/2(The ID of the accesspoint to be updated.J\x03\"1\"R\raccesspointId\x12\xa3\x02\n" +
	"\fdisplay_name\x18\x05 \x01(\tB\xfa\x01\x92A\xf6\x012\xb7\x01The display name of the accesspoint. The name must be 4-64 characters that can only include numbers, letters, and hyphens, and the first and last character must be a letter or number.J\r\"Accesspoint\"\x8a\x01*^[A-Za-z0-9][-A-Za-z0-9]{2,62}[A-Za-z0-9]$H\x00R\vdisplayName\x88\x01\x01\x12_\n" +
	"\x0fpublic_endpoint\x18\x04 \x01(\v2\x1b.openapi.PublicEndpointSpecB\x19\x92A\x162\x14The public endpoint.R\x0epublicEndpoint:\x98\x01\x92A\x94\x01\n" +
	"\x91\x01*\x14UpdateAccesspointReq2NUpdateAccesspointReq is the request for updating an accesspoint for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_idB\x0f\n" +
	"\r_display_name\"\xa2\x05\n" +
	"\x1cCreatePrivateLinkEndpointReq\x12?\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12K\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\raccesspointId\x12\xee\x01\n" +
	"\rendpoint_name\x18\x04 \x01(\tB\xc8\x01\x92A\xc4\x012\x9e\x01The format of the private endpoint name varies by cloud provider: `\"vpce-xxxx\"` for AWS and `\"projects/xxx/regions/xxx/forwardingRules/xxx\"` for Google Cloud.J\x18\"vpce-01234567890123456\"\xa2\x02\x06stringR\fendpointName:\xc1\x01\x92A\xbd\x01\n" +
	"\xba\x01*\x1cCreatePrivateLinkEndpointReq2_CreatePrivateLinkEndpointReq is the request for creating a private link endpoint for a cluster.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\xd2\x01\rendpoint_name\"\xf0\x01\n" +
	"\x1dCreatePrivateLinkEndpointResp\x12>\n" +
	"\x02id\x18\x01 \x01(\x04B.\x92A+2$The ID of the private link endpoint.J\x03\"1\"R\x02id:\x8e\x01\x92A\x8a\x01\n" +
	"\x87\x01*\x1dCreatePrivateLinkEndpointResp2aCreatePrivateLinkEndpointResp is the response for creating a private link endpoint for a cluster.\xd2\x01\x02id\"\xb8\x04\n" +
	"\x1cDeletePrivateLinkEndpointReq\x12?\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12K\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\raccesspointId\x12u\n" +
	"\x18private_link_endpoint_id\x18\x04 \x01(\x04B<\x92A922The ID of the private link endpoint to be deleted.J\x03\"1\"R\x15privateLinkEndpointId:\xd1\x01\x92A\xcd\x01\n" +
	"\xca\x01*\x1cDeletePrivateLinkEndpointReq2dDeletePrivateLinkEndpointReq is the request for deleting a private link endpoint for an accesspoint.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\xd2\x01\x18private_link_endpoint_id\"\xa0\x04\n" +
	"\x19GetPrivateLinkEndpointReq\x12?\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12K\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\raccesspointId\x12g\n" +
	"\x18private_link_endpoint_id\x18\x04 \x01(\x04B.\x92A+2$The ID of the private link endpoint.J\x03\"1\"R\x15privateLinkEndpointId:\xca\x01\x92A\xc6\x01\n" +
	"\xc3\x01*\x19GetPrivateLinkEndpointReq2`GetPrivateLinkEndpointReq is the request for getting a private link endpoint for an accesspoint.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\xd2\x01\x18private_link_endpoint_id\"\xf6\x05\n" +
	"\x13PrivateLinkEndpoint\x12>\n" +
	"\x02id\x18\x01 \x01(\x04B.\x92A+2$The ID of the private link endpoint.J\x03\"1\"R\x02id\x12\xee\x01\n" +
	"\rendpoint_name\x18\x02 \x01(\tB\xc8\x01\x92A\xc4\x012\x9e\x01The format of the private endpoint name varies by cloud provider: `\"vpce-xxxx\"` for AWS and `\"projects/xxx/regions/xxx/forwardingRules/xxx\"` for Google Cloud.J\x18\"vpce-01234567890123456\"\xa2\x02\x06stringR\fendpointName\x12\x84\x01\n" +
	"\x06status\x18\x06 \x01(\x0e2#.openapi.PrivateLinkEndpoint.StatusBG\x92AD21[Output Only] The status of the private endpoint.J\b\"ACTIVE\"\xa2\x02\x04enumR\x06status\x12\x87\x01\n" +
	"\amessage\x18\x04 \x01(\tBm\x92Aj2A[Output Only] The detailed message when the `status` is \"FAILED\".J\x1e\"The endpoint does not exist.\"\xa2\x02\x04enumR\amessage\"N\n" +
	"\x06Status\x12\x11\n" +
	"\rNOT_CONFIGURE\x10\x00\x12\v\n" +
	"\aPENDING\x10\x01\x12\n" +
	"\n" +
	"\x06ACTIVE\x10\x02\x12\f\n" +
	"\bDELETING\x10\x03\x12\n" +
	"\n" +
	"\x06FAILED\x10\x04:M\x92AJ\n" +
	"H*\x13PrivateLinkEndpoint2\x13PrivateLinkEndpoint\xd2\x01\x02id\xd2\x01\rendpoint_name\xd2\x01\x06status\"\xa1\x03\n" +
	"\x1bListPrivateLinkEndpointsReq\x12?\n" +
	"\n" +
	"project_id\x18\x01 \x01(\x04B \x92A\x1d2\x16The ID of the project.J\x03\"1\"R\tprojectId\x12?\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\x04B \x92A\x1d2\x16The ID of the cluster.J\x03\"1\"R\tclusterId\x12K\n" +
	"\x0eaccesspoint_id\x18\x03 \x01(\x04B$\x92A!2\x1aThe ID of the accesspoint.J\x03\"1\"R\raccesspointId:\xb2\x01\x92A\xae\x01\n" +
	"\xab\x01*\x1bListPrivateLinkEndpointsReq2aListPrivateLinkEndpointsReq is the request for listing private link endpoints for an accesspoint.\xd2\x01\n" +
	"project_id\xd2\x01\n" +
	"cluster_id\xd2\x01\x0eaccesspoint_id\"\xf7\x02\n" +
	"\x1cListPrivateLinkEndpointsResp\x12o\n" +
	"\x05items\x18\x01 \x03(\v2\x1c.openapi.PrivateLinkEndpointB;\x92A82.The private link endpoints for an accesspoint.\xa2\x02\x05arrayR\x05items\x12I\n" +
	"\x05total\x18\x02 \x01(\rB3\x92A02+The total number of private link endpoints.J\x011R\x05total:\x9a\x01\x92A\x96\x01\n" +
	"\x93\x01*\x1cListPrivateLinkEndpointsResp2cListPrivateLinkEndpointsResp is the response for listing private link endpoints for an accesspoint.\xd2\x01\x05items\xd2\x01\x05total*A\n" +
	"\rCloudProvider\x12\x1e\n" +
	"\x1aCLOUD_PROVIDER_UNSPECIFIED\x10\x00\x12\a\n" +
	"\x03AWS\x10\x01\x12\a\n" +
	"\x03GCP\x10\x02*I\n" +
	"\vClusterType\x12\x1c\n" +
	"\x18CLUSTER_TYPE_UNSPECIFIED\x10\x00\x12\r\n" +
	"\tDEDICATED\x10\x01\x12\r\n" +
	"\tDEVELOPER\x10\x02*\xb3\x01\n" +
	"\rClusterStatus\x12\x1e\n" +
	"\x1aCLUSTER_STATUS_UNSPECIFIED\x10\x00\x12\r\n" +
	"\tAVAILABLE\x10\x01\x12\f\n" +
	"\bCREATING\x10\x02\x12\r\n" +
	"\tMODIFYING\x10\x03\x12\n" +
	"\n" +
	"\x06PAUSED\x10\x04\x12\f\n" +
	"\bRESUMING\x10\x05\x12\x0f\n" +
	"\vUNAVAILABLE\x10\x06\x12\r\n" +
	"\tIMPORTING\x10\a\x12\x0f\n" +
	"\vMAINTAINING\x10\b\x12\v\n" +
	"\aPAUSING\x10\t*\x95\x01\n" +
	"\n" +
	"NodeStatus\x12\x1b\n" +
	"\x17NODE_STATUS_UNSPECIFIED\x10\x00\x12\x19\n" +
	"\x15NODE_STATUS_AVAILABLE\x10\x01\x12\x1b\n" +
	"\x17NODE_STATUS_UNAVAILABLE\x10\x02\x12\x18\n" +
	"\x14NODE_STATUS_CREATING\x10\x03\x12\x18\n" +
	"\x14NODE_STATUS_DELETING\x10\x042\xb6B\n" +
	"\aCluster\x12\xa0\x01\n" +
	"\n" +
	"GetCluster\x12\x16.openapi.GetClusterReq\x1a\x14.openapi.ClusterItem\"d\x92A\"\x12\x14Get a cluster by ID.*\n" +
	"GetCluster\x82\xd3\xe4\x93\x029\x127/api/v1beta/projects/{project_id}/clusters/{cluster_id}\x12\xcd\x01\n" +
	"\x15ListClustersOfProject\x12!.openapi.ListClustersOfProjectReq\x1a\".openapi.ListClustersOfProjectResp\"m\x92A8\x12\x1fList all clusters in a project.*\x15ListClustersOfProject\x82\xd3\xe4\x93\x02,\x12*/api/v1beta/projects/{project_id}/clusters\x12\x88\x03\n" +
	"\rCreateCluster\x12\x19.openapi.CreateClusterReq\x1a\x1a.openapi.CreateClusterResp\"\xbf\x02\x92A\x86\x02\x12\x11Create a cluster.\x1a\xe1\x01Before creating a TiDB Cloud Dedicated cluster, you must [set a Project CIDR](https://docs.pingcap.com/tidbcloud/set-up-vpc-peering-connections#prerequisite-set-a-project-cidr) on [TiDB Cloud console](https://tidbcloud.com/).*\rCreateCluster\x82\xd3\xe4\x93\x02/:\x01*\"*/api/v1beta/projects/{project_id}/clusters\x12\xee\x02\n" +
	"\rUpdateCluster\x12\x19.openapi.UpdateClusterReq\x1a\x16.google.protobuf.Empty\"\xa9\x02\x92A\xe3\x01\x12&Modify a TiDB Cloud Dedicated cluster.\x1a\xa9\x01With this endpoint, you can modify the components of a cluster using the `config.components` parameter, or pause or resume a cluster using the `config.paused` parameter.*\rUpdateCluster\x82\xd3\xe4\x93\x02<:\x01*27/api/v1beta/projects/{project_id}/clusters/{cluster_id}\x12\xa8\x01\n" +
	"\rDeleteCluster\x12\x19.openapi.DeleteClusterReq\x1a\x16.google.protobuf.Empty\"d\x92A\"\x12\x11Delete a cluster.*\rDeleteCluster\x82\xd3\xe4\x93\x029*7/api/v1beta/projects/{project_id}/clusters/{cluster_id}\x12\xd8\x01\n" +
	"\x13ListProviderRegions\x12\x16.google.protobuf.Empty\x1a .openapi.ListProviderRegionsResp\"\x86\x01\x92AV\x12?List the cloud providers, regions and available specifications.*\x13ListProviderRegions\x82\xd3\xe4\x93\x02'\x12%/api/v1beta/clusters/provider/regions\x12\xa8\x05\n" +
	"\rCreateAwsCmek\x12\x19.openapi.CreateAwsCmekReq\x1a\x16.google.protobuf.Empty\"\xe3\x04\x92A\xaa\x04\x12=Configure AWS Customer-Managed Encryption Keys for a project.\x1a\xd9\x03Before using this API, make sure that the `aws_cmek_enabled` field is set to `true` when creating the project using the [Create a Project](#tag/Project/operation/CreateProject) endpoint. For more information, see [Encryption at Rest using CMEK](https://docs.pingcap.com/tidbcloud/tidb-cloud-encrypt-cmek).\n" +
	"\n" +
	"Currently, this feature is only available upon request. If you need to try out this feature, contact [support](https://docs.pingcap.com/tidbcloud/tidb-cloud-support).*\rCreateAwsCmek\x82\xd3\xe4\x93\x02/:\x01*\"*/api/v1beta/projects/{project_id}/aws-cmek\x12\x83\x05\n" +
	"\vListAwsCmek\x12\x17.openapi.ListAwsCmekReq\x1a\x18.openapi.ListAwsCmekResp\"\xc0\x04\x92A\x8a\x04\x128List AWS Customer-Managed Encryption Keys for a project.\x1a\xc0\x03Customer-Managed Encryption Keys (CMEK) lets you protect your static data in a TiDB Cloud Dedicated cluster using a cryptographic key that is completely controlled by you. To create a project with CMEK enabled, use the [Create a project](#tag/Project/operation/CreateProject) endpoint and configure `aws_cmek_enabled` to `true`.\n" +
	"\n" +
	"For more information, see [Encryption at Rest using CMEK](https://docs.pingcap.com/tidbcloud/tidb-cloud-encrypt-cmek).*\vListAwsCmek\x82\xd3\xe4\x93\x02,\x12*/api/v1beta/projects/{project_id}/aws-cmek\x12\xee\x05\n" +
	"\x1cCreatePrivateEndpointService\x12(.openapi.CreatePrivateEndpointServiceReq\x1a).openapi.CreatePrivateEndpointServiceResp\"\xf8\x04\x92A\x99\x04\x120Create a private endpoint service for a cluster.\x1a\xc6\x03- For TiDB Cloud Dedicated clusters, you can create the [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) or [Google Cloud Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) service depending on where your cluster is hosted.\n" +
	"- For TiDB Cloud Starter instances, you cannot create or manage private endpoint service via API.*\x1cCreatePrivateEndpointService\x82\xd3\xe4\x93\x02U:\x01*\"P/api/v1beta/projects/{project_id}/clusters/{cluster_id}/private_endpoint_service\x12\xf8\x03\n" +
	"\x19GetPrivateEndpointService\x12%.openapi.GetPrivateEndpointServiceReq\x1a&.openapi.GetPrivateEndpointServiceResp\"\x8b\x03\x92A\xaf\x02\x12@Retrieve the private endpoint service information for a cluster.\x1a\xcf\x01- For TiDB Cloud Dedicated clusters, you can retrieve the private endpoint service information for a cluster.\n" +
	"- For TiDB Cloud Starter instances, you cannot create or manage private endpoint service via API.*\x19GetPrivateEndpointService\x82\xd3\xe4\x93\x02R\x12P/api/v1beta/projects/{project_id}/clusters/{cluster_id}/private_endpoint_service\x12\x80\x02\n" +
	"\x1dListPrivateEndpointsOfProject\x12).openapi.ListPrivateEndpointsOfProjectReq\x1a*.openapi.ListPrivateEndpointsOfProjectResp\"\x87\x01\x92AI\x12(List all private endpoints in a project.*\x1dListPrivateEndpointsOfProject\x82\xd3\xe4\x93\x025\x123/api/v1beta/projects/{project_id}/private_endpoints\x12\x96\a\n" +
	"\x15CreatePrivateEndpoint\x12!.openapi.CreatePrivateEndpointReq\x1a\".openapi.CreatePrivateEndpointResp\"\xb5\x06\x92A\xce\x05\x12(Create a private endpoint for a cluster.\x1a\x8a\x05When creating a private endpoint, only the `endpoint_name` is required.\n" +
	"- For TiDB Cloud Dedicated clusters, you can create a private endpoint resource in TiDB Cloud after you create the [AWS PrivateLink](https://aws.amazon.com/privatelink/?privatelink-blogs.sort-by=item.additionalFields.createdDate&privatelink-blogs.sort-order=desc) or [Google Cloud Private Service Connect](https://cloud.google.com/vpc/docs/private-service-connect) endpoint depending on where your cluster is hosted. In this way, TiDB Cloud accepts connection requests from your endpoint.\n" +
	"- For TiDB Cloud Starter instances, you cannot create or manage private endpoint via API.*\x15CreatePrivateEndpoint\x82\xd3\xe4\x93\x02]:\x10private_endpoint\"I/api/v1beta/projects/{project_id}/clusters/{cluster_id}/private_endpoints\x12\xf3\x01\n" +
	"\x14ListPrivateEndpoints\x12 .openapi.ListPrivateEndpointsReq\x1a!.openapi.ListPrivateEndpointsResp\"\x95\x01\x92AA\x12)List all private endpoints for a cluster.*\x14ListPrivateEndpoints\x82\xd3\xe4\x93\x02K\x12I/api/v1beta/projects/{project_id}/clusters/{cluster_id}/private_endpoints\x12\xab\x03\n" +
	"\x15DeletePrivateEndpoint\x12!.openapi.DeletePrivateEndpointReq\x1a\x16.google.protobuf.Empty\"\xd6\x02\x92A\xf3\x01\x12(Delete a private endpoint for a cluster.\x1a\xaf\x01- For TiDB Cloud Dedicated clusters, you can delete a private endpoint for a cluster.\n" +
	"- For TiDB Cloud Starter instances, you cannot create or manage private endpoint via API.*\x15DeletePrivateEndpoint\x82\xd3\xe4\x93\x02Y*W/api/v1beta/projects/{project_id}/clusters/{cluster_id}/private_endpoints/{endpoint_id}\x12\xe5\x01\n" +
	"\x11CreateAccesspoint\x12\x1d.openapi.CreateAccesspointReq\x1a\x1e.openapi.CreateAccesspointResp\"\x90\x01\x92A>\x12\x16Create an Accesspoint.\x1a\x11CreateAccesspoint*\x11CreateAccesspoint\x82\xd3\xe4\x93\x02I:\x01*\"D/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints\x12\xd0\x01\n" +
	"\x0eGetAccesspoint\x12\x1a.openapi.GetAccesspointReq\x1a\x14.openapi.Accesspoint\"\x8b\x01\x92A+\x12\x19Get an accesspoint by ID.*\x0eGetAccesspoint\x82\xd3\xe4\x93\x02W\x12U/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}\x12\xd9\x01\n" +
	"\x10ListAccesspoints\x12\x1c.openapi.ListAccesspointsReq\x1a\x1d.openapi.ListAccesspointsResp\"\x87\x01\x92A8\x12$List all accesspoints for a cluster.*\x10ListAccesspoints\x82\xd3\xe4\x93\x02F\x12D/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints\x12\xee\x01\n" +
	"\x11UpdateAccesspoint\x12\x1d.openapi.UpdateAccesspointReq\x1a\x16.google.protobuf.Empty\"\xa1\x01\x92A>\x12\x16Update an accesspoint.\x1a\x11UpdateAccesspoint*\x11UpdateAccesspoint\x82\xd3\xe4\x93\x02Z:\x01*2U/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}\x12\xfc\x01\n" +
	"\x11DeleteAccesspoint\x12\x1d.openapi.DeleteAccesspointReq\x1a\x16.google.protobuf.Empty\"\xaf\x01\x92AO\x12'Delete an accessendpoint for a cluster.\x1a\x11DeleteAccesspoint*\x11DeleteAccesspoint\x82\xd3\xe4\x93\x02W*U/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}\x12\xcf\x02\n" +
	"\x19CreatePrivateLinkEndpoint\x12%.openapi.CreatePrivateLinkEndpointReq\x1a&.openapi.CreatePrivateLinkEndpointResp\"\xe2\x01\x92Aj\x122Create a private link endpoint for an accesspoint.\x1a\x19CreatePrivateLinkEndpoint*\x19CreatePrivateLinkEndpoint\x82\xd3\xe4\x93\x02o:\x01*\"j/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}/privateLinkEndpoints\x12\xbd\x02\n" +
	"\x16GetPrivateLinkEndpoint\x12\".openapi.GetPrivateLinkEndpointReq\x1a\x1c.openapi.PrivateLinkEndpoint\"\xe0\x01\x92AN\x124Get a private link endpoint of an accesspoint by ID.*\x16GetPrivateLinkEndpoint\x82\xd3\xe4\x93\x02\x88\x01\x12\x85\x01/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}/privateLinkEndpoints/{private_link_endpoint_id}\x12\xae\x02\n" +
	"\x18ListPrivateLinkEndpoints\x12$.openapi.ListPrivateLinkEndpointsReq\x1a%.openapi.ListPrivateLinkEndpointsResp\"\xc4\x01\x92AO\x123List all private link endpoints for an accesspoint.*\x18ListPrivateLinkEndpoints\x82\xd3\xe4\x93\x02l\x12j/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}/privateLinkEndpoints\x12\xd9\x02\n" +
	"\x19DeletePrivateLinkEndpoint\x12%.openapi.DeletePrivateLinkEndpointReq\x1a\x16.google.protobuf.Empty\"\xfc\x01\x92Aj\x122Delete a private link endpoint for an accesspoint.\x1a\x19DeletePrivateLinkEndpoint*\x19DeletePrivateLinkEndpoint\x82\xd3\xe4\x93\x02\x88\x01*\x85\x01/api/v1beta/projects/{project_id}/clusters/{cluster_id}/accesspoints/{accesspoint_id}/privateLinkEndpoints/{private_link_endpoint_id}\x1a3\x92A0\x12.Create, get, modify, and delete TiDB clusters.B4Z2github.com/tidbcloud/idl/pbgen/proto/openapi/cm;cmb\x06proto3"

var (
	file_openapi_cm_cm_proto_rawDescOnce sync.Once
	file_openapi_cm_cm_proto_rawDescData []byte
)

func file_openapi_cm_cm_proto_rawDescGZIP() []byte {
	file_openapi_cm_cm_proto_rawDescOnce.Do(func() {
		file_openapi_cm_cm_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_openapi_cm_cm_proto_rawDesc), len(file_openapi_cm_cm_proto_rawDesc)))
	})
	return file_openapi_cm_cm_proto_rawDescData
}

var file_openapi_cm_cm_proto_enumTypes = make([]protoimpl.EnumInfo, 8)
var file_openapi_cm_cm_proto_msgTypes = make([]protoimpl.MessageInfo, 73)
var file_openapi_cm_cm_proto_goTypes = []any{
	(CloudProvider)(0),                 // 0: openapi.CloudProvider
	(ClusterType)(0),                   // 1: openapi.ClusterType
	(ClusterStatus)(0),                 // 2: openapi.ClusterStatus
	(NodeStatus)(0),                    // 3: openapi.NodeStatus
	(PrivateEndpointService_Status)(0), // 4: openapi.PrivateEndpointService.Status
	(PrivateEndpoint_Status)(0),        // 5: openapi.PrivateEndpoint.Status
	(Accesspoint_PrivateEndpoint_PrivateLinkService_Status)(0), // 6: openapi.Accesspoint.PrivateEndpoint.PrivateLinkService.Status
	(PrivateLinkEndpoint_Status)(0),                            // 7: openapi.PrivateLinkEndpoint.Status
	(*IpAccessListItem)(nil),                                   // 8: openapi.IpAccessListItem
	(*ClusterComponents)(nil),                                  // 9: openapi.ClusterComponents
	(*TiDBComponent)(nil),                                      // 10: openapi.TiDBComponent
	(*TiKVComponent)(nil),                                      // 11: openapi.TiKVComponent
	(*TiFlashComponent)(nil),                                   // 12: openapi.TiFlashComponent
	(*ClusterConfig)(nil),                                      // 13: openapi.ClusterConfig
	(*GetClusterConfig)(nil),                                   // 14: openapi.GetClusterConfig
	(*CreateClusterReq)(nil),                                   // 15: openapi.CreateClusterReq
	(*CreateClusterResp)(nil),                                  // 16: openapi.CreateClusterResp
	(*AwsCmekSpec)(nil),                                        // 17: openapi.AwsCmekSpec
	(*CreateAwsCmekReq)(nil),                                   // 18: openapi.CreateAwsCmekReq
	(*TiDBNodeMap)(nil),                                        // 19: openapi.TiDBNodeMap
	(*TiKVNodeMap)(nil),                                        // 20: openapi.TiKVNodeMap
	(*TiFlashNodeMap)(nil),                                     // 21: openapi.TiFlashNodeMap
	(*ClusterNodeMap)(nil),                                     // 22: openapi.ClusterNodeMap
	(*StandardConnection)(nil),                                 // 23: openapi.StandardConnection
	(*VPCPeeringConnection)(nil),                               // 24: openapi.VPCPeeringConnection
	(*ClusterConnectionStrings)(nil),                           // 25: openapi.ClusterConnectionStrings
	(*GetClusterReq)(nil),                                      // 26: openapi.GetClusterReq
	(*ClusterItem)(nil),                                        // 27: openapi.ClusterItem
	(*ClusterItemStatus)(nil),                                  // 28: openapi.ClusterItemStatus
	(*ListClustersOfProjectReq)(nil),                           // 29: openapi.ListClustersOfProjectReq
	(*ListClustersOfProjectResp)(nil),                          // 30: openapi.ListClustersOfProjectResp
	(*UpdateTiDBComponent)(nil),                                // 31: openapi.UpdateTiDBComponent
	(*UpdateTiKVComponent)(nil),                                // 32: openapi.UpdateTiKVComponent
	(*UpdateTiFlashComponent)(nil),                             // 33: openapi.UpdateTiFlashComponent
	(*UpdateClusterComponents)(nil),                            // 34: openapi.UpdateClusterComponents
	(*UpdateClusterConfig)(nil),                                // 35: openapi.UpdateClusterConfig
	(*UpdateClusterReq)(nil),                                   // 36: openapi.UpdateClusterReq
	(*DeleteClusterReq)(nil),                                   // 37: openapi.DeleteClusterReq
	(*NodeQuantityRange)(nil),                                  // 38: openapi.NodeQuantityRange
	(*NodeStorageSizeRange)(nil),                               // 39: openapi.NodeStorageSizeRange
	(*TiDBProfile)(nil),                                        // 40: openapi.TiDBProfile
	(*TiKVProfile)(nil),                                        // 41: openapi.TiKVProfile
	(*TiFlashProfile)(nil),                                     // 42: openapi.TiFlashProfile
	(*ListProviderRegionsItem)(nil),                            // 43: openapi.ListProviderRegionsItem
	(*ListProviderRegionsResp)(nil),                            // 44: openapi.ListProviderRegionsResp
	(*ListAwsCmekReq)(nil),                                     // 45: openapi.ListAwsCmekReq
	(*ListAwsCmekResp)(nil),                                    // 46: openapi.ListAwsCmekResp
	(*PrivateEndpointService)(nil),                             // 47: openapi.PrivateEndpointService
	(*CreatePrivateEndpointServiceReq)(nil),                    // 48: openapi.CreatePrivateEndpointServiceReq
	(*CreatePrivateEndpointServiceResp)(nil),                   // 49: openapi.CreatePrivateEndpointServiceResp
	(*GetPrivateEndpointServiceReq)(nil),                       // 50: openapi.GetPrivateEndpointServiceReq
	(*GetPrivateEndpointServiceResp)(nil),                      // 51: openapi.GetPrivateEndpointServiceResp
	(*PrivateEndpoint)(nil),                                    // 52: openapi.PrivateEndpoint
	(*ListPrivateEndpointsOfProjectReq)(nil),                   // 53: openapi.ListPrivateEndpointsOfProjectReq
	(*ListPrivateEndpointsOfProjectResp)(nil),                  // 54: openapi.ListPrivateEndpointsOfProjectResp
	(*CreatePrivateEndpointReq)(nil),                           // 55: openapi.CreatePrivateEndpointReq
	(*CreatePrivateEndpointResp)(nil),                          // 56: openapi.CreatePrivateEndpointResp
	(*ListPrivateEndpointsReq)(nil),                            // 57: openapi.ListPrivateEndpointsReq
	(*ListPrivateEndpointsResp)(nil),                           // 58: openapi.ListPrivateEndpointsResp
	(*DeletePrivateEndpointReq)(nil),                           // 59: openapi.DeletePrivateEndpointReq
	(*CreateAccesspointReq)(nil),                               // 60: openapi.CreateAccesspointReq
	(*CreateAccesspointResp)(nil),                              // 61: openapi.CreateAccesspointResp
	(*DeleteAccesspointReq)(nil),                               // 62: openapi.DeleteAccesspointReq
	(*GetAccesspointReq)(nil),                                  // 63: openapi.GetAccesspointReq
	(*IPAllowlist)(nil),                                        // 64: openapi.IPAllowlist
	(*PublicEndpointSpec)(nil),                                 // 65: openapi.PublicEndpointSpec
	(*Accesspoint)(nil),                                        // 66: openapi.Accesspoint
	(*ListAccesspointsReq)(nil),                                // 67: openapi.ListAccesspointsReq
	(*ListAccesspointsResp)(nil),                               // 68: openapi.ListAccesspointsResp
	(*UpdateAccesspointReq)(nil),                               // 69: openapi.UpdateAccesspointReq
	(*CreatePrivateLinkEndpointReq)(nil),                       // 70: openapi.CreatePrivateLinkEndpointReq
	(*CreatePrivateLinkEndpointResp)(nil),                      // 71: openapi.CreatePrivateLinkEndpointResp
	(*DeletePrivateLinkEndpointReq)(nil),                       // 72: openapi.DeletePrivateLinkEndpointReq
	(*GetPrivateLinkEndpointReq)(nil),                          // 73: openapi.GetPrivateLinkEndpointReq
	(*PrivateLinkEndpoint)(nil),                                // 74: openapi.PrivateLinkEndpoint
	(*ListPrivateLinkEndpointsReq)(nil),                        // 75: openapi.ListPrivateLinkEndpointsReq
	(*ListPrivateLinkEndpointsResp)(nil),                       // 76: openapi.ListPrivateLinkEndpointsResp
	(*Accesspoint_PublicEndpoint)(nil),                         // 77: openapi.Accesspoint.PublicEndpoint
	(*Accesspoint_VpcPeeringEndpoint)(nil),                     // 78: openapi.Accesspoint.VpcPeeringEndpoint
	(*Accesspoint_PrivateEndpoint)(nil),                        // 79: openapi.Accesspoint.PrivateEndpoint
	(*Accesspoint_PrivateEndpoint_PrivateLinkService)(nil),     // 80: openapi.Accesspoint.PrivateEndpoint.PrivateLinkService
	(*emptypb.Empty)(nil),                                      // 81: google.protobuf.Empty
}
var file_openapi_cm_cm_proto_depIdxs = []int32{
	10, // 0: openapi.ClusterComponents.tidb:type_name -> openapi.TiDBComponent
	11, // 1: openapi.ClusterComponents.tikv:type_name -> openapi.TiKVComponent
	12, // 2: openapi.ClusterComponents.tiflash:type_name -> openapi.TiFlashComponent
	9,  // 3: openapi.ClusterConfig.components:type_name -> openapi.ClusterComponents
	8,  // 4: openapi.ClusterConfig.ip_access_list:type_name -> openapi.IpAccessListItem
	9,  // 5: openapi.GetClusterConfig.components:type_name -> openapi.ClusterComponents
	1,  // 6: openapi.CreateClusterReq.cluster_type:type_name -> openapi.ClusterType
	0,  // 7: openapi.CreateClusterReq.cloud_provider:type_name -> openapi.CloudProvider
	13, // 8: openapi.CreateClusterReq.config:type_name -> openapi.ClusterConfig
	17, // 9: openapi.CreateAwsCmekReq.specs:type_name -> openapi.AwsCmekSpec
	3,  // 10: openapi.TiDBNodeMap.status:type_name -> openapi.NodeStatus
	3,  // 11: openapi.TiKVNodeMap.status:type_name -> openapi.NodeStatus
	3,  // 12: openapi.TiFlashNodeMap.status:type_name -> openapi.NodeStatus
	19, // 13: openapi.ClusterNodeMap.tidb:type_name -> openapi.TiDBNodeMap
	20, // 14: openapi.ClusterNodeMap.tikv:type_name -> openapi.TiKVNodeMap
	21, // 15: openapi.ClusterNodeMap.tiflash:type_name -> openapi.TiFlashNodeMap
	23, // 16: openapi.ClusterConnectionStrings.standard:type_name -> openapi.StandardConnection
	24, // 17: openapi.ClusterConnectionStrings.vpc_peering:type_name -> openapi.VPCPeeringConnection
	1,  // 18: openapi.ClusterItem.cluster_type:type_name -> openapi.ClusterType
	0,  // 19: openapi.ClusterItem.cloud_provider:type_name -> openapi.CloudProvider
	14, // 20: openapi.ClusterItem.config:type_name -> openapi.GetClusterConfig
	28, // 21: openapi.ClusterItem.status:type_name -> openapi.ClusterItemStatus
	2,  // 22: openapi.ClusterItemStatus.cluster_status:type_name -> openapi.ClusterStatus
	22, // 23: openapi.ClusterItemStatus.node_map:type_name -> openapi.ClusterNodeMap
	25, // 24: openapi.ClusterItemStatus.connection_strings:type_name -> openapi.ClusterConnectionStrings
	27, // 25: openapi.ListClustersOfProjectResp.items:type_name -> openapi.ClusterItem
	31, // 26: openapi.UpdateClusterComponents.tidb:type_name -> openapi.UpdateTiDBComponent
	32, // 27: openapi.UpdateClusterComponents.tikv:type_name -> openapi.UpdateTiKVComponent
	33, // 28: openapi.UpdateClusterComponents.tiflash:type_name -> openapi.UpdateTiFlashComponent
	34, // 29: openapi.UpdateClusterConfig.components:type_name -> openapi.UpdateClusterComponents
	35, // 30: openapi.UpdateClusterReq.config:type_name -> openapi.UpdateClusterConfig
	38, // 31: openapi.TiDBProfile.node_quantity_range:type_name -> openapi.NodeQuantityRange
	38, // 32: openapi.TiKVProfile.node_quantity_range:type_name -> openapi.NodeQuantityRange
	39, // 33: openapi.TiKVProfile.storage_size_gib_range:type_name -> openapi.NodeStorageSizeRange
	38, // 34: openapi.TiFlashProfile.node_quantity_range:type_name -> openapi.NodeQuantityRange
	39, // 35: openapi.TiFlashProfile.storage_size_gib_range:type_name -> openapi.NodeStorageSizeRange
	1,  // 36: openapi.ListProviderRegionsItem.cluster_type:type_name -> openapi.ClusterType
	0,  // 37: openapi.ListProviderRegionsItem.cloud_provider:type_name -> openapi.CloudProvider
	40, // 38: openapi.ListProviderRegionsItem.tidb:type_name -> openapi.TiDBProfile
	41, // 39: openapi.ListProviderRegionsItem.tikv:type_name -> openapi.TiKVProfile
	42, // 40: openapi.ListProviderRegionsItem.tiflash:type_name -> openapi.TiFlashProfile
	43, // 41: openapi.ListProviderRegionsResp.items:type_name -> openapi.ListProviderRegionsItem
	17, // 42: openapi.ListAwsCmekResp.items:type_name -> openapi.AwsCmekSpec
	0,  // 43: openapi.PrivateEndpointService.cloud_provider:type_name -> openapi.CloudProvider
	4,  // 44: openapi.PrivateEndpointService.status:type_name -> openapi.PrivateEndpointService.Status
	47, // 45: openapi.CreatePrivateEndpointServiceResp.private_endpoint_service:type_name -> openapi.PrivateEndpointService
	47, // 46: openapi.GetPrivateEndpointServiceResp.private_endpoint_service:type_name -> openapi.PrivateEndpointService
	0,  // 47: openapi.PrivateEndpoint.cloud_provider:type_name -> openapi.CloudProvider
	5,  // 48: openapi.PrivateEndpoint.status:type_name -> openapi.PrivateEndpoint.Status
	4,  // 49: openapi.PrivateEndpoint.service_status:type_name -> openapi.PrivateEndpointService.Status
	52, // 50: openapi.ListPrivateEndpointsOfProjectResp.endpoints:type_name -> openapi.PrivateEndpoint
	52, // 51: openapi.CreatePrivateEndpointReq.private_endpoint:type_name -> openapi.PrivateEndpoint
	52, // 52: openapi.CreatePrivateEndpointResp.private_endpoint:type_name -> openapi.PrivateEndpoint
	52, // 53: openapi.ListPrivateEndpointsResp.endpoints:type_name -> openapi.PrivateEndpoint
	65, // 54: openapi.CreateAccesspointReq.public_endpoint:type_name -> openapi.PublicEndpointSpec
	64, // 55: openapi.PublicEndpointSpec.ip_allowlist:type_name -> openapi.IPAllowlist
	77, // 56: openapi.Accesspoint.public_endpoint:type_name -> openapi.Accesspoint.PublicEndpoint
	78, // 57: openapi.Accesspoint.vpc_peering_endpoint:type_name -> openapi.Accesspoint.VpcPeeringEndpoint
	79, // 58: openapi.Accesspoint.private_endpoint:type_name -> openapi.Accesspoint.PrivateEndpoint
	66, // 59: openapi.ListAccesspointsResp.items:type_name -> openapi.Accesspoint
	65, // 60: openapi.UpdateAccesspointReq.public_endpoint:type_name -> openapi.PublicEndpointSpec
	7,  // 61: openapi.PrivateLinkEndpoint.status:type_name -> openapi.PrivateLinkEndpoint.Status
	74, // 62: openapi.ListPrivateLinkEndpointsResp.items:type_name -> openapi.PrivateLinkEndpoint
	64, // 63: openapi.Accesspoint.PublicEndpoint.ip_allowlist:type_name -> openapi.IPAllowlist
	80, // 64: openapi.Accesspoint.PrivateEndpoint.private_link_service:type_name -> openapi.Accesspoint.PrivateEndpoint.PrivateLinkService
	6,  // 65: openapi.Accesspoint.PrivateEndpoint.PrivateLinkService.status:type_name -> openapi.Accesspoint.PrivateEndpoint.PrivateLinkService.Status
	26, // 66: openapi.Cluster.GetCluster:input_type -> openapi.GetClusterReq
	29, // 67: openapi.Cluster.ListClustersOfProject:input_type -> openapi.ListClustersOfProjectReq
	15, // 68: openapi.Cluster.CreateCluster:input_type -> openapi.CreateClusterReq
	36, // 69: openapi.Cluster.UpdateCluster:input_type -> openapi.UpdateClusterReq
	37, // 70: openapi.Cluster.DeleteCluster:input_type -> openapi.DeleteClusterReq
	81, // 71: openapi.Cluster.ListProviderRegions:input_type -> google.protobuf.Empty
	18, // 72: openapi.Cluster.CreateAwsCmek:input_type -> openapi.CreateAwsCmekReq
	45, // 73: openapi.Cluster.ListAwsCmek:input_type -> openapi.ListAwsCmekReq
	48, // 74: openapi.Cluster.CreatePrivateEndpointService:input_type -> openapi.CreatePrivateEndpointServiceReq
	50, // 75: openapi.Cluster.GetPrivateEndpointService:input_type -> openapi.GetPrivateEndpointServiceReq
	53, // 76: openapi.Cluster.ListPrivateEndpointsOfProject:input_type -> openapi.ListPrivateEndpointsOfProjectReq
	55, // 77: openapi.Cluster.CreatePrivateEndpoint:input_type -> openapi.CreatePrivateEndpointReq
	57, // 78: openapi.Cluster.ListPrivateEndpoints:input_type -> openapi.ListPrivateEndpointsReq
	59, // 79: openapi.Cluster.DeletePrivateEndpoint:input_type -> openapi.DeletePrivateEndpointReq
	60, // 80: openapi.Cluster.CreateAccesspoint:input_type -> openapi.CreateAccesspointReq
	63, // 81: openapi.Cluster.GetAccesspoint:input_type -> openapi.GetAccesspointReq
	67, // 82: openapi.Cluster.ListAccesspoints:input_type -> openapi.ListAccesspointsReq
	69, // 83: openapi.Cluster.UpdateAccesspoint:input_type -> openapi.UpdateAccesspointReq
	62, // 84: openapi.Cluster.DeleteAccesspoint:input_type -> openapi.DeleteAccesspointReq
	70, // 85: openapi.Cluster.CreatePrivateLinkEndpoint:input_type -> openapi.CreatePrivateLinkEndpointReq
	73, // 86: openapi.Cluster.GetPrivateLinkEndpoint:input_type -> openapi.GetPrivateLinkEndpointReq
	75, // 87: openapi.Cluster.ListPrivateLinkEndpoints:input_type -> openapi.ListPrivateLinkEndpointsReq
	72, // 88: openapi.Cluster.DeletePrivateLinkEndpoint:input_type -> openapi.DeletePrivateLinkEndpointReq
	27, // 89: openapi.Cluster.GetCluster:output_type -> openapi.ClusterItem
	30, // 90: openapi.Cluster.ListClustersOfProject:output_type -> openapi.ListClustersOfProjectResp
	16, // 91: openapi.Cluster.CreateCluster:output_type -> openapi.CreateClusterResp
	81, // 92: openapi.Cluster.UpdateCluster:output_type -> google.protobuf.Empty
	81, // 93: openapi.Cluster.DeleteCluster:output_type -> google.protobuf.Empty
	44, // 94: openapi.Cluster.ListProviderRegions:output_type -> openapi.ListProviderRegionsResp
	81, // 95: openapi.Cluster.CreateAwsCmek:output_type -> google.protobuf.Empty
	46, // 96: openapi.Cluster.ListAwsCmek:output_type -> openapi.ListAwsCmekResp
	49, // 97: openapi.Cluster.CreatePrivateEndpointService:output_type -> openapi.CreatePrivateEndpointServiceResp
	51, // 98: openapi.Cluster.GetPrivateEndpointService:output_type -> openapi.GetPrivateEndpointServiceResp
	54, // 99: openapi.Cluster.ListPrivateEndpointsOfProject:output_type -> openapi.ListPrivateEndpointsOfProjectResp
	56, // 100: openapi.Cluster.CreatePrivateEndpoint:output_type -> openapi.CreatePrivateEndpointResp
	58, // 101: openapi.Cluster.ListPrivateEndpoints:output_type -> openapi.ListPrivateEndpointsResp
	81, // 102: openapi.Cluster.DeletePrivateEndpoint:output_type -> google.protobuf.Empty
	61, // 103: openapi.Cluster.CreateAccesspoint:output_type -> openapi.CreateAccesspointResp
	66, // 104: openapi.Cluster.GetAccesspoint:output_type -> openapi.Accesspoint
	68, // 105: openapi.Cluster.ListAccesspoints:output_type -> openapi.ListAccesspointsResp
	81, // 106: openapi.Cluster.UpdateAccesspoint:output_type -> google.protobuf.Empty
	81, // 107: openapi.Cluster.DeleteAccesspoint:output_type -> google.protobuf.Empty
	71, // 108: openapi.Cluster.CreatePrivateLinkEndpoint:output_type -> openapi.CreatePrivateLinkEndpointResp
	74, // 109: openapi.Cluster.GetPrivateLinkEndpoint:output_type -> openapi.PrivateLinkEndpoint
	76, // 110: openapi.Cluster.ListPrivateLinkEndpoints:output_type -> openapi.ListPrivateLinkEndpointsResp
	81, // 111: openapi.Cluster.DeletePrivateLinkEndpoint:output_type -> google.protobuf.Empty
	89, // [89:112] is the sub-list for method output_type
	66, // [66:89] is the sub-list for method input_type
	66, // [66:66] is the sub-list for extension type_name
	66, // [66:66] is the sub-list for extension extendee
	0,  // [0:66] is the sub-list for field type_name
}

func init() { file_openapi_cm_cm_proto_init() }
func file_openapi_cm_cm_proto_init() {
	if File_openapi_cm_cm_proto != nil {
		return
	}
	file_openapi_cm_cm_proto_msgTypes[23].OneofWrappers = []any{}
	file_openapi_cm_cm_proto_msgTypes[24].OneofWrappers = []any{}
	file_openapi_cm_cm_proto_msgTypes[25].OneofWrappers = []any{}
	file_openapi_cm_cm_proto_msgTypes[27].OneofWrappers = []any{}
	file_openapi_cm_cm_proto_msgTypes[61].OneofWrappers = []any{}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_openapi_cm_cm_proto_rawDesc), len(file_openapi_cm_cm_proto_rawDesc)),
			NumEnums:      8,
			NumMessages:   73,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_openapi_cm_cm_proto_goTypes,
		DependencyIndexes: file_openapi_cm_cm_proto_depIdxs,
		EnumInfos:         file_openapi_cm_cm_proto_enumTypes,
		MessageInfos:      file_openapi_cm_cm_proto_msgTypes,
	}.Build()
	File_openapi_cm_cm_proto = out.File
	file_openapi_cm_cm_proto_goTypes = nil
	file_openapi_cm_cm_proto_depIdxs = nil
}
