package iface

import (
	"context"

	"github.com/tidbcloud/observability/o11ymetering/pkg/common/constants"
	o11ystructs "github.com/tidbcloud/observability/pkg/common/structs"
)

type O11yMetaQuery interface {
	GetDedicatedSeedCluster(ctx context.Context, env constants.BizEnv) (o11ystructs.ClusterBaseInfo, error)
	GetGlobalBaseCluster(ctx context.Context, env constants.BizEnv) (o11ystructs.ClusterBaseInfo, error)
	GetServerlessInfraCluster(ctx context.Context, env constants.BizEnv) (o11ystructs.ClusterBaseInfo, error)
	ListDedicatedK8sInfraClusters(ctx context.Context, env constants.BizEnv) ([]o11ystructs.ClusterBaseInfo, error)
	ListO11yDedicatedClusters(ctx context.Context, env constants.BizEnv) ([]o11ystructs.ClusterBaseInfo, error)
}
