func (mr *MockMulticlusterServiceAccountReconcilerMockRecorder) ReconcileServiceAccount(clusterName, obj interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ReconcileServiceAccount", reflect.TypeOf((*MockMulticlusterServiceAccountReconciler)(nil).ReconcileServiceAccount), clusterName, obj)
}
ReconcileServiceAccount indicates an expected call of ReconcileServiceAccount
package mock_controller
import (
	context "context"
	reflect "reflect"
	gomock "github.com/golang/mock/gomock"
	controller "github.com/solo-io/skv2/pkg/multicluster/internal/k8s/core/v1/controller"
	reconcile "github.com/solo-io/skv2/pkg/reconcile"
	v1 "k8s.io/api/core/v1"
	predicate "sigs.k8s.io/controller-runtime/pkg/predicate"
)
type MockMulticlusterSecretReconciler struct {
	ctrl     *gomock.Controller
	recorder *MockMulticlusterSecretReconcilerMockRecorder
}
type MockMulticlusterSecretReconcilerMockRecorder struct {
	mock *MockMulticlusterSecretReconciler
}
func NewMockMulticlusterSecretReconciler(ctrl *gomock.Controller) *MockMulticlusterSecretReconciler {
	mock := &MockMulticlusterSecretReconciler{ctrl: ctrl}
	mock.recorder = &MockMulticlusterSecretReconcilerMockRecorder{mock}
	return mock
}
func (m *MockMulticlusterSecretReconciler) EXPECT() *MockMulticlusterSecretReconcilerMockRecorder {
	return m.recorder
}
func (m *MockMulticlusterSecretReconciler) ReconcileSecret(clusterName string, obj *v1.Secret) (reconcile.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReconcileSecret", clusterName, obj)
	ret0, _ := ret[0].(reconcile.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}
func (mr *MockMulticlusterSecretReconcilerMockRecorder) ReconcileSecret(clusterName, obj interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ReconcileSecret", reflect.TypeOf((*MockMulticlusterSecretReconciler)(nil).ReconcileSecret), clusterName, obj)
}
type MockMulticlusterSecretDeletionReconciler struct {
	ctrl     *gomock.Controller
	recorder *MockMulticlusterSecretDeletionReconcilerMockRecorder
}
type MockMulticlusterSecretDeletionReconcilerMockRecorder struct {
	mock *MockMulticlusterSecretDeletionReconciler
}
func NewMockMulticlusterSecretDeletionReconciler(ctrl *gomock.Controller) *MockMulticlusterSecretDeletionReconciler {
	mock := &MockMulticlusterSecretDeletionReconciler{ctrl: ctrl}
	mock.recorder = &MockMulticlusterSecretDeletionReconcilerMockRecorder{mock}
	return mock
}
func (m *MockMulticlusterSecretDeletionReconciler) EXPECT() *MockMulticlusterSecretDeletionReconcilerMockRecorder {
	return m.recorder
}
func (m *MockMulticlusterSecretDeletionReconciler) ReconcileSecretDeletion(clusterName string, req reconcile.Request) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReconcileSecretDeletion", clusterName, req)
	ret0, _ := ret[0].(error)
	return ret0
}
func (mr *MockMulticlusterSecretDeletionReconcilerMockRecorder) ReconcileSecretDeletion(clusterName, req interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ReconcileSecretDeletion", reflect.TypeOf((*MockMulticlusterSecretDeletionReconciler)(nil).ReconcileSecretDeletion), clusterName, req)
}
type MockMulticlusterSecretReconcileLoop struct {
	ctrl     *gomock.Controller
	recorder *MockMulticlusterSecretReconcileLoopMockRecorder
}
type MockMulticlusterSecretReconcileLoopMockRecorder struct {
	mock *MockMulticlusterSecretReconcileLoop
}
func NewMockMulticlusterSecretReconcileLoop(ctrl *gomock.Controller) *MockMulticlusterSecretReconcileLoop {
	mock := &MockMulticlusterSecretReconcileLoop{ctrl: ctrl}
	mock.recorder = &MockMulticlusterSecretReconcileLoopMockRecorder{mock}
	return mock
}
func (m *MockMulticlusterSecretReconcileLoop) EXPECT() *MockMulticlusterSecretReconcileLoopMockRecorder {
	return m.recorder
}
func (m *MockMulticlusterSecretReconcileLoop) AddMulticlusterSecretReconciler(ctx context.Context, rec controller.MulticlusterSecretReconciler, predicates ...predicate.Predicate) {
	m.ctrl.T.Helper()
	varargs := []interface{}{ctx, rec}
	for _, a := range predicates {
		varargs = append(varargs, a)
	}
	m.ctrl.Call(m, "AddMulticlusterSecretReconciler", varargs...)
}
func (mr *MockMulticlusterSecretReconcileLoopMockRecorder) AddMulticlusterSecretReconciler(ctx, rec interface{}, predicates ...interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]interface{}{ctx, rec}, predicates...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AddMulticlusterSecretReconciler", reflect.TypeOf((*MockMulticlusterSecretReconcileLoop)(nil).AddMulticlusterSecretReconciler), varargs...)
}
type MockMulticlusterServiceAccountReconciler struct {
	ctrl     *gomock.Controller
	recorder *MockMulticlusterServiceAccountReconcilerMockRecorder
}
type MockMulticlusterServiceAccountReconcilerMockRecorder struct {
	mock *MockMulticlusterServiceAccountReconciler
}
func NewMockMulticlusterServiceAccountReconciler(ctrl *gomock.Controller) *MockMulticlusterServiceAccountReconciler {
	mock := &MockMulticlusterServiceAccountReconciler{ctrl: ctrl}
	mock.recorder = &MockMulticlusterServiceAccountReconcilerMockRecorder{mock}
	return mock
}
func (m *MockMulticlusterServiceAccountReconciler) EXPECT() *MockMulticlusterServiceAccountReconcilerMockRecorder {
	return m.recorder
}
func (m *MockMulticlusterServiceAccountReconciler) ReconcileServiceAccount(clusterName string, obj *v1.ServiceAccount) (reconcile.Result, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ReconcileServiceAccount", clusterName, obj)
	ret0, _ := ret[0].(reconcile.Result)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}