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

package v1beta1

import (
	_ "buf.build/gen/go/bufbuild/protovalidate/protocolbuffers/go/buf/validate"
	_ "github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2/options"
	_ "github.com/tidbcloud/dataflow-service/idl/pbgen/proto/common"
	dataflow "github.com/tidbcloud/dataflow-service/idl/pbgen/proto/dataflow"
	_ "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"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
	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)
)

// BackupType defines the possible type of a backup job
type BackupType int32

const (
	// Unspecified
	BackupType_BACKUP_TYPE_UNSPECIFIED BackupType = 0
	// Auto backup
	BackupType_AUTO BackupType = 1
	// Manual backup
	BackupType_MANUAL BackupType = 2
)

// Enum value maps for BackupType.
var (
	BackupType_name = map[int32]string{
		0: "BACKUP_TYPE_UNSPECIFIED",
		1: "AUTO",
		2: "MANUAL",
	}
	BackupType_value = map[string]int32{
		"BACKUP_TYPE_UNSPECIFIED": 0,
		"AUTO":                    1,
		"MANUAL":                  2,
	}
)

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

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

func (BackupType) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[0].Descriptor()
}

func (BackupType) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[0]
}

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

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

// BackupScopeType defines the granularity level of a backup
type BackupScopeType int32

const (
	// Unspecified scope type
	BackupScopeType_BACKUP_SCOPE_TYPE_UNSPECIFIED BackupScopeType = 0
	// Full cluster backup
	BackupScopeType_BACKUP_SCOPE_TYPE_FULL BackupScopeType = 1
	// Database-level backup
	BackupScopeType_BACKUP_SCOPE_TYPE_DATABASE BackupScopeType = 2
	// Table-level backup
	BackupScopeType_BACKUP_SCOPE_TYPE_TABLE BackupScopeType = 3
	// Custom filter-based backup
	BackupScopeType_BACKUP_SCOPE_TYPE_FILTER BackupScopeType = 4
)

// Enum value maps for BackupScopeType.
var (
	BackupScopeType_name = map[int32]string{
		0: "BACKUP_SCOPE_TYPE_UNSPECIFIED",
		1: "BACKUP_SCOPE_TYPE_FULL",
		2: "BACKUP_SCOPE_TYPE_DATABASE",
		3: "BACKUP_SCOPE_TYPE_TABLE",
		4: "BACKUP_SCOPE_TYPE_FILTER",
	}
	BackupScopeType_value = map[string]int32{
		"BACKUP_SCOPE_TYPE_UNSPECIFIED": 0,
		"BACKUP_SCOPE_TYPE_FULL":        1,
		"BACKUP_SCOPE_TYPE_DATABASE":    2,
		"BACKUP_SCOPE_TYPE_TABLE":       3,
		"BACKUP_SCOPE_TYPE_FILTER":      4,
	}
)

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

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

func (BackupScopeType) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[1].Descriptor()
}

func (BackupScopeType) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[1]
}

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

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

// SnapshotBackupScheduleType defines the backup schedule frequency
type SnapshotBackupScheduleType int32

const (
	// Unspecified schedule type
	SnapshotBackupScheduleType_SNAPSHOT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED SnapshotBackupScheduleType = 0
	// Daily backup
	SnapshotBackupScheduleType_SNAPSHOT_BACKUP_SCHEDULE_TYPE_DAILY SnapshotBackupScheduleType = 1
	// Weekly backup
	SnapshotBackupScheduleType_SNAPSHOT_BACKUP_SCHEDULE_TYPE_WEEKLY SnapshotBackupScheduleType = 2
)

// Enum value maps for SnapshotBackupScheduleType.
var (
	SnapshotBackupScheduleType_name = map[int32]string{
		0: "SNAPSHOT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED",
		1: "SNAPSHOT_BACKUP_SCHEDULE_TYPE_DAILY",
		2: "SNAPSHOT_BACKUP_SCHEDULE_TYPE_WEEKLY",
	}
	SnapshotBackupScheduleType_value = map[string]int32{
		"SNAPSHOT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED": 0,
		"SNAPSHOT_BACKUP_SCHEDULE_TYPE_DAILY":       1,
		"SNAPSHOT_BACKUP_SCHEDULE_TYPE_WEEKLY":      2,
	}
)

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

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

func (SnapshotBackupScheduleType) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[2].Descriptor()
}

func (SnapshotBackupScheduleType) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[2]
}

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

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

// BackupSettingState represents the state of backup settings
type BackupSettingState int32

const (
	// Unspecified state
	BackupSettingState_BACKUP_SETTING_STATE_UNSPECIFIED BackupSettingState = 0
	// Creating backup settings
	BackupSettingState_BACKUP_SETTING_STATE_CREATING BackupSettingState = 1
	// Editing region configuration
	BackupSettingState_BACKUP_SETTING_STATE_EDITING_REGION BackupSettingState = 2
	// Editing PITR configuration
	BackupSettingState_BACKUP_SETTING_STATE_EDITING_PITR BackupSettingState = 3
	// Normal state
	BackupSettingState_BACKUP_SETTING_STATE_NORMAL BackupSettingState = 4
	// Deleted
	BackupSettingState_BACKUP_SETTING_STATE_DELETED BackupSettingState = 5
	// Waiting for PITR edit
	BackupSettingState_BACKUP_SETTING_STATE_WAITING_FOR_EDITING_PITR BackupSettingState = 6
)

// Enum value maps for BackupSettingState.
var (
	BackupSettingState_name = map[int32]string{
		0: "BACKUP_SETTING_STATE_UNSPECIFIED",
		1: "BACKUP_SETTING_STATE_CREATING",
		2: "BACKUP_SETTING_STATE_EDITING_REGION",
		3: "BACKUP_SETTING_STATE_EDITING_PITR",
		4: "BACKUP_SETTING_STATE_NORMAL",
		5: "BACKUP_SETTING_STATE_DELETED",
		6: "BACKUP_SETTING_STATE_WAITING_FOR_EDITING_PITR",
	}
	BackupSettingState_value = map[string]int32{
		"BACKUP_SETTING_STATE_UNSPECIFIED":              0,
		"BACKUP_SETTING_STATE_CREATING":                 1,
		"BACKUP_SETTING_STATE_EDITING_REGION":           2,
		"BACKUP_SETTING_STATE_EDITING_PITR":             3,
		"BACKUP_SETTING_STATE_NORMAL":                   4,
		"BACKUP_SETTING_STATE_DELETED":                  5,
		"BACKUP_SETTING_STATE_WAITING_FOR_EDITING_PITR": 6,
	}
)

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

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

func (BackupSettingState) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[3].Descriptor()
}

func (BackupSettingState) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[3]
}

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

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

// BackupSettingAction represents allowed actions on backup settings
type BackupSettingAction int32

const (
	// Unspecified action
	BackupSettingAction_BACKUP_SETTING_ACTION_UNSPECIFIED BackupSettingAction = 0
	// Edit region configuration
	BackupSettingAction_BACKUP_SETTING_ACTION_EDIT_REGION BackupSettingAction = 1
	// Edit PITR configuration
	BackupSettingAction_BACKUP_SETTING_ACTION_EDIT_PITR BackupSettingAction = 2
	// Edit snapshot backup schedule
	BackupSettingAction_BACKUP_SETTING_ACTION_EDIT_SNAPSHOT_BACKUP_SCHEDULE BackupSettingAction = 3
)

// Enum value maps for BackupSettingAction.
var (
	BackupSettingAction_name = map[int32]string{
		0: "BACKUP_SETTING_ACTION_UNSPECIFIED",
		1: "BACKUP_SETTING_ACTION_EDIT_REGION",
		2: "BACKUP_SETTING_ACTION_EDIT_PITR",
		3: "BACKUP_SETTING_ACTION_EDIT_SNAPSHOT_BACKUP_SCHEDULE",
	}
	BackupSettingAction_value = map[string]int32{
		"BACKUP_SETTING_ACTION_UNSPECIFIED":                   0,
		"BACKUP_SETTING_ACTION_EDIT_REGION":                   1,
		"BACKUP_SETTING_ACTION_EDIT_PITR":                     2,
		"BACKUP_SETTING_ACTION_EDIT_SNAPSHOT_BACKUP_SCHEDULE": 3,
	}
)

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

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

func (BackupSettingAction) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[4].Descriptor()
}

func (BackupSettingAction) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[4]
}

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

// Deprecated: Use BackupSettingAction.Descriptor instead.
func (BackupSettingAction) EnumDescriptor() ([]byte, []int) {
	return file_adminapi_v1beta1_backup_proto_rawDescGZIP(), []int{4}
}

// BackupState defines the possible statuses of a backup job
type Backup_State int32

const (
	// Unspecified States
	Backup_STATE_UNSPECIFIED Backup_State = 0
	// Backup is pending
	Backup_PENDING Backup_State = 1
	// Backup is running
	Backup_RUNNING Backup_State = 2
	// Backup failed
	Backup_FAILED Backup_State = 3
	// Backup succeeded
	Backup_SUCCEEDED Backup_State = 4
	// Backup skipped due to cluster paused or schedule timeout
	Backup_SKIPPED Backup_State = 5
	// User delete backups during backup
	Backup_TERMINATED Backup_State = 6
)

// Enum value maps for Backup_State.
var (
	Backup_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "PENDING",
		2: "RUNNING",
		3: "FAILED",
		4: "SUCCEEDED",
		5: "SKIPPED",
		6: "TERMINATED",
	}
	Backup_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"PENDING":           1,
		"RUNNING":           2,
		"FAILED":            3,
		"SUCCEEDED":         4,
		"SKIPPED":           5,
		"TERMINATED":        6,
	}
)

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

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

func (Backup_State) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[5].Descriptor()
}

func (Backup_State) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[5]
}

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

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

// BackupExportState defines the possible states of a backup export job
type BackupExport_State int32

const (
	// Unspecified state
	BackupExport_STATE_UNSPECIFIED BackupExport_State = 0
	// The export job is pending
	BackupExport_PENDING BackupExport_State = 1
	// The export job is running
	BackupExport_RUNNING BackupExport_State = 2
	// The export job failed
	BackupExport_FAILED BackupExport_State = 3
	// The export job succeeded
	BackupExport_SUCCEEDED BackupExport_State = 4
	// The export job was canceled
	BackupExport_CANCELLED BackupExport_State = 5
)

// Enum value maps for BackupExport_State.
var (
	BackupExport_State_name = map[int32]string{
		0: "STATE_UNSPECIFIED",
		1: "PENDING",
		2: "RUNNING",
		3: "FAILED",
		4: "SUCCEEDED",
		5: "CANCELLED",
	}
	BackupExport_State_value = map[string]int32{
		"STATE_UNSPECIFIED": 0,
		"PENDING":           1,
		"RUNNING":           2,
		"FAILED":            3,
		"SUCCEEDED":         4,
		"CANCELLED":         5,
	}
)

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

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

func (BackupExport_State) Descriptor() protoreflect.EnumDescriptor {
	return file_adminapi_v1beta1_backup_proto_enumTypes[6].Descriptor()
}

func (BackupExport_State) Type() protoreflect.EnumType {
	return &file_adminapi_v1beta1_backup_proto_enumTypes[6]
}

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

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

type ListBackupsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the project to list backups for
	ProjectId string `protobuf:"bytes,1,opt,name=project_id,json=projectId,proto3" json:"project_id,omitempty"`
	// The ID of the cluster to list backups for
	ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// The maximum number of items to return.
	// Defaults to 20. Valid values are in the range [1, 100].
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The next_page_token value returned from a previous List request, if any
	PageToken     string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListBackupsRequest) ProtoMessage() {}

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

func (x *ListBackupsRequest) GetProjectId() string {
	if x != nil {
		return x.ProjectId
	}
	return ""
}

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

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

