package pd

import (
	"context"
)

type PDDriver interface {
	SetEndpoint(endpoint string)
	ShowSchedulers() ([]byte, error)
	ShowStores() ([]byte, error)
	ShowRegions() ([]byte, error)
	AddScheduler(name string) error
	RemoveScheduler(name string) error
}

type PDCMDDriver interface {
	SetBin(bin string)
	SetCtx(ctx context.Context)
}

type StoreDriver interface {
	GetRegionsByStore(storeID uint64) ([]byte, error)
	AddStoreScheduler(name string, storeID uint64) error
	RemoveStoreScheduler(name string, storeID uint64) error
}
