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

package v1alpha1

import (
	configv1alpha1 "github.com/openshift/api/config/v1alpha1"
	labels "k8s.io/apimachinery/pkg/labels"
	listers "k8s.io/client-go/listers"
	cache "k8s.io/client-go/tools/cache"
)

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

// clusterMonitoringLister implements the ClusterMonitoringLister interface.
type clusterMonitoringLister struct {
	listers.ResourceIndexer[*configv1alpha1.ClusterMonitoring]
}

// NewClusterMonitoringLister returns a new ClusterMonitoringLister.
func NewClusterMonitoringLister(indexer cache.Indexer) ClusterMonitoringLister {
	return &clusterMonitoringLister{listers.New[*configv1alpha1.ClusterMonitoring](indexer, configv1alpha1.Resource("clustermonitoring"))}
}