func (x *ListBackupsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

// ListBackupsResponse represents the response for listing backup jobs
type ListBackupsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of backup jobs
	Backups []*Backup `protobuf:"bytes,1,rep,name=backups,proto3" json:"backups,omitempty"`
	// The total number of backup jobs
	TotalSize int32 `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// A token to retrieve the next page of results
	NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListBackupsResponse) ProtoMessage() {}

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

func (x *ListBackupsResponse) GetBackups() []*Backup {
	if x != nil {
		return x.Backups
	}
	return nil
}

func (x *ListBackupsResponse) GetTotalSize() int32 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

func (x *ListBackupsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

// Backup represents a backup job
type Backup struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of backup
	// (-- api-linter: core::0148::use-uid=disabled --)
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// The ID of the cluster
	ClusterId string `protobuf:"bytes,2,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// The name of the backup
	// (-- api-linter: core::0203::resource-name-identifier=disabled)
	Name string `protobuf:"bytes,3,opt,name=name,proto3" json:"name,omitempty"`
	// The description of the backup
	Description string `protobuf:"bytes,4,opt,name=description,proto3" json:"description,omitempty"`
	// The time when the backup was created
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// The size of the backup in bytes
	// (-- api-linter: core::0141::forbidden-types=disabled --)
	SizeBytes uint64 `protobuf:"varint,6,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
	// The States of the backup
	State Backup_State `protobuf:"varint,7,opt,name=state,proto3,enum=adminapi.v1beta1.Backup_State" json:"state,omitempty"`
	// The type of the backup
	Type BackupType `protobuf:"varint,8,opt,name=type,proto3,enum=adminapi.v1beta1.BackupType" json:"type,omitempty"`
	// The expiration time of the back up file
	ExpirationTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=expiration_time,json=expirationTime,proto3,oneof" json:"expiration_time,omitempty"`
	// The physical backup start time, converted from the backup tso
	BackupTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=backup_time,json=backupTime,proto3" json:"backup_time,omitempty"`
	// The tso of the backup
	// (-- api-linter: core::0141::forbidden-types=disabled --)
	BackupTso uint64 `protobuf:"varint,12,opt,name=backup_tso,json=backupTso,proto3" json:"backup_tso,omitempty"`
	// The region info of the backup
	Regions []*RegionInfo `protobuf:"bytes,13,rep,name=regions,proto3" json:"regions,omitempty"`
	// The backup scope type indicates what level of data was backed up
	ScopeType *BackupScopeType `protobuf:"varint,14,opt,name=scope_type,json=scopeType,proto3,enum=adminapi.v1beta1.BackupScopeType,oneof" json:"scope_type,omitempty"`
	// The scope details (databases, tables, or filter rules used)
	ScopeDetails  *BackupScopeDetails `protobuf:"bytes,15,opt,name=scope_details,json=scopeDetails,proto3,oneof" json:"scope_details,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Backup) ProtoMessage() {}

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

func (x *Backup) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

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

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

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

func (x *Backup) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *Backup) GetSizeBytes() uint64 {
	if x != nil {
		return x.SizeBytes
	}
	return 0
}

func (x *Backup) GetState() Backup_State {
	if x != nil {
		return x.State
	}
	return Backup_STATE_UNSPECIFIED
}

func (x *Backup) GetType() BackupType {
	if x != nil {
		return x.Type
	}
	return BackupType_BACKUP_TYPE_UNSPECIFIED
}

func (x *Backup) GetExpirationTime() *timestamppb.Timestamp {
	if x != nil {
		return x.ExpirationTime
	}
	return nil
}

func (x *Backup) GetBackupTime() *timestamppb.Timestamp {
	if x != nil {
		return x.BackupTime
	}
	return nil
}

func (x *Backup) GetBackupTso() uint64 {
	if x != nil {
		return x.BackupTso
	}
	return 0
}

func (x *Backup) GetRegions() []*RegionInfo {
	if x != nil {
		return x.Regions
	}
	return nil
}

func (x *Backup) GetScopeType() BackupScopeType {
	if x != nil && x.ScopeType != nil {
		return *x.ScopeType
	}
	return BackupScopeType_BACKUP_SCOPE_TYPE_UNSPECIFIED
}

func (x *Backup) GetScopeDetails() *BackupScopeDetails {
	if x != nil {
		return x.ScopeDetails
	}
	return nil
}

// (-- api-linter: core::0123::resource-annotation=disabled)
// The information of region
type RegionInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The name of the region
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The display name of the name
	DisplayName   string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RegionInfo) ProtoMessage() {}

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

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

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

// GetBackupExportProfileRequest represents the request for getting a backup export profile
type GetBackupExportProfileRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup to get export profile for
	BackupId      string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupExportProfileRequest) ProtoMessage() {}

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

func (x *GetBackupExportProfileRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

// CreateBackupExportRequest represents the request for creating a backup export job
type CreateBackupExportRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup to create an export for
	BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	// The backup export configuration
	BackupExport  *BackupExport `protobuf:"bytes,2,opt,name=backup_export,json=backupExport,proto3" json:"backup_export,omitempty"`
	DryRun        bool          `protobuf:"varint,3,opt,name=dry_run,json=dryRun,proto3" json:"dry_run,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateBackupExportRequest) ProtoMessage() {}

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

func (x *CreateBackupExportRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

func (x *CreateBackupExportRequest) GetBackupExport() *BackupExport {
	if x != nil {
		return x.BackupExport
	}
	return nil
}

func (x *CreateBackupExportRequest) GetDryRun() bool {
	if x != nil {
		return x.DryRun
	}
	return false
}

// BackupExport represents a backup export job
type BackupExport struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup export job
	// (-- api-linter: core::0148::use-uid=disabled --)
	Id string `protobuf:"bytes,1,opt,name=id,proto3" json:"id,omitempty"`
	// (-- api-linter: core::0203::resource-name-identifier=disabled --)
	// The name of the backup export job
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// The ID of the backup being exported
	BackupId string `protobuf:"bytes,3,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	// The name of the backup
	// (-- api-linter: core::0122::name-suffix=disabled)
	BackupName string `protobuf:"bytes,4,opt,name=backup_name,json=backupName,proto3" json:"backup_name,omitempty"`
	// The time when the backup was created
	BackupTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=backup_time,json=backupTime,proto3" json:"backup_time,omitempty"`
	// The cloud provider
	Provider string `protobuf:"bytes,6,opt,name=provider,proto3" json:"provider,omitempty"`
	// The cloud region
	Region string `protobuf:"bytes,7,opt,name=region,proto3" json:"region,omitempty"`
	// The destination storage configuration
	Destination *StorageDestination `protobuf:"bytes,8,opt,name=destination,proto3" json:"destination,omitempty"`
	// The time when the export job was created
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// The time when the export job finished
	FinishTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=finish_time,json=finishTime,proto3" json:"finish_time,omitempty"`
	// The current state of the export job
	State BackupExport_State `protobuf:"varint,11,opt,name=state,proto3,enum=adminapi.v1beta1.BackupExport_State" json:"state,omitempty"`
	// Additional message information
	Message       string `protobuf:"bytes,12,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupExport) ProtoMessage() {}

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

func (x *BackupExport) GetId() string {
	if x != nil {
		return x.Id
	}
	return ""
}

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

func (x *BackupExport) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

func (x *BackupExport) GetBackupName() string {
	if x != nil {
		return x.BackupName
	}
	return ""
}

func (x *BackupExport) GetBackupTime() *timestamppb.Timestamp {
	if x != nil {
		return x.BackupTime
	}
	return nil
}

func (x *BackupExport) GetProvider() string {
	if x != nil {
		return x.Provider
	}
	return ""
}

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

func (x *BackupExport) GetDestination() *StorageDestination {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *BackupExport) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

func (x *BackupExport) GetFinishTime() *timestamppb.Timestamp {
	if x != nil {
		return x.FinishTime
	}
	return nil
}

func (x *BackupExport) GetState() BackupExport_State {
	if x != nil {
		return x.State
	}
	return BackupExport_STATE_UNSPECIFIED
}

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

// StorageDestination represents cloud storage destination configurations
type StorageDestination struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Only one storage provider can be specified
	//
	// Types that are valid to be assigned to Destination:
	//
	//	*StorageDestination_Gcs
	//	*StorageDestination_S3
	Destination   isStorageDestination_Destination `protobuf_oneof:"destination"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*StorageDestination) ProtoMessage() {}

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

func (x *StorageDestination) GetDestination() isStorageDestination_Destination {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *StorageDestination) GetGcs() *StorageDestination_GCSDestination {
	if x != nil {
		if x, ok := x.Destination.(*StorageDestination_Gcs); ok {
			return x.Gcs
		}
	}
	return nil
}

func (x *StorageDestination) GetS3() *StorageDestination_S3Destination {
	if x != nil {
		if x, ok := x.Destination.(*StorageDestination_S3); ok {
			return x.S3
		}
	}
	return nil
}

type isStorageDestination_Destination interface {
	isStorageDestination_Destination()
}

type StorageDestination_Gcs struct {
	// Google Cloud Storage storage configuration
	Gcs *StorageDestination_GCSDestination `protobuf:"bytes,1,opt,name=gcs,proto3,oneof"`
}

type StorageDestination_S3 struct {
	S3 *StorageDestination_S3Destination `protobuf:"bytes,2,opt,name=s3,proto3,oneof"`
}

func (*StorageDestination_Gcs) isStorageDestination_Destination() {}

func (*StorageDestination_S3) isStorageDestination_Destination() {}

// BackupExportProfile contains the credentials and configurations for different cloud storage providers
type BackupExportProfile struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Google Cloud Storage specific configuration
	Gcs           *BackupExportProfile_GCSProfile `protobuf:"bytes,1,opt,name=gcs,proto3,oneof" json:"gcs,omitempty"`
	S3            *BackupExportProfile_S3Profile  `protobuf:"bytes,2,opt,name=s3,proto3,oneof" json:"s3,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupExportProfile) ProtoMessage() {}

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

func (x *BackupExportProfile) GetGcs() *BackupExportProfile_GCSProfile {
	if x != nil {
		return x.Gcs
	}
	return nil
}

func (x *BackupExportProfile) GetS3() *BackupExportProfile_S3Profile {
	if x != nil {
		return x.S3
	}
	return nil
}

// ListBackupExportsRequest represents the request for listing backup export jobs
type ListBackupExportsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup to list export jobs for
	BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	// The maximum number of items to return
	PageSize int32 `protobuf:"varint,100,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The next_page_token value returned from a previous List request, if any
	PageToken     string `protobuf:"bytes,101,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListBackupExportsRequest) ProtoMessage() {}

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

func (x *ListBackupExportsRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

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

func (x *ListBackupExportsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

// ListBackupExportsResponse represents the response for listing backup export jobs
type ListBackupExportsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of backup export jobs
	BackupExports []*BackupExport `protobuf:"bytes,1,rep,name=backup_exports,json=backupExports,proto3" json:"backup_exports,omitempty"`
	// The total number of backup export jobs
	TotalSize int32 `protobuf:"varint,2,opt,name=total_size,json=totalSize,proto3" json:"total_size,omitempty"`
	// A token to retrieve the next page of results
	NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ListBackupExportsResponse) ProtoMessage() {}

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

func (x *ListBackupExportsResponse) GetBackupExports() []*BackupExport {
	if x != nil {
		return x.BackupExports
	}
	return nil
}

func (x *ListBackupExportsResponse) GetTotalSize() int32 {
	if x != nil {
		return x.TotalSize
	}
	return 0
}

func (x *ListBackupExportsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

// GetBackupExportRequest represents the request for retrieving a specific backup export job
type GetBackupExportRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup
	BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	// The ID of the export job
	ExportId      string `protobuf:"bytes,2,opt,name=export_id,json=exportId,proto3" json:"export_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupExportRequest) ProtoMessage() {}

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

func (x *GetBackupExportRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

func (x *GetBackupExportRequest) GetExportId() string {
	if x != nil {
		return x.ExportId
	}
	return ""
}

// CancelBackupExportRequest represents the request for canceling a backup export job
type CancelBackupExportRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup
	BackupId string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	// The ID of the export job to cancel
	ExportId      string `protobuf:"bytes,2,opt,name=export_id,json=exportId,proto3" json:"export_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CancelBackupExportRequest) ProtoMessage() {}

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

func (x *CancelBackupExportRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

func (x *CancelBackupExportRequest) GetExportId() string {
	if x != nil {
		return x.ExportId
	}
	return ""
}

// CreateBackupRequest represents the request for creating a new backup
type CreateBackupRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the cluster to create backup for
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// The name of the backup
	Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
	// The description of the backup
	Description *string `protobuf:"bytes,3,opt,name=description,proto3,oneof" json:"description,omitempty"`
	// The backup scope defines what data to back up.
	// If not specified, the request defaults to a full cluster backup.
	BackupScope   *BackupScope `protobuf:"bytes,4,opt,name=backup_scope,json=backupScope,proto3" json:"backup_scope,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateBackupRequest) ProtoMessage() {}

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

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

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

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

func (x *CreateBackupRequest) GetBackupScope() *BackupScope {
	if x != nil {
		return x.BackupScope
	}
	return nil
}

// BackupScope represents the target scope of a backup request.
// The `type` field declares which scope payload is intended.
// The matching payload field should be provided together with the selected type.
type BackupScope struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	Type  BackupScopeType        `protobuf:"varint,1,opt,name=type,proto3,enum=adminapi.v1beta1.BackupScopeType" json:"type,omitempty"`
	// Types that are valid to be assigned to BackupScope:
	//
	//	*BackupScope_Full
	//	*BackupScope_Database
	//	*BackupScope_Table
	//	*BackupScope_Filter
	BackupScope   isBackupScope_BackupScope `protobuf_oneof:"backup_scope"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupScope) ProtoMessage() {}

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

func (x *BackupScope) GetType() BackupScopeType {
	if x != nil {
		return x.Type
	}
	return BackupScopeType_BACKUP_SCOPE_TYPE_UNSPECIFIED
}

func (x *BackupScope) GetBackupScope() isBackupScope_BackupScope {
	if x != nil {
		return x.BackupScope
	}
	return nil
}

func (x *BackupScope) GetFull() *FullBackupScope {
	if x != nil {
		if x, ok := x.BackupScope.(*BackupScope_Full); ok {
			return x.Full
		}
	}
	return nil
}

func (x *BackupScope) GetDatabase() *DatabaseBackupScope {
	if x != nil {
		if x, ok := x.BackupScope.(*BackupScope_Database); ok {
			return x.Database
		}
	}
	return nil
}

func (x *BackupScope) GetTable() *TableBackupScope {
	if x != nil {
		if x, ok := x.BackupScope.(*BackupScope_Table); ok {
			return x.Table
		}
	}
	return nil
}

func (x *BackupScope) GetFilter() *FilterBackupScope {
	if x != nil {
		if x, ok := x.BackupScope.(*BackupScope_Filter); ok {
			return x.Filter
		}
	}
	return nil
}

type isBackupScope_BackupScope interface {
	isBackupScope_BackupScope()
}

type BackupScope_Full struct {
	// Full cluster backup (default)
	Full *FullBackupScope `protobuf:"bytes,4,opt,name=full,proto3,oneof"`
}

type BackupScope_Database struct {
	// Database-level backup
	Database *DatabaseBackupScope `protobuf:"bytes,5,opt,name=database,proto3,oneof"`
}

type BackupScope_Table struct {
	// Table-level backup
	Table *TableBackupScope `protobuf:"bytes,6,opt,name=table,proto3,oneof"`
}

type BackupScope_Filter struct {
	// Custom filter-based backup
	Filter *FilterBackupScope `protobuf:"bytes,7,opt,name=filter,proto3,oneof"`
}

func (*BackupScope_Full) isBackupScope_BackupScope() {}

func (*BackupScope_Database) isBackupScope_BackupScope() {}

func (*BackupScope_Table) isBackupScope_BackupScope() {}

func (*BackupScope_Filter) isBackupScope_BackupScope() {}

// FullBackupScope represents a full cluster backup
type FullBackupScope struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*FullBackupScope) ProtoMessage() {}

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

// DatabaseBackupScope represents a database-level backup
type DatabaseBackupScope struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// List of database names to backup (at least one required)
	Databases     []string `protobuf:"bytes,1,rep,name=databases,proto3" json:"databases,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DatabaseBackupScope) ProtoMessage() {}

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

func (x *DatabaseBackupScope) GetDatabases() []string {
	if x != nil {
		return x.Databases
	}
	return nil
}

// TableBackupScope represents a table-level backup
type TableBackupScope struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// List of table names to backup in format "database.table" (at least one required)
	// Example: ["mydb.users", "mydb.orders"]
	// Supports any valid TiDB table identifier including special characters with backticks
	Tables        []string `protobuf:"bytes,1,rep,name=tables,proto3" json:"tables,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*TableBackupScope) ProtoMessage() {}

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

func (x *TableBackupScope) GetTables() []string {
	if x != nil {
		return x.Tables
	}
	return nil
}

// FilterBackupScope represents a custom filter-based backup
type FilterBackupScope struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Include rules using wildcard patterns
	// Supported patterns:
	// - "db.*" - all tables in database 'db'
	// - "db.prefix*" - all tables starting with 'prefix' in database 'db'
	// - "db.table" - specific table
	IncludeRules []string `protobuf:"bytes,1,rep,name=include_rules,json=includeRules,proto3" json:"include_rules,omitempty"`
	// Exclude rules using wildcard patterns (optional)
	// These rules take precedence over include_rules
	// Example: exclude temporary tables while backing up entire database
	ExcludeRules  []string `protobuf:"bytes,2,rep,name=exclude_rules,json=excludeRules,proto3" json:"exclude_rules,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*FilterBackupScope) ProtoMessage() {}

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

func (x *FilterBackupScope) GetIncludeRules() []string {
	if x != nil {
		return x.IncludeRules
	}
	return nil
}

func (x *FilterBackupScope) GetExcludeRules() []string {
	if x != nil {
		return x.ExcludeRules
	}
	return nil
}

// BackupScopeDetails provides detailed information about what was backed up
type BackupScopeDetails struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of databases (populated when scope_type is DATABASE)
	Databases []string `protobuf:"bytes,1,rep,name=databases,proto3" json:"databases,omitempty"`
	// The list of tables in "database.table" format (populated when scope_type is TABLE)
	Tables []string `protobuf:"bytes,2,rep,name=tables,proto3" json:"tables,omitempty"`
	// The include rules (populated when scope_type is FILTER)
	IncludeRules []string `protobuf:"bytes,3,rep,name=include_rules,json=includeRules,proto3" json:"include_rules,omitempty"`
	// The exclude rules (populated when scope_type is FILTER)
	ExcludeRules  []string `protobuf:"bytes,4,rep,name=exclude_rules,json=excludeRules,proto3" json:"exclude_rules,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupScopeDetails) ProtoMessage() {}

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

func (x *BackupScopeDetails) GetDatabases() []string {
	if x != nil {
		return x.Databases
	}
	return nil
}

func (x *BackupScopeDetails) GetTables() []string {
	if x != nil {
		return x.Tables
	}
	return nil
}

func (x *BackupScopeDetails) GetIncludeRules() []string {
	if x != nil {
		return x.IncludeRules
	}
	return nil
}

func (x *BackupScopeDetails) GetExcludeRules() []string {
	if x != nil {
		return x.ExcludeRules
	}
	return nil
}

// GetBackupRequest represents the request for retrieving a specific backup
type GetBackupRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup to retrieve
	BackupId      string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupRequest) ProtoMessage() {}

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

func (x *GetBackupRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

// DeleteBackupRequest represents the request for deleting a backup
type DeleteBackupRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the backup to delete
	BackupId      string `protobuf:"bytes,1,opt,name=backup_id,json=backupId,proto3" json:"backup_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteBackupRequest) ProtoMessage() {}

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

func (x *DeleteBackupRequest) GetBackupId() string {
	if x != nil {
		return x.BackupId
	}
	return ""
}

// GetBackupOptionsRequest represents the request for getting backup options
type GetBackupOptionsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the cluster to get backup options for
	ClusterId     string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupOptionsRequest) ProtoMessage() {}

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

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

// BackupOptions represents available backup configuration options
type BackupOptions struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The cluster ID
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Available regions for dual-region backup
	DualRegionOptions *DualRegionOptions `protobuf:"bytes,2,opt,name=dual_region_options,json=dualRegionOptions,proto3,oneof" json:"dual_region_options,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*BackupOptions) ProtoMessage() {}

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

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

func (x *BackupOptions) GetDualRegionOptions() *DualRegionOptions {
	if x != nil {
		return x.DualRegionOptions
	}
	return nil
}

// DualRegionOptions represents dual-region backup configuration options
type DualRegionOptions struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Available region options
	RegionOptions []*RegionOption `protobuf:"bytes,1,rep,name=region_options,json=regionOptions,proto3" json:"region_options,omitempty"`
	// Current cluster region
	ClusterRegion *RegionInfo `protobuf:"bytes,2,opt,name=cluster_region,json=clusterRegion,proto3,oneof" json:"cluster_region,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DualRegionOptions) ProtoMessage() {}

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

func (x *DualRegionOptions) GetRegionOptions() []*RegionOption {
	if x != nil {
		return x.RegionOptions
	}
	return nil
}

func (x *DualRegionOptions) GetClusterRegion() *RegionInfo {
	if x != nil {
		return x.ClusterRegion
	}
	return nil
}

// RegionOption represents a region option for backup
type RegionOption struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Region information
	Region        *RegionInfo `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RegionOption) ProtoMessage() {}

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

func (x *RegionOption) GetRegion() *RegionInfo {
	if x != nil {
		return x.Region
	}
	return nil
}

// ModifyBackupSettingsRequest represents the request for modifying backup settings
type ModifyBackupSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the cluster to modify backup settings for
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Backup regions configuration.
	// Omit this field to keep the current backup region setting unchanged.
	//
	// To keep or switch to single-region backup, provide exactly 1 region:
	// Example: ["us-west-2"].
	//
	// To enable dual-region backup, provide exactly 2 regions:
	// Example: ["us-west-2", "us-east-1"].
	//
	// Constraints:
	// - The first region is the current primary/master region.
	// - When dual-region backup is enabled, the second region must be different from the first one.
	// - The allowed secondary regions are returned by GetBackupOptions.
	// - Azure clusters support only single-region backup.
	Regions []string `protobuf:"bytes,2,rep,name=regions,proto3" json:"regions,omitempty"`
	// PITR (Point-in-Time Recovery) settings
	PitrSetting *PITRSetting `protobuf:"bytes,3,opt,name=pitr_setting,json=pitrSetting,proto3,oneof" json:"pitr_setting,omitempty"`
	// Snapshot backup schedule settings
	SnapshotBackupSchedule *SnapshotBackupSchedule `protobuf:"bytes,4,opt,name=snapshot_backup_schedule,json=snapshotBackupSchedule,proto3,oneof" json:"snapshot_backup_schedule,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

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

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

func (*ModifyBackupSettingsRequest) ProtoMessage() {}

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

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

func (x *ModifyBackupSettingsRequest) GetRegions() []string {
	if x != nil {
		return x.Regions
	}
	return nil
}

func (x *ModifyBackupSettingsRequest) GetPitrSetting() *PITRSetting {
	if x != nil {
		return x.PitrSetting
	}
	return nil
}

func (x *ModifyBackupSettingsRequest) GetSnapshotBackupSchedule() *SnapshotBackupSchedule {
	if x != nil {
		return x.SnapshotBackupSchedule
	}
	return nil
}

// GetBackupSettingsRequest represents the request for getting backup settings
type GetBackupSettingsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the cluster to get backup settings for
	ClusterId     string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupSettingsRequest) ProtoMessage() {}

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

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

