package iface

import (
	"context"

	"github.com/tidbcloud/metering/pkg/common/models"
)

type TiDBClusterMetaQuerier interface {
	List(ctx context.Context, timestamp int64) ([]*models.ClusterMeta, error)
	Detail(ctx context.Context, timestamp int64, clusterID uint64) ([]*models.ComponentMeta, error)
}

type ClusterMetaSnapshotReaderWriter interface {
	Save(ctx context.Context, timestamp int64, data []models.ClusterMeta) error
	Get(ctx context.Context, timestamp int64) ([]models.ClusterMeta, error)
}
