// SPDX-License-Identifier: AGPL-3.0-only

// Code generated by lister-gen. DO NOT EDIT.

package v0alpha1

import (
	aggregationv0alpha1 "github.com/grafana/grafana/pkg/aggregator/apis/aggregation/v0alpha1"
	labels "k8s.io/apimachinery/pkg/labels"
	listers "k8s.io/client-go/listers"
	cache "k8s.io/client-go/tools/cache"
)

// DataPlaneServiceLister helps list DataPlaneServices.
// All objects returned here must be treated as read-only.
type DataPlaneServiceLister interface {
	// List lists all DataPlaneServices in the indexer.
	// Objects returned here must be treated as read-only.
	List(selector labels.Selector) (ret []*aggregationv0alpha1.DataPlaneService, err error)
	// Get retrieves the DataPlaneService from the index for a given name.
	// Objects returned here must be treated as read-only.
	Get(name string) (*aggregationv0alpha1.DataPlaneService, error)
	DataPlaneServiceListerExpansion
}

// dataPlaneServiceLister implements the DataPlaneServiceLister interface.
type dataPlaneServiceLister struct {
	listers.ResourceIndexer[*aggregationv0alpha1.DataPlaneService]
}

// NewDataPlaneServiceLister returns a new DataPlaneServiceLister.
func NewDataPlaneServiceLister(indexer cache.Indexer) DataPlaneServiceLister {
	return &dataPlaneServiceLister{listers.New[*aggregationv0alpha1.DataPlaneService](indexer, aggregationv0alpha1.Resource("dataplaneservice"))}
}