// BackupSettings represents the backup settings for a cluster
type BackupSettings struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The cluster ID
	ClusterId string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	// Configured backup regions
	Regions []*RegionInfo `protobuf:"bytes,2,rep,name=regions,proto3" json:"regions,omitempty"`
	// Snapshot backup schedule settings
	SnapshotBackupSchedule *SnapshotBackupSchedule `protobuf:"bytes,3,opt,name=snapshot_backup_schedule,json=snapshotBackupSchedule,proto3,oneof" json:"snapshot_backup_schedule,omitempty"`
	// PITR settings
	PitrSetting *PITRSetting `protobuf:"bytes,4,opt,name=pitr_setting,json=pitrSetting,proto3,oneof" json:"pitr_setting,omitempty"`
	// Current state of the backup setting
	State *BackupSettingState `protobuf:"varint,5,opt,name=state,proto3,enum=adminapi.v1beta1.BackupSettingState,oneof" json:"state,omitempty"`
	// Allowed actions on the backup setting
	AllowedActions []BackupSettingAction `protobuf:"varint,6,rep,packed,name=allowed_actions,json=allowedActions,proto3,enum=adminapi.v1beta1.BackupSettingAction" json:"allowed_actions,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*BackupSettings) ProtoMessage() {}

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

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

func (x *BackupSettings) GetRegions() []*RegionInfo {
	if x != nil {
		return x.Regions
	}
	return nil
}

func (x *BackupSettings) GetSnapshotBackupSchedule() *SnapshotBackupSchedule {
	if x != nil {
		return x.SnapshotBackupSchedule
	}
	return nil
}

func (x *BackupSettings) GetPitrSetting() *PITRSetting {
	if x != nil {
		return x.PitrSetting
	}
	return nil
}

func (x *BackupSettings) GetState() BackupSettingState {
	if x != nil && x.State != nil {
		return *x.State
	}
	return BackupSettingState_BACKUP_SETTING_STATE_UNSPECIFIED
}

func (x *BackupSettings) GetAllowedActions() []BackupSettingAction {
	if x != nil {
		return x.AllowedActions
	}
	return nil
}

// GetBackupPITRTimeRangesRequest represents the request for getting PITR time ranges
type GetBackupPITRTimeRangesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The ID of the cluster to get PITR time ranges for
	ClusterId     string `protobuf:"bytes,1,opt,name=cluster_id,json=clusterId,proto3" json:"cluster_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupPITRTimeRangesRequest) ProtoMessage() {}

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

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

