// Code generated by MockGen. DO NOT EDIT.
// Source: group.go
//
// Generated by this command:
//
//	mockgen -destination=mocks/mock_manager.go -package=mocks -source=group.go Manager
//

// Package mocks is a generated GoMock package.
package mocks

import (
	context "context"
	reflect "reflect"

	groups "github.com/stacklok/toolhive/pkg/groups"
	gomock "go.uber.org/mock/gomock"
)

// MockManager is a mock of Manager interface.
type MockManager struct {
	ctrl     *gomock.Controller
	recorder *MockManagerMockRecorder
	isgomock struct{}
}

// MockManagerMockRecorder is the mock recorder for MockManager.
type MockManagerMockRecorder struct {
	mock *MockManager
}

// NewMockManager creates a new mock instance.
func NewMockManager(ctrl *gomock.Controller) *MockManager {
	mock := &MockManager{ctrl: ctrl}
	mock.recorder = &MockManagerMockRecorder{mock}
	return mock
}

// EXPECT returns an object that allows the caller to indicate expected use.
func (m *MockManager) EXPECT() *MockManagerMockRecorder {
	return m.recorder
}

// Create mocks base method.
func (m *MockManager) Create(ctx context.Context, name string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", ctx, name)
	ret0, _ := ret[0].(error)
	return ret0
}

// Create indicates an expected call of Create.
func (mr *MockManagerMockRecorder) Create(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockManager)(nil).Create), ctx, name)
}

// Delete mocks base method.
func (m *MockManager) Delete(ctx context.Context, name string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Delete", ctx, name)
	ret0, _ := ret[0].(error)
	return ret0
}

// Delete indicates an expected call of Delete.
func (mr *MockManagerMockRecorder) Delete(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockManager)(nil).Delete), ctx, name)
}

// Exists mocks base method.
func (m *MockManager) Exists(ctx context.Context, name string) (bool, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Exists", ctx, name)
	ret0, _ := ret[0].(bool)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Exists indicates an expected call of Exists.
func (mr *MockManagerMockRecorder) Exists(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Exists", reflect.TypeOf((*MockManager)(nil).Exists), ctx, name)
}

// Get mocks base method.
func (m *MockManager) Get(ctx context.Context, name string) (*groups.Group, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", ctx, name)
	ret0, _ := ret[0].(*groups.Group)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Get indicates an expected call of Get.
func (mr *MockManagerMockRecorder) Get(ctx, name any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockManager)(nil).Get), ctx, name)
}

// List mocks base method.
func (m *MockManager) List(ctx context.Context) ([]*groups.Group, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List", ctx)
	ret0, _ := ret[0].([]*groups.Group)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// List indicates an expected call of List.
func (mr *MockManagerMockRecorder) List(ctx any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockManager)(nil).List), ctx)
}

// RegisterClients mocks base method.
func (m *MockManager) RegisterClients(ctx context.Context, groupNames, clientNames []string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "RegisterClients", ctx, groupNames, clientNames)
	ret0, _ := ret[0].(error)
	return ret0
}

// RegisterClients indicates an expected call of RegisterClients.
func (mr *MockManagerMockRecorder) RegisterClients(ctx, groupNames, clientNames any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "RegisterClients", reflect.TypeOf((*MockManager)(nil).RegisterClients), ctx, groupNames, clientNames)
}

// UnregisterClients mocks base method.
func (m *MockManager) UnregisterClients(ctx context.Context, groupNames, clientNames []string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "UnregisterClients", ctx, groupNames, clientNames)
	ret0, _ := ret[0].(error)
	return ret0
}

// UnregisterClients indicates an expected call of UnregisterClients.
func (mr *MockManagerMockRecorder) UnregisterClients(ctx, groupNames, clientNames any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UnregisterClients", reflect.TypeOf((*MockManager)(nil).UnregisterClients), ctx, groupNames, clientNames)
}

// Update mocks base method.
func (m *MockManager) Update(ctx context.Context, group *groups.Group) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Update", ctx, group)
	ret0, _ := ret[0].(error)
	return ret0
}

// Update indicates an expected call of Update.
func (mr *MockManagerMockRecorder) Update(ctx, group any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Update", reflect.TypeOf((*MockManager)(nil).Update), ctx, group)
}