// GetBackupPITRTimeRangesResponse represents PITR time ranges for a cluster
type GetBackupPITRTimeRangesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// PITR time ranges grouped by region
	Items []*PITRRegionTimeRange `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
	// Optional message when no PITR time range is currently available
	Message       string `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetBackupPITRTimeRangesResponse) ProtoMessage() {}

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

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

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

// PITRSetting represents Point-in-Time Recovery settings
type PITRSetting struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether PITR is enabled
	Enabled       *bool `protobuf:"varint,1,opt,name=enabled,proto3,oneof" json:"enabled,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PITRSetting) ProtoMessage() {}

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

func (x *PITRSetting) GetEnabled() bool {
	if x != nil && x.Enabled != nil {
		return *x.Enabled
	}
	return false
}

// PITRTimeRange represents the time range for PITR
type PITRTimeRange struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Start time of PITR coverage
	StartTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// End time of PITR coverage (checkpoint)
	EndTime       *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PITRTimeRange) ProtoMessage() {}

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

func (x *PITRTimeRange) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *PITRTimeRange) GetEndTime() *timestamppb.Timestamp {
	if x != nil {
		return x.EndTime
	}
	return nil
}

// PITRRegionTimeRange represents PITR time ranges in a specific region
type PITRRegionTimeRange struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Region information
	Region *RegionInfo `protobuf:"bytes,1,opt,name=region,proto3" json:"region,omitempty"`
	// PITR time ranges available in this region
	TimeRanges    []*PITRTimeRange `protobuf:"bytes,2,rep,name=time_ranges,json=timeRanges,proto3" json:"time_ranges,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PITRRegionTimeRange) ProtoMessage() {}

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

func (x *PITRRegionTimeRange) GetRegion() *RegionInfo {
	if x != nil {
		return x.Region
	}
	return nil
}

func (x *PITRRegionTimeRange) GetTimeRanges() []*PITRTimeRange {
	if x != nil {
		return x.TimeRanges
	}
	return nil
}

// SnapshotBackupSchedule represents snapshot backup schedule configuration
type SnapshotBackupSchedule struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether snapshot backup is enabled
	Enabled *bool `protobuf:"varint,1,opt,name=enabled,proto3,oneof" json:"enabled,omitempty"`
	// Backup schedule type
	ScheduleType SnapshotBackupScheduleType `protobuf:"varint,2,opt,name=schedule_type,json=scheduleType,proto3,enum=adminapi.v1beta1.SnapshotBackupScheduleType" json:"schedule_type,omitempty"`
	// Schedule configuration (one of daily_schedule or weekly_schedule based on schedule_type)
	//
	// Types that are valid to be assigned to Schedule:
	//
	//	*SnapshotBackupSchedule_DailySchedule
	//	*SnapshotBackupSchedule_WeeklySchedule
	Schedule isSnapshotBackupSchedule_Schedule `protobuf_oneof:"schedule"`
	// Retention period in days
	RetentionDays *int32 `protobuf:"varint,5,opt,name=retention_days,json=retentionDays,proto3,oneof" json:"retention_days,omitempty"`
	// Next scheduled backup time (output only)
	NextBackupTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=next_backup_time,json=nextBackupTime,proto3,oneof" json:"next_backup_time,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*SnapshotBackupSchedule) ProtoMessage() {}

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

func (x *SnapshotBackupSchedule) GetEnabled() bool {
	if x != nil && x.Enabled != nil {
		return *x.Enabled
	}
	return false
}

func (x *SnapshotBackupSchedule) GetScheduleType() SnapshotBackupScheduleType {
	if x != nil {
		return x.ScheduleType
	}
	return SnapshotBackupScheduleType_SNAPSHOT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED
}

func (x *SnapshotBackupSchedule) GetSchedule() isSnapshotBackupSchedule_Schedule {
	if x != nil {
		return x.Schedule
	}
	return nil
}

func (x *SnapshotBackupSchedule) GetDailySchedule() *DailySchedule {
	if x != nil {
		if x, ok := x.Schedule.(*SnapshotBackupSchedule_DailySchedule); ok {
			return x.DailySchedule
		}
	}
	return nil
}

func (x *SnapshotBackupSchedule) GetWeeklySchedule() *WeeklySchedule {
	if x != nil {
		if x, ok := x.Schedule.(*SnapshotBackupSchedule_WeeklySchedule); ok {
			return x.WeeklySchedule
		}
	}
	return nil
}

func (x *SnapshotBackupSchedule) GetRetentionDays() int32 {
	if x != nil && x.RetentionDays != nil {
		return *x.RetentionDays
	}
	return 0
}

func (x *SnapshotBackupSchedule) GetNextBackupTime() *timestamppb.Timestamp {
	if x != nil {
		return x.NextBackupTime
	}
	return nil
}

type isSnapshotBackupSchedule_Schedule interface {
	isSnapshotBackupSchedule_Schedule()
}

type SnapshotBackupSchedule_DailySchedule struct {
	// Daily backup schedule
	DailySchedule *DailySchedule `protobuf:"bytes,3,opt,name=daily_schedule,json=dailySchedule,proto3,oneof"`
}

type SnapshotBackupSchedule_WeeklySchedule struct {
	// Weekly backup schedule
	WeeklySchedule *WeeklySchedule `protobuf:"bytes,4,opt,name=weekly_schedule,json=weeklySchedule,proto3,oneof"`
}

func (*SnapshotBackupSchedule_DailySchedule) isSnapshotBackupSchedule_Schedule() {}

func (*SnapshotBackupSchedule_WeeklySchedule) isSnapshotBackupSchedule_Schedule() {}

// DailySchedule represents daily backup schedule configuration
type DailySchedule struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Daily backup time in HH:MM format (UTC)
	ScheduleTime  string `protobuf:"bytes,1,opt,name=schedule_time,json=scheduleTime,proto3" json:"schedule_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DailySchedule) ProtoMessage() {}

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

func (x *DailySchedule) GetScheduleTime() string {
	if x != nil {
		return x.ScheduleTime
	}
	return ""
}

// WeeklySchedule represents weekly backup schedule configuration
type WeeklySchedule struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Weekly backup time in HH:MM format (UTC)
	ScheduleTime string `protobuf:"bytes,1,opt,name=schedule_time,json=scheduleTime,proto3" json:"schedule_time,omitempty"`
	// Days of week for weekly backups (e.g., MONDAY, WEDNESDAY, FRIDAY)
	WeekDays      []dataflow.WeekDay `protobuf:"varint,2,rep,packed,name=week_days,json=weekDays,proto3,enum=dataflow.WeekDay" json:"week_days,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WeeklySchedule) ProtoMessage() {}

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

func (x *WeeklySchedule) GetScheduleTime() string {
	if x != nil {
		return x.ScheduleTime
	}
	return ""
}

func (x *WeeklySchedule) GetWeekDays() []dataflow.WeekDay {
	if x != nil {
		return x.WeekDays
	}
	return nil
}

// GCSDestination contains Google Cloud Storage specific configuration
type StorageDestination_GCSDestination struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The target URI for Google Cloud Storage
	TargetUri     string `protobuf:"bytes,1,opt,name=target_uri,json=targetUri,proto3" json:"target_uri,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*StorageDestination_GCSDestination) ProtoMessage() {}

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

func (x *StorageDestination_GCSDestination) GetTargetUri() string {
	if x != nil {
		return x.TargetUri
	}
	return ""
}

// S3Destination contains AWS S3 specific configuration
type StorageDestination_S3Destination struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The target URI for AWS S3
	TargetUri string `protobuf:"bytes,1,opt,name=target_uri,json=targetUri,proto3" json:"target_uri,omitempty"`
	// The target region of the S3 bucket, for example: us-east-1
	Region        string `protobuf:"bytes,2,opt,name=region,proto3" json:"region,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*StorageDestination_S3Destination) ProtoMessage() {}

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

func (x *StorageDestination_S3Destination) GetTargetUri() string {
	if x != nil {
		return x.TargetUri
	}
	return ""
}

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

// GCSProfile contains Google Cloud Storage specific configuration
type BackupExportProfile_GCSProfile struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The service account to be used for Google Cloud Storage access
	ServiceAccount string `protobuf:"bytes,1,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*BackupExportProfile_GCSProfile) ProtoMessage() {}

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

func (x *BackupExportProfile_GCSProfile) GetServiceAccount() string {
	if x != nil {
		return x.ServiceAccount
	}
	return ""
}

// S3Profile contains AWS S3 specific configuration
type BackupExportProfile_S3Profile struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The role ARN to be used for S3 access
	RoleArn       string `protobuf:"bytes,1,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupExportProfile_S3Profile) ProtoMessage() {}

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

func (x *BackupExportProfile_S3Profile) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

// AzBlobProfile contains Azure Blob Storage specific configuration
type BackupExportProfile_AzBlobProfile struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The role ARN to be used for Azure Blob access
	RoleArn       string `protobuf:"bytes,1,opt,name=role_arn,json=roleArn,proto3" json:"role_arn,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*BackupExportProfile_AzBlobProfile) ProtoMessage() {}

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

func (x *BackupExportProfile_AzBlobProfile) GetRoleArn() string {
	if x != nil {
		return x.RoleArn
	}
	return ""
}

var File_adminapi_v1beta1_backup_proto protoreflect.FileDescriptor

const file_adminapi_v1beta1_backup_proto_rawDesc = "" +
	"\n" +
	"\x1dadminapi/v1beta1/backup.proto\x12\x10adminapi.v1beta1\x1a\x1bbuf/validate/validate.proto\x1a\x13common/common.proto\x1a\x16dataflow/service.proto\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a.protoc-gen-openapiv2/options/annotations.proto\"\xc6\x02\n" +
	"\x12ListBackupsRequest\x12(\n" +
	"\n" +
	"project_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tprojectId\x12\"\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\tB\x03\xe0A\x01R\tclusterId\x12\xa9\x01\n" +
	"\tpage_size\x18d \x01(\x05B\x8b\x01\x92A|2`The maximum number of backup jobs to return. If not specified, 20 items are returned by default.:\x0220J\x0220Y\x00\x00\x00\x00\x00\x00Y@i\x00\x00\x00\x00\x00\x00\xf0?\xe0A\x01\xbaH\x06\x1a\x04\x18d(\x01R\bpageSize\x12\"\n" +
	"\n" +
	"page_token\x18e \x01(\tB\x03\xe0A\x01R\tpageToken:\x12\x92A\x0f\n" +
	"\r\xd2\x01\n" +
	"project_id\"\x90\x01\n" +
	"\x13ListBackupsResponse\x122\n" +
	"\abackups\x18\x01 \x03(\v2\x18.adminapi.v1beta1.BackupR\abackups\x12\x1d\n" +
	"\n" +
	"total_size\x18\x02 \x01(\x05R\ttotalSize\x12&\n" +
	"\x0fnext_page_token\x18\x03 \x01(\tR\rnextPageToken\"\xe0\a\n" +
	"\x06Backup\x12\x13\n" +
	"\x02id\x18\x01 \x01(\tB\x03\xe0A\x03R\x02id\x12(\n" +
	"\n" +
	"cluster_id\x18\x02 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId\x12\x17\n" +
	"\x04name\x18\x03 \x01(\tB\x03\xe0A\x01R\x04name\x12%\n" +
	"\vdescription\x18\x04 \x01(\tB\x03\xe0A\x01R\vdescription\x12@\n" +
	"\vcreate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12\"\n" +
	"\n" +
	"size_bytes\x18\x06 \x01(\x04B\x03\xe0A\x03R\tsizeBytes\x129\n" +
	"\x05state\x18\a \x01(\x0e2\x1e.adminapi.v1beta1.Backup.StateB\x03\xe0A\x03R\x05state\x125\n" +
	"\x04type\x18\b \x01(\x0e2\x1c.adminapi.v1beta1.BackupTypeB\x03\xe0A\x03R\x04type\x12M\n" +
	"\x0fexpiration_time\x18\t \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03H\x00R\x0eexpirationTime\x88\x01\x01\x12@\n" +
	"\vbackup_time\x18\n" +
	" \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"backupTime\x12\"\n" +
	"\n" +
	"backup_tso\x18\f \x01(\x04B\x03\xe0A\x03R\tbackupTso\x12;\n" +
	"\aregions\x18\r \x03(\v2\x1c.adminapi.v1beta1.RegionInfoB\x03\xe0A\x03R\aregions\x12J\n" +
	"\n" +
	"scope_type\x18\x0e \x01(\x0e2!.adminapi.v1beta1.BackupScopeTypeB\x03\xe0A\x03H\x01R\tscopeType\x88\x01\x01\x12S\n" +
	"\rscope_details\x18\x0f \x01(\v2$.adminapi.v1beta1.BackupScopeDetailsB\x03\xe0A\x03H\x02R\fscopeDetails\x88\x01\x01\"p\n" +
	"\x05State\x12\x15\n" +
	"\x11STATE_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aPENDING\x10\x01\x12\v\n" +
	"\aRUNNING\x10\x02\x12\n" +
	"\n" +
	"\x06FAILED\x10\x03\x12\r\n" +
	"\tSUCCEEDED\x10\x04\x12\v\n" +
	"\aSKIPPED\x10\x05\x12\x0e\n" +
	"\n" +
	"TERMINATED\x10\x06:E\xeaAB\n" +
	"\x1ddataflow.tidbcloud.com/Backup\x12\x10backups/{backup}*\abackups2\x06backupB\x12\n" +
	"\x10_expiration_timeB\r\n" +
	"\v_scope_typeB\x10\n" +
	"\x0e_scope_details\"C\n" +
	"\n" +
	"RegionInfo\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12!\n" +
	"\fdisplay_name\x18\x02 \x01(\tR\vdisplayName\"Z\n" +
	"\x1dGetBackupExportProfileRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId:\x11\x92A\x0e\n" +
	"\f\xd2\x01\tbackup_id\"\xd4\x01\n" +
	"\x19CreateBackupExportRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId\x12N\n" +
	"\rbackup_export\x18\x02 \x01(\v2\x1e.adminapi.v1beta1.BackupExportB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\fbackupExport\x12\x1c\n" +
	"\adry_run\x18\x03 \x01(\bB\x03\xe0A\x01R\x06dryRun:!\x92A\x1e\n" +
	"\x1c\xd2\x01\tbackup_id\xd2\x01\rbackup_export\"\x89\x06\n" +
	"\fBackupExport\x12\x13\n" +
	"\x02id\x18\x01 \x01(\tB\x03\xe0A\x03R\x02id\x12\x17\n" +
	"\x04name\x18\x02 \x01(\tB\x03\xe0A\x03R\x04name\x12 \n" +
	"\tbackup_id\x18\x03 \x01(\tB\x03\xe0A\x03R\bbackupId\x12$\n" +
	"\vbackup_name\x18\x04 \x01(\tB\x03\xe0A\x03R\n" +
	"backupName\x12@\n" +
	"\vbackup_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"backupTime\x12\x1f\n" +
	"\bprovider\x18\x06 \x01(\tB\x03\xe0A\x03R\bprovider\x12\x1b\n" +
	"\x06region\x18\a \x01(\tB\x03\xe0A\x03R\x06region\x12Q\n" +
	"\vdestination\x18\b \x01(\v2$.adminapi.v1beta1.StorageDestinationB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\vdestination\x12@\n" +
	"\vcreate_time\x18\t \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vfinish_time\x18\n" +
	" \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"finishTime\x12?\n" +
	"\x05state\x18\v \x01(\x0e2$.adminapi.v1beta1.BackupExport.StateB\x03\xe0A\x03R\x05state\x12\x1d\n" +
	"\amessage\x18\f \x01(\tB\x03\xe0A\x03R\amessage\"b\n" +
	"\x05State\x12\x15\n" +
	"\x11STATE_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aPENDING\x10\x01\x12\v\n" +
	"\aRUNNING\x10\x02\x12\n" +
	"\n" +
	"\x06FAILED\x10\x03\x12\r\n" +
	"\tSUCCEEDED\x10\x04\x12\r\n" +
	"\tCANCELLED\x10\x05:h\xeaAe\n" +
	"#dataflow.tidbcloud.com/BackupExport\x12!backups/{backup}/exports/{export}*\rbackupExports2\fbackupExport\"\xcc\x02\n" +
	"\x12StorageDestination\x12G\n" +
	"\x03gcs\x18\x01 \x01(\v23.adminapi.v1beta1.StorageDestination.GCSDestinationH\x00R\x03gcs\x12D\n" +
	"\x02s3\x18\x02 \x01(\v22.adminapi.v1beta1.StorageDestination.S3DestinationH\x00R\x02s3\x1a:\n" +
	"\x0eGCSDestination\x12(\n" +
	"\n" +
	"target_uri\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\ttargetUri\x1a\\\n" +
	"\rS3Destination\x12(\n" +
	"\n" +
	"target_uri\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\ttargetUri\x12!\n" +
	"\x06region\x18\x02 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\x06regionB\r\n" +
	"\vdestination\"\xcd\x02\n" +
	"\x13BackupExportProfile\x12G\n" +
	"\x03gcs\x18\x01 \x01(\v20.adminapi.v1beta1.BackupExportProfile.GCSProfileH\x00R\x03gcs\x88\x01\x01\x12D\n" +
	"\x02s3\x18\x02 \x01(\v2/.adminapi.v1beta1.BackupExportProfile.S3ProfileH\x01R\x02s3\x88\x01\x01\x1a:\n" +
	"\n" +
	"GCSProfile\x12,\n" +
	"\x0fservice_account\x18\x01 \x01(\tB\x03\xe0A\x01R\x0eserviceAccount\x1a+\n" +
	"\tS3Profile\x12\x1e\n" +
	"\brole_arn\x18\x01 \x01(\tB\x03\xe0A\x01R\aroleArn\x1a/\n" +
	"\rAzBlobProfile\x12\x1e\n" +
	"\brole_arn\x18\x01 \x01(\tB\x03\xe0A\x01R\aroleArnB\x06\n" +
	"\x04_gcsB\x05\n" +
	"\x03_s3\"\x88\x01\n" +
	"\x18ListBackupExportsRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId\x12 \n" +
	"\tpage_size\x18d \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
	"\n" +
	"page_token\x18e \x01(\tB\x03\xe0A\x01R\tpageToken\"\xa9\x01\n" +
	"\x19ListBackupExportsResponse\x12E\n" +
	"\x0ebackup_exports\x18\x01 \x03(\v2\x1e.adminapi.v1beta1.BackupExportR\rbackupExports\x12\x1d\n" +
	"\n" +
	"total_size\x18\x02 \x01(\x05R\ttotalSize\x12&\n" +
	"\x0fnext_page_token\x18\x03 \x01(\tR\rnextPageToken\"h\n" +
	"\x16GetBackupExportRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId\x12&\n" +
	"\texport_id\x18\x02 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bexportId\"k\n" +
	"\x19CancelBackupExportRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId\x12&\n" +
	"\texport_id\x18\x02 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bexportId\"\xc4\x02\n" +
	"\x13CreateBackupRequest\x12(\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId\x12e\n" +
	"\x04name\x18\x02 \x01(\tBQ\xe0A\x02\xbaHK\xc8\x01\x01rF\x18@2B^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\\\\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$R\x04name\x12*\n" +
	"\vdescription\x18\x03 \x01(\tB\x03\xe0A\x01H\x00R\vdescription\x88\x01\x01\x12E\n" +
	"\fbackup_scope\x18\x04 \x01(\v2\x1d.adminapi.v1beta1.BackupScopeB\x03\xe0A\x01R\vbackupScope:\x19\x92A\x16\n" +
	"\x14\xd2\x01\n" +
	"cluster_id\xd2\x01\x04nameB\x0e\n" +
	"\f_description\"\xa9\a\n" +
	"\vBackupScope\x12\x90\x05\n" +
	"\x04type\x18\x01 \x01(\x0e2!.adminapi.v1beta1.BackupScopeTypeB\xd8\x04\x92A\xd1\x042\xb4\x04The scope type of the backup.\n" +
	"\n" +
	"When this field is set, the corresponding scope payload should also be provided.\n" +
	"\n" +
	"- `\"BACKUP_SCOPE_TYPE_UNSPECIFIED\"`: the backup scope is not specified.\n" +
	"\n" +
	"- `\"BACKUP_SCOPE_TYPE_FULL\"`: back up the full cluster. Use with the `full` field.\n" +
	"\n" +
	"- `\"BACKUP_SCOPE_TYPE_DATABASE\"`: back up one or more databases. Use with the `database` field.\n" +
	"\n" +
	"- `\"BACKUP_SCOPE_TYPE_TABLE\"`: back up one or more tables. Use with the `table` field.\n" +
	"\n" +
	"- `\"BACKUP_SCOPE_TYPE_FILTER\"`: back up data by custom include or exclude rules. Use with the `filter` field.J\x18\"BACKUP_SCOPE_TYPE_FULL\"\xe0A\x02R\x04type\x127\n" +
	"\x04full\x18\x04 \x01(\v2!.adminapi.v1beta1.FullBackupScopeH\x00R\x04full\x12C\n" +
	"\bdatabase\x18\x05 \x01(\v2%.adminapi.v1beta1.DatabaseBackupScopeH\x00R\bdatabase\x12:\n" +
	"\x05table\x18\x06 \x01(\v2\".adminapi.v1beta1.TableBackupScopeH\x00R\x05table\x12=\n" +
	"\x06filter\x18\a \x01(\v2#.adminapi.v1beta1.FilterBackupScopeH\x00R\x06filterB\x0e\n" +
	"\fbackup_scope\"\x11\n" +
	"\x0fFullBackupScope\"H\n" +
	"\x13DatabaseBackupScope\x121\n" +
	"\tdatabases\x18\x01 \x03(\tB\x13\xe0A\x02\xbaH\r\x92\x01\n" +
	"\b\x01\"\x06r\x04\x10\x01\x18@R\tdatabases\"7\n" +
	"\x10TableBackupScope\x12#\n" +
	"\x06tables\x18\x01 \x03(\tB\v\xe0A\x02\xbaH\x05\x92\x01\x02\b\x01R\x06tables\"u\n" +
	"\x11FilterBackupScope\x126\n" +
	"\rinclude_rules\x18\x01 \x03(\tB\x11\xe0A\x02\xbaH\v\x92\x01\b\b\x01\"\x04r\x02\x10\x01R\fincludeRules\x12(\n" +
	"\rexclude_rules\x18\x02 \x03(\tB\x03\xe0A\x01R\fexcludeRules\"\x94\x01\n" +
	"\x12BackupScopeDetails\x12\x1c\n" +
	"\tdatabases\x18\x01 \x03(\tR\tdatabases\x12\x16\n" +
	"\x06tables\x18\x02 \x03(\tR\x06tables\x12#\n" +
	"\rinclude_rules\x18\x03 \x03(\tR\fincludeRules\x12#\n" +
	"\rexclude_rules\x18\x04 \x03(\tR\fexcludeRules\"M\n" +
	"\x10GetBackupRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId:\x11\x92A\x0e\n" +
	"\f\xd2\x01\tbackup_id\"P\n" +
	"\x13DeleteBackupRequest\x12&\n" +
	"\tbackup_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\bbackupId:\x11\x92A\x0e\n" +
	"\f\xd2\x01\tbackup_id\"W\n" +
	"\x17GetBackupOptionsRequest\x12(\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId:\x12\x92A\x0f\n" +
	"\r\xd2\x01\n" +
	"cluster_id\"\xaa\x01\n" +
	"\rBackupOptions\x12\"\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\x03\xe0A\x03R\tclusterId\x12]\n" +
	"\x13dual_region_options\x18\x02 \x01(\v2#.adminapi.v1beta1.DualRegionOptionsB\x03\xe0A\x03H\x00R\x11dualRegionOptions\x88\x01\x01B\x16\n" +
	"\x14_dual_region_options\"\xb7\x01\n" +
	"\x11DualRegionOptions\x12E\n" +
	"\x0eregion_options\x18\x01 \x03(\v2\x1e.adminapi.v1beta1.RegionOptionR\rregionOptions\x12H\n" +
	"\x0ecluster_region\x18\x02 \x01(\v2\x1c.adminapi.v1beta1.RegionInfoH\x00R\rclusterRegion\x88\x01\x01B\x11\n" +
	"\x0f_cluster_region\"D\n" +
	"\fRegionOption\x124\n" +
	"\x06region\x18\x01 \x01(\v2\x1c.adminapi.v1beta1.RegionInfoR\x06region\"\xe2\x02\n" +
	"\x1bModifyBackupSettingsRequest\x12(\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId\x12\x1d\n" +
	"\aregions\x18\x02 \x03(\tB\x03\xe0A\x01R\aregions\x12J\n" +
	"\fpitr_setting\x18\x03 \x01(\v2\x1d.adminapi.v1beta1.PITRSettingB\x03\xe0A\x01H\x00R\vpitrSetting\x88\x01\x01\x12l\n" +
	"\x18snapshot_backup_schedule\x18\x04 \x01(\v2(.adminapi.v1beta1.SnapshotBackupScheduleB\x03\xe0A\x01H\x01R\x16snapshotBackupSchedule\x88\x01\x01:\x12\x92A\x0f\n" +
	"\r\xd2\x01\n" +
	"cluster_idB\x0f\n" +
	"\r_pitr_settingB\x1b\n" +
	"\x19_snapshot_backup_schedule\"X\n" +
	"\x18GetBackupSettingsRequest\x12(\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId:\x12\x92A\x0f\n" +
	"\r\xd2\x01\n" +
	"cluster_id\"\xfe\x03\n" +
	"\x0eBackupSettings\x12\"\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\x03\xe0A\x03R\tclusterId\x12;\n" +
	"\aregions\x18\x02 \x03(\v2\x1c.adminapi.v1beta1.RegionInfoB\x03\xe0A\x03R\aregions\x12l\n" +
	"\x18snapshot_backup_schedule\x18\x03 \x01(\v2(.adminapi.v1beta1.SnapshotBackupScheduleB\x03\xe0A\x03H\x00R\x16snapshotBackupSchedule\x88\x01\x01\x12J\n" +
	"\fpitr_setting\x18\x04 \x01(\v2\x1d.adminapi.v1beta1.PITRSettingB\x03\xe0A\x03H\x01R\vpitrSetting\x88\x01\x01\x12D\n" +
	"\x05state\x18\x05 \x01(\x0e2$.adminapi.v1beta1.BackupSettingStateB\x03\xe0A\x03H\x02R\x05state\x88\x01\x01\x12S\n" +
	"\x0fallowed_actions\x18\x06 \x03(\x0e2%.adminapi.v1beta1.BackupSettingActionB\x03\xe0A\x03R\x0eallowedActionsB\x1b\n" +
	"\x19_snapshot_backup_scheduleB\x0f\n" +
	"\r_pitr_settingB\b\n" +
	"\x06_state\"^\n" +
	"\x1eGetBackupPITRTimeRangesRequest\x12(\n" +
	"\n" +
	"cluster_id\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\tclusterId:\x12\x92A\x0f\n" +
	"\r\xd2\x01\n" +
	"cluster_id\"\x82\x01\n" +
	"\x1fGetBackupPITRTimeRangesResponse\x12@\n" +
	"\x05items\x18\x01 \x03(\v2%.adminapi.v1beta1.PITRRegionTimeRangeB\x03\xe0A\x03R\x05items\x12\x1d\n" +
	"\amessage\x18\x02 \x01(\tB\x03\xe0A\x03R\amessage\"8\n" +
	"\vPITRSetting\x12\x1d\n" +
	"\aenabled\x18\x01 \x01(\bH\x00R\aenabled\x88\x01\x01B\n" +
	"\n" +
	"\b_enabled\"\x81\x01\n" +
	"\rPITRTimeRange\x129\n" +
	"\n" +
	"start_time\x18\x01 \x01(\v2\x1a.google.protobuf.TimestampR\tstartTime\x125\n" +
	"\bend_time\x18\x02 \x01(\v2\x1a.google.protobuf.TimestampR\aendTime\"\x97\x01\n" +
	"\x13PITRRegionTimeRange\x129\n" +
	"\x06region\x18\x01 \x01(\v2\x1c.adminapi.v1beta1.RegionInfoB\x03\xe0A\x03R\x06region\x12E\n" +
	"\vtime_ranges\x18\x02 \x03(\v2\x1f.adminapi.v1beta1.PITRTimeRangeB\x03\xe0A\x03R\n" +
	"timeRanges\"\xe8\x03\n" +
	"\x16SnapshotBackupSchedule\x12\x1d\n" +
	"\aenabled\x18\x01 \x01(\bH\x01R\aenabled\x88\x01\x01\x12Q\n" +
	"\rschedule_type\x18\x02 \x01(\x0e2,.adminapi.v1beta1.SnapshotBackupScheduleTypeR\fscheduleType\x12H\n" +
	"\x0edaily_schedule\x18\x03 \x01(\v2\x1f.adminapi.v1beta1.DailyScheduleH\x00R\rdailySchedule\x12K\n" +
	"\x0fweekly_schedule\x18\x04 \x01(\v2 .adminapi.v1beta1.WeeklyScheduleH\x00R\x0eweeklySchedule\x125\n" +
	"\x0eretention_days\x18\x05 \x01(\x05B\t\xbaH\x06\x1a\x04\x18Z(\x01H\x02R\rretentionDays\x88\x01\x01\x12N\n" +
	"\x10next_backup_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03H\x03R\x0enextBackupTime\x88\x01\x01B\n" +
	"\n" +
	"\bscheduleB\n" +
	"\n" +
	"\b_enabledB\x11\n" +
	"\x0f_retention_daysB\x13\n" +
	"\x11_next_backup_time\"?\n" +
	"\rDailySchedule\x12.\n" +
	"\rschedule_time\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\fscheduleTime\"}\n" +
	"\x0eWeeklySchedule\x12.\n" +
	"\rschedule_time\x18\x01 \x01(\tB\t\xe0A\x02\xbaH\x03\xc8\x01\x01R\fscheduleTime\x12;\n" +
	"\tweek_days\x18\x02 \x03(\x0e2\x11.dataflow.WeekDayB\v\xe0A\x02\xbaH\x05\x92\x01\x02\b\x01R\bweekDays*?\n" +
	"\n" +
	"BackupType\x12\x1b\n" +
	"\x17BACKUP_TYPE_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04AUTO\x10\x01\x12\n" +
	"\n" +
	"\x06MANUAL\x10\x02*\xab\x01\n" +
	"\x0fBackupScopeType\x12!\n" +
	"\x1dBACKUP_SCOPE_TYPE_UNSPECIFIED\x10\x00\x12\x1a\n" +
	"\x16BACKUP_SCOPE_TYPE_FULL\x10\x01\x12\x1e\n" +
	"\x1aBACKUP_SCOPE_TYPE_DATABASE\x10\x02\x12\x1b\n" +
	"\x17BACKUP_SCOPE_TYPE_TABLE\x10\x03\x12\x1c\n" +
	"\x18BACKUP_SCOPE_TYPE_FILTER\x10\x04*\x9e\x01\n" +
	"\x1aSnapshotBackupScheduleType\x12-\n" +
	")SNAPSHOT_BACKUP_SCHEDULE_TYPE_UNSPECIFIED\x10\x00\x12'\n" +
	"#SNAPSHOT_BACKUP_SCHEDULE_TYPE_DAILY\x10\x01\x12(\n" +
	"$SNAPSHOT_BACKUP_SCHEDULE_TYPE_WEEKLY\x10\x02*\xa3\x02\n" +
	"\x12BackupSettingState\x12$\n" +
	" BACKUP_SETTING_STATE_UNSPECIFIED\x10\x00\x12!\n" +
	"\x1dBACKUP_SETTING_STATE_CREATING\x10\x01\x12'\n" +
	"#BACKUP_SETTING_STATE_EDITING_REGION\x10\x02\x12%\n" +
	"!BACKUP_SETTING_STATE_EDITING_PITR\x10\x03\x12\x1f\n" +
	"\x1bBACKUP_SETTING_STATE_NORMAL\x10\x04\x12 \n" +
	"\x1cBACKUP_SETTING_STATE_DELETED\x10\x05\x121\n" +
	"-BACKUP_SETTING_STATE_WAITING_FOR_EDITING_PITR\x10\x06*\xc1\x01\n" +
	"\x13BackupSettingAction\x12%\n" +
	"!BACKUP_SETTING_ACTION_UNSPECIFIED\x10\x00\x12%\n" +
	"!BACKUP_SETTING_ACTION_EDIT_REGION\x10\x01\x12#\n" +
	"\x1fBACKUP_SETTING_ACTION_EDIT_PITR\x10\x02\x127\n" +
	"3BACKUP_SETTING_ACTION_EDIT_SNAPSHOT_BACKUP_SCHEDULE\x10\x032\xc9\x16\n" +
	"\rBackupService\x12\x84\x01\n" +
	"\vListBackups\x12$.adminapi.v1beta1.ListBackupsRequest\x1a%.adminapi.v1beta1.ListBackupsResponse\"(\x92A\r*\vListBackups\x82\xd3\xe4\x93\x02\x12\x12\x10/v1beta1/backups\x12\xe4\x01\n" +
	"\x16GetBackupExportProfile\x12/.adminapi.v1beta1.GetBackupExportProfileRequest\x1a%.adminapi.v1beta1.BackupExportProfile\"r\x92A=\x1a#Get the export profile for a backup*\x16GetBackupExportProfile\x82\xd3\xe4\x93\x02,\x12*/v1beta1/backups/{backup_id}/exportProfile\x12\xc9\x01\n" +
	"\x12CreateBackupExport\x12+.adminapi.v1beta1.CreateBackupExportRequest\x1a\x1e.adminapi.v1beta1.BackupExport\"f\x92A4\x1a\x1eCreate a new backup export job*\x12CreateBackupExport\x82\xd3\xe4\x93\x02):\x01*\"$/v1beta1/backups/{backup_id}/exports\x12\xe3\x01\n" +
	"\x11ListBackupExports\x12*.adminapi.v1beta1.ListBackupExportsRequest\x1a+.adminapi.v1beta1.ListBackupExportsResponse\"u\x92AF\x1a1List all backup export jobs for a specific backup*\x11ListBackupExports\x82\xd3\xe4\x93\x02&\x12$/v1beta1/backups/{backup_id}/exports\x12\xcb\x01\n" +
	"\x0fGetBackupExport\x12(.adminapi.v1beta1.GetBackupExportRequest\x1a\x1e.adminapi.v1beta1.BackupExport\"n\x92A3\x1a Get a specific backup export job*\x0fGetBackupExport\x82\xd3\xe4\x93\x022\x120/v1beta1/backups/{backup_id}/exports/{export_id}\x12\xd8\x01\n" +
	"\x12CancelBackupExport\x12+.adminapi.v1beta1.CancelBackupExportRequest\x1a\x16.google.protobuf.Empty\"}\x92A8\x1a\"Cancel a running backup export job*\x12CancelBackupExport\x82\xd3\xe4\x93\x02<:\x01*\"7/v1beta1/backups/{backup_id}/exports/{export_id}:cancel\x12\x86\x02\n" +
	"\fCreateBackup\x12%.adminapi.v1beta1.CreateBackupRequest\x1a\x18.adminapi.v1beta1.Backup\"\xb4\x01\x92A\x95\x01\x1a\x84\x01Create a new backup job. Supports multiple backup scopes: full cluster, specific databases, specific tables, or custom filter rules.*\fCreateBackup\x82\xd3\xe4\x93\x02\x15:\x01*\"\x10/v1beta1/backups\x12\xa7\x01\n" +
	"\tGetBackup\x12\".adminapi.v1beta1.GetBackupRequest\x1a\x18.adminapi.v1beta1.Backup\"\\\x92A5\x1a(Retrieve a specific backup job by its ID*\tGetBackup\x82\xd3\xe4\x93\x02\x1e\x12\x1c/v1beta1/backups/{backup_id}\x12\xa2\x01\n" +
	"\fDeleteBackup\x12%.adminapi.v1beta1.DeleteBackupRequest\x1a\x16.google.protobuf.Empty\"S\x92A,\x1a\x1cDelete a specific backup job*\fDeleteBackup\x82\xd3\xe4\x93\x02\x1e*\x1c/v1beta1/backups/{backup_id}\x12\x81\x02\n" +
	"\x10GetBackupOptions\x12).adminapi.v1beta1.GetBackupOptionsRequest\x1a\x1f.adminapi.v1beta1.BackupOptions\"\xa0\x01\x92Ai\x1aUGet available backup configuration options for a cluster, including supported regions*\x10GetBackupOptions\x82\xd3\xe4\x93\x02.\x12,/v1beta1/clusters/{cluster_id}/backupOptions\x12\x90\x02\n" +
	"\x14ModifyBackupSettings\x12-.adminapi.v1beta1.ModifyBackupSettingsRequest\x1a .adminapi.v1beta1.BackupSettings\"\xa6\x01\x92Ak\x1aSModify backup settings including regions, PITR configuration, and snapshot schedule*\x14ModifyBackupSettings\x82\xd3\xe4\x93\x022:\x01*\"-/v1beta1/clusters/{cluster_id}/backupSettings\x12\xde\x01\n" +
	"\x11GetBackupSettings\x12*.adminapi.v1beta1.GetBackupSettingsRequest\x1a .adminapi.v1beta1.BackupSettings\"{\x92AC\x1a.Retrieve current backup settings for a cluster*\x11GetBackupSettings\x82\xd3\xe4\x93\x02/\x12-/v1beta1/clusters/{cluster_id}/backupSettings\x12\x9e\x02\n" +
	"\x17GetBackupPITRTimeRanges\x120.adminapi.v1beta1.GetBackupPITRTimeRangesRequest\x1a1.adminapi.v1beta1.GetBackupPITRTimeRangesResponse\"\x9d\x01\x92AV\x1a;Retrieve PITR time ranges for a cluster, grouped by region.*\x17GetBackupPITRTimeRanges\x82\xd3\xe4\x93\x02>\x12</v1beta1/clusters/{cluster_id}/backupSettings/pitrTimeRangesB\xf3\x01\x92Ah\n" +
	"\x032.0\x12G\n" +
	"\x1dTiDB Cloud Dedicated Open API\x12\x1dTiDB Cloud Dedicated Open API2\av1beta1\x1a\x15dedicated.tidbapi.com*\x01\x02\n" +
	"'com.tidbcloud.dataflow.adminapi.v1beta1B\vBackupProtoP\x01ZNgithub.com/tidbcloud/dataflow-service/idl/pbgen/proto/adminapi/v1beta1;v1beta1b\x06proto3"

var (
	file_adminapi_v1beta1_backup_proto_rawDescOnce sync.Once
	file_adminapi_v1beta1_backup_proto_rawDescData []byte
)

func file_adminapi_v1beta1_backup_proto_rawDescGZIP() []byte {
	file_adminapi_v1beta1_backup_proto_rawDescOnce.Do(func() {
		file_adminapi_v1beta1_backup_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_adminapi_v1beta1_backup_proto_rawDesc), len(file_adminapi_v1beta1_backup_proto_rawDesc)))
	})
	return file_adminapi_v1beta1_backup_proto_rawDescData
}

var file_adminapi_v1beta1_backup_proto_enumTypes = make([]protoimpl.EnumInfo, 7)
var file_adminapi_v1beta1_backup_proto_msgTypes = make([]protoimpl.MessageInfo, 42)
var file_adminapi_v1beta1_backup_proto_goTypes = []any{
	(BackupType)(0),                           // 0: adminapi.v1beta1.BackupType
	(BackupScopeType)(0),                      // 1: adminapi.v1beta1.BackupScopeType
	(SnapshotBackupScheduleType)(0),           // 2: adminapi.v1beta1.SnapshotBackupScheduleType
	(BackupSettingState)(0),                   // 3: adminapi.v1beta1.BackupSettingState
	(BackupSettingAction)(0),                  // 4: adminapi.v1beta1.BackupSettingAction
	(Backup_State)(0),                         // 5: adminapi.v1beta1.Backup.State
	(BackupExport_State)(0),                   // 6: adminapi.v1beta1.BackupExport.State
	(*ListBackupsRequest)(nil),                // 7: adminapi.v1beta1.ListBackupsRequest
	(*ListBackupsResponse)(nil),               // 8: adminapi.v1beta1.ListBackupsResponse
	(*Backup)(nil),                            // 9: adminapi.v1beta1.Backup
	(*RegionInfo)(nil),                        // 10: adminapi.v1beta1.RegionInfo
	(*GetBackupExportProfileRequest)(nil),     // 11: adminapi.v1beta1.GetBackupExportProfileRequest
	(*CreateBackupExportRequest)(nil),         // 12: adminapi.v1beta1.CreateBackupExportRequest
	(*BackupExport)(nil),                      // 13: adminapi.v1beta1.BackupExport
	(*StorageDestination)(nil),                // 14: adminapi.v1beta1.StorageDestination
	(*BackupExportProfile)(nil),               // 15: adminapi.v1beta1.BackupExportProfile
	(*ListBackupExportsRequest)(nil),          // 16: adminapi.v1beta1.ListBackupExportsRequest
	(*ListBackupExportsResponse)(nil),         // 17: adminapi.v1beta1.ListBackupExportsResponse
	(*GetBackupExportRequest)(nil),            // 18: adminapi.v1beta1.GetBackupExportRequest
	(*CancelBackupExportRequest)(nil),         // 19: adminapi.v1beta1.CancelBackupExportRequest
	(*CreateBackupRequest)(nil),               // 20: adminapi.v1beta1.CreateBackupRequest
	(*BackupScope)(nil),                       // 21: adminapi.v1beta1.BackupScope
	(*FullBackupScope)(nil),                   // 22: adminapi.v1beta1.FullBackupScope
	(*DatabaseBackupScope)(nil),               // 23: adminapi.v1beta1.DatabaseBackupScope
	(*TableBackupScope)(nil),                  // 24: adminapi.v1beta1.TableBackupScope
	(*FilterBackupScope)(nil),                 // 25: adminapi.v1beta1.FilterBackupScope
	(*BackupScopeDetails)(nil),                // 26: adminapi.v1beta1.BackupScopeDetails
	(*GetBackupRequest)(nil),                  // 27: adminapi.v1beta1.GetBackupRequest
	(*DeleteBackupRequest)(nil),               // 28: adminapi.v1beta1.DeleteBackupRequest
	(*GetBackupOptionsRequest)(nil),           // 29: adminapi.v1beta1.GetBackupOptionsRequest
	(*BackupOptions)(nil),                     // 30: adminapi.v1beta1.BackupOptions
	(*DualRegionOptions)(nil),                 // 31: adminapi.v1beta1.DualRegionOptions
	(*RegionOption)(nil),                      // 32: adminapi.v1beta1.RegionOption
	(*ModifyBackupSettingsRequest)(nil),       // 33: adminapi.v1beta1.ModifyBackupSettingsRequest
	(*GetBackupSettingsRequest)(nil),          // 34: adminapi.v1beta1.GetBackupSettingsRequest
	(*BackupSettings)(nil),                    // 35: adminapi.v1beta1.BackupSettings
	(*GetBackupPITRTimeRangesRequest)(nil),    // 36: adminapi.v1beta1.GetBackupPITRTimeRangesRequest
	(*GetBackupPITRTimeRangesResponse)(nil),   // 37: adminapi.v1beta1.GetBackupPITRTimeRangesResponse
	(*PITRSetting)(nil),                       // 38: adminapi.v1beta1.PITRSetting
	(*PITRTimeRange)(nil),                     // 39: adminapi.v1beta1.PITRTimeRange
	(*PITRRegionTimeRange)(nil),               // 40: adminapi.v1beta1.PITRRegionTimeRange
	(*SnapshotBackupSchedule)(nil),            // 41: adminapi.v1beta1.SnapshotBackupSchedule
	(*DailySchedule)(nil),                     // 42: adminapi.v1beta1.DailySchedule
	(*WeeklySchedule)(nil),                    // 43: adminapi.v1beta1.WeeklySchedule
	(*StorageDestination_GCSDestination)(nil), // 44: adminapi.v1beta1.StorageDestination.GCSDestination
	(*StorageDestination_S3Destination)(nil),  // 45: adminapi.v1beta1.StorageDestination.S3Destination
	(*BackupExportProfile_GCSProfile)(nil),    // 46: adminapi.v1beta1.BackupExportProfile.GCSProfile
	(*BackupExportProfile_S3Profile)(nil),     // 47: adminapi.v1beta1.BackupExportProfile.S3Profile
	(*BackupExportProfile_AzBlobProfile)(nil), // 48: adminapi.v1beta1.BackupExportProfile.AzBlobProfile
	(*timestamppb.Timestamp)(nil),             // 49: google.protobuf.Timestamp
	(dataflow.WeekDay)(0),                     // 50: dataflow.WeekDay
	(*emptypb.Empty)(nil),                     // 51: google.protobuf.Empty
}
var file_adminapi_v1beta1_backup_proto_depIdxs = []int32{
	9,  // 0: adminapi.v1beta1.ListBackupsResponse.backups:type_name -> adminapi.v1beta1.Backup
	49, // 1: adminapi.v1beta1.Backup.create_time:type_name -> google.protobuf.Timestamp
	5,  // 2: adminapi.v1beta1.Backup.state:type_name -> adminapi.v1beta1.Backup.State
	0,  // 3: adminapi.v1beta1.Backup.type:type_name -> adminapi.v1beta1.BackupType
	49, // 4: adminapi.v1beta1.Backup.expiration_time:type_name -> google.protobuf.Timestamp
	49, // 5: adminapi.v1beta1.Backup.backup_time:type_name -> google.protobuf.Timestamp
	10, // 6: adminapi.v1beta1.Backup.regions:type_name -> adminapi.v1beta1.RegionInfo
	1,  // 7: adminapi.v1beta1.Backup.scope_type:type_name -> adminapi.v1beta1.BackupScopeType
	26, // 8: adminapi.v1beta1.Backup.scope_details:type_name -> adminapi.v1beta1.BackupScopeDetails
	13, // 9: adminapi.v1beta1.CreateBackupExportRequest.backup_export:type_name -> adminapi.v1beta1.BackupExport
	49, // 10: adminapi.v1beta1.BackupExport.backup_time:type_name -> google.protobuf.Timestamp
	14, // 11: adminapi.v1beta1.BackupExport.destination:type_name -> adminapi.v1beta1.StorageDestination
	49, // 12: adminapi.v1beta1.BackupExport.create_time:type_name -> google.protobuf.Timestamp
	49, // 13: adminapi.v1beta1.BackupExport.finish_time:type_name -> google.protobuf.Timestamp
	6,  // 14: adminapi.v1beta1.BackupExport.state:type_name -> adminapi.v1beta1.BackupExport.State
	44, // 15: adminapi.v1beta1.StorageDestination.gcs:type_name -> adminapi.v1beta1.StorageDestination.GCSDestination
	45, // 16: adminapi.v1beta1.StorageDestination.s3:type_name -> adminapi.v1beta1.StorageDestination.S3Destination
	46, // 17: adminapi.v1beta1.BackupExportProfile.gcs:type_name -> adminapi.v1beta1.BackupExportProfile.GCSProfile
	47, // 18: adminapi.v1beta1.BackupExportProfile.s3:type_name -> adminapi.v1beta1.BackupExportProfile.S3Profile
	13, // 19: adminapi.v1beta1.ListBackupExportsResponse.backup_exports:type_name -> adminapi.v1beta1.BackupExport
	21, // 20: adminapi.v1beta1.CreateBackupRequest.backup_scope:type_name -> adminapi.v1beta1.BackupScope
	1,  // 21: adminapi.v1beta1.BackupScope.type:type_name -> adminapi.v1beta1.BackupScopeType
	22, // 22: adminapi.v1beta1.BackupScope.full:type_name -> adminapi.v1beta1.FullBackupScope
	23, // 23: adminapi.v1beta1.BackupScope.database:type_name -> adminapi.v1beta1.DatabaseBackupScope
	24, // 24: adminapi.v1beta1.BackupScope.table:type_name -> adminapi.v1beta1.TableBackupScope
	25, // 25: adminapi.v1beta1.BackupScope.filter:type_name -> adminapi.v1beta1.FilterBackupScope
	31, // 26: adminapi.v1beta1.BackupOptions.dual_region_options:type_name -> adminapi.v1beta1.DualRegionOptions
	32, // 27: adminapi.v1beta1.DualRegionOptions.region_options:type_name -> adminapi.v1beta1.RegionOption
	10, // 28: adminapi.v1beta1.DualRegionOptions.cluster_region:type_name -> adminapi.v1beta1.RegionInfo
	10, // 29: adminapi.v1beta1.RegionOption.region:type_name -> adminapi.v1beta1.RegionInfo
	38, // 30: adminapi.v1beta1.ModifyBackupSettingsRequest.pitr_setting:type_name -> adminapi.v1beta1.PITRSetting
	41, // 31: adminapi.v1beta1.ModifyBackupSettingsRequest.snapshot_backup_schedule:type_name -> adminapi.v1beta1.SnapshotBackupSchedule
	10, // 32: adminapi.v1beta1.BackupSettings.regions:type_name -> adminapi.v1beta1.RegionInfo
	41, // 33: adminapi.v1beta1.BackupSettings.snapshot_backup_schedule:type_name -> adminapi.v1beta1.SnapshotBackupSchedule
	38, // 34: adminapi.v1beta1.BackupSettings.pitr_setting:type_name -> adminapi.v1beta1.PITRSetting
	3,  // 35: adminapi.v1beta1.BackupSettings.state:type_name -> adminapi.v1beta1.BackupSettingState
	4,  // 36: adminapi.v1beta1.BackupSettings.allowed_actions:type_name -> adminapi.v1beta1.BackupSettingAction
	40, // 37: adminapi.v1beta1.GetBackupPITRTimeRangesResponse.items:type_name -> adminapi.v1beta1.PITRRegionTimeRange
	49, // 38: adminapi.v1beta1.PITRTimeRange.start_time:type_name -> google.protobuf.Timestamp
	49, // 39: adminapi.v1beta1.PITRTimeRange.end_time:type_name -> google.protobuf.Timestamp
	10, // 40: adminapi.v1beta1.PITRRegionTimeRange.region:type_name -> adminapi.v1beta1.RegionInfo
	39, // 41: adminapi.v1beta1.PITRRegionTimeRange.time_ranges:type_name -> adminapi.v1beta1.PITRTimeRange
	2,  // 42: adminapi.v1beta1.SnapshotBackupSchedule.schedule_type:type_name -> adminapi.v1beta1.SnapshotBackupScheduleType
	42, // 43: adminapi.v1beta1.SnapshotBackupSchedule.daily_schedule:type_name -> adminapi.v1beta1.DailySchedule
	43, // 44: adminapi.v1beta1.SnapshotBackupSchedule.weekly_schedule:type_name -> adminapi.v1beta1.WeeklySchedule
	49, // 45: adminapi.v1beta1.SnapshotBackupSchedule.next_backup_time:type_name -> google.protobuf.Timestamp
	50, // 46: adminapi.v1beta1.WeeklySchedule.week_days:type_name -> dataflow.WeekDay
	7,  // 47: adminapi.v1beta1.BackupService.ListBackups:input_type -> adminapi.v1beta1.ListBackupsRequest
	11, // 48: adminapi.v1beta1.BackupService.GetBackupExportProfile:input_type -> adminapi.v1beta1.GetBackupExportProfileRequest
	12, // 49: adminapi.v1beta1.BackupService.CreateBackupExport:input_type -> adminapi.v1beta1.CreateBackupExportRequest
	16, // 50: adminapi.v1beta1.BackupService.ListBackupExports:input_type -> adminapi.v1beta1.ListBackupExportsRequest
	18, // 51: adminapi.v1beta1.BackupService.GetBackupExport:input_type -> adminapi.v1beta1.GetBackupExportRequest
	19, // 52: adminapi.v1beta1.BackupService.CancelBackupExport:input_type -> adminapi.v1beta1.CancelBackupExportRequest
	20, // 53: adminapi.v1beta1.BackupService.CreateBackup:input_type -> adminapi.v1beta1.CreateBackupRequest
	27, // 54: adminapi.v1beta1.BackupService.GetBackup:input_type -> adminapi.v1beta1.GetBackupRequest
	28, // 55: adminapi.v1beta1.BackupService.DeleteBackup:input_type -> adminapi.v1beta1.DeleteBackupRequest
	29, // 56: adminapi.v1beta1.BackupService.GetBackupOptions:input_type -> adminapi.v1beta1.GetBackupOptionsRequest
	33, // 57: adminapi.v1beta1.BackupService.ModifyBackupSettings:input_type -> adminapi.v1beta1.ModifyBackupSettingsRequest
	34, // 58: adminapi.v1beta1.BackupService.GetBackupSettings:input_type -> adminapi.v1beta1.GetBackupSettingsRequest
	36, // 59: adminapi.v1beta1.BackupService.GetBackupPITRTimeRanges:input_type -> adminapi.v1beta1.GetBackupPITRTimeRangesRequest
	8,  // 60: adminapi.v1beta1.BackupService.ListBackups:output_type -> adminapi.v1beta1.ListBackupsResponse
	15, // 61: adminapi.v1beta1.BackupService.GetBackupExportProfile:output_type -> adminapi.v1beta1.BackupExportProfile
	13, // 62: adminapi.v1beta1.BackupService.CreateBackupExport:output_type -> adminapi.v1beta1.BackupExport
	17, // 63: adminapi.v1beta1.BackupService.ListBackupExports:output_type -> adminapi.v1beta1.ListBackupExportsResponse
	13, // 64: adminapi.v1beta1.BackupService.GetBackupExport:output_type -> adminapi.v1beta1.BackupExport
	51, // 65: adminapi.v1beta1.BackupService.CancelBackupExport:output_type -> google.protobuf.Empty
	9,  // 66: adminapi.v1beta1.BackupService.CreateBackup:output_type -> adminapi.v1beta1.Backup
	9,  // 67: adminapi.v1beta1.BackupService.GetBackup:output_type -> adminapi.v1beta1.Backup
	51, // 68: adminapi.v1beta1.BackupService.DeleteBackup:output_type -> google.protobuf.Empty
	30, // 69: adminapi.v1beta1.BackupService.GetBackupOptions:output_type -> adminapi.v1beta1.BackupOptions
	35, // 70: adminapi.v1beta1.BackupService.ModifyBackupSettings:output_type -> adminapi.v1beta1.BackupSettings
	35, // 71: adminapi.v1beta1.BackupService.GetBackupSettings:output_type -> adminapi.v1beta1.BackupSettings
	37, // 72: adminapi.v1beta1.BackupService.GetBackupPITRTimeRanges:output_type -> adminapi.v1beta1.GetBackupPITRTimeRangesResponse
	60, // [60:73] is the sub-list for method output_type
	47, // [47:60] is the sub-list for method input_type
	47, // [47:47] is the sub-list for extension type_name
	47, // [47:47] is the sub-list for extension extendee
	0,  // [0:47] is the sub-list for field type_name
}

func init() { file_adminapi_v1beta1_backup_proto_init() }
func file_adminapi_v1beta1_backup_proto_init() {
	if File_adminapi_v1beta1_backup_proto != nil {
		return
	}
	file_adminapi_v1beta1_backup_proto_msgTypes[2].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[7].OneofWrappers = []any{
		(*StorageDestination_Gcs)(nil),
		(*StorageDestination_S3)(nil),
	}
	file_adminapi_v1beta1_backup_proto_msgTypes[8].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[13].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[14].OneofWrappers = []any{
		(*BackupScope_Full)(nil),
		(*BackupScope_Database)(nil),
		(*BackupScope_Table)(nil),
		(*BackupScope_Filter)(nil),
	}
	file_adminapi_v1beta1_backup_proto_msgTypes[23].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[24].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[26].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[28].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[31].OneofWrappers = []any{}
	file_adminapi_v1beta1_backup_proto_msgTypes[34].OneofWrappers = []any{
		(*SnapshotBackupSchedule_DailySchedule)(nil),
		(*SnapshotBackupSchedule_WeeklySchedule)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_adminapi_v1beta1_backup_proto_rawDesc), len(file_adminapi_v1beta1_backup_proto_rawDesc)),
			NumEnums:      7,
			NumMessages:   42,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_adminapi_v1beta1_backup_proto_goTypes,
		DependencyIndexes: file_adminapi_v1beta1_backup_proto_depIdxs,
		EnumInfos:         file_adminapi_v1beta1_backup_proto_enumTypes,
		MessageInfos:      file_adminapi_v1beta1_backup_proto_msgTypes,
	}.Build()
	File_adminapi_v1beta1_backup_proto = out.File
	file_adminapi_v1beta1_backup_proto_goTypes = nil
	file_adminapi_v1beta1_backup_proto_depIdxs = nil
}
