// Code generated by MockGen. DO NOT EDIT.
// Source: gitlab.com/gitlab-org/api/client-go (interfaces: FeatureFlagUserListsServiceInterface)
//
// Generated by this command:
//
//	mockgen -typed -destination=feature_flag_user_lists_mock.go -write_package_comment=false -package=testing gitlab.com/gitlab-org/api/client-go FeatureFlagUserListsServiceInterface
//

package testing

import (
	reflect "reflect"

	gitlab "gitlab.com/gitlab-org/api/client-go"
	gomock "go.uber.org/mock/gomock"
)

// MockFeatureFlagUserListsServiceInterface is a mock of FeatureFlagUserListsServiceInterface interface.
type MockFeatureFlagUserListsServiceInterface struct {
	ctrl     *gomock.Controller
	recorder *MockFeatureFlagUserListsServiceInterfaceMockRecorder
	isgomock struct{}
}

// MockFeatureFlagUserListsServiceInterfaceMockRecorder is the mock recorder for MockFeatureFlagUserListsServiceInterface.
type MockFeatureFlagUserListsServiceInterfaceMockRecorder struct {
	mock *MockFeatureFlagUserListsServiceInterface
}

// NewMockFeatureFlagUserListsServiceInterface creates a new mock instance.
func NewMockFeatureFlagUserListsServiceInterface(ctrl *gomock.Controller) *MockFeatureFlagUserListsServiceInterface {
	mock := &MockFeatureFlagUserListsServiceInterface{ctrl: ctrl}
	mock.recorder = &MockFeatureFlagUserListsServiceInterfaceMockRecorder{mock}
	return mock
}

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

// CreateFeatureFlagUserList mocks base method.
func (m *MockFeatureFlagUserListsServiceInterface) CreateFeatureFlagUserList(pid any, opt *gitlab.CreateFeatureFlagUserListOptions, options ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{pid, opt}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "CreateFeatureFlagUserList", varargs...)
	ret0, _ := ret[0].(*gitlab.FeatureFlagUserList)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// CreateFeatureFlagUserList indicates an expected call of CreateFeatureFlagUserList.
func (mr *MockFeatureFlagUserListsServiceInterfaceMockRecorder) CreateFeatureFlagUserList(pid, opt any, options ...any) *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, opt}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateFeatureFlagUserList", reflect.TypeOf((*MockFeatureFlagUserListsServiceInterface)(nil).CreateFeatureFlagUserList), varargs...)
	return &MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall{Call: call}
}

// MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall wrap *gomock.Call
type MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall) Return(arg0 *gitlab.FeatureFlagUserList, arg1 *gitlab.Response, arg2 error) *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall) Do(f func(any, *gitlab.CreateFeatureFlagUserListOptions, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall) DoAndReturn(f func(any, *gitlab.CreateFeatureFlagUserListOptions, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceCreateFeatureFlagUserListCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// DeleteFeatureFlagUserList mocks base method.
func (m *MockFeatureFlagUserListsServiceInterface) DeleteFeatureFlagUserList(pid any, iid int64, options ...gitlab.RequestOptionFunc) (*gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{pid, iid}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "DeleteFeatureFlagUserList", varargs...)
	ret0, _ := ret[0].(*gitlab.Response)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// DeleteFeatureFlagUserList indicates an expected call of DeleteFeatureFlagUserList.
func (mr *MockFeatureFlagUserListsServiceInterfaceMockRecorder) DeleteFeatureFlagUserList(pid, iid any, options ...any) *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, iid}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteFeatureFlagUserList", reflect.TypeOf((*MockFeatureFlagUserListsServiceInterface)(nil).DeleteFeatureFlagUserList), varargs...)
	return &MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall{Call: call}
}

// MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall wrap *gomock.Call
type MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall) Return(arg0 *gitlab.Response, arg1 error) *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall {
	c.Call = c.Call.Return(arg0, arg1)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall) Do(f func(any, int64, ...gitlab.RequestOptionFunc) (*gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall) DoAndReturn(f func(any, int64, ...gitlab.RequestOptionFunc) (*gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceDeleteFeatureFlagUserListCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// GetFeatureFlagUserList mocks base method.
func (m *MockFeatureFlagUserListsServiceInterface) GetFeatureFlagUserList(pid any, iid int64, options ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{pid, iid}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "GetFeatureFlagUserList", varargs...)
	ret0, _ := ret[0].(*gitlab.FeatureFlagUserList)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetFeatureFlagUserList indicates an expected call of GetFeatureFlagUserList.
func (mr *MockFeatureFlagUserListsServiceInterfaceMockRecorder) GetFeatureFlagUserList(pid, iid any, options ...any) *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, iid}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetFeatureFlagUserList", reflect.TypeOf((*MockFeatureFlagUserListsServiceInterface)(nil).GetFeatureFlagUserList), varargs...)
	return &MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall{Call: call}
}

// MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall wrap *gomock.Call
type MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall) Return(arg0 *gitlab.FeatureFlagUserList, arg1 *gitlab.Response, arg2 error) *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall) Do(f func(any, int64, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall) DoAndReturn(f func(any, int64, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceGetFeatureFlagUserListCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// ListFeatureFlagUserLists mocks base method.
func (m *MockFeatureFlagUserListsServiceInterface) ListFeatureFlagUserLists(pid any, opt *gitlab.ListFeatureFlagUserListsOptions, options ...gitlab.RequestOptionFunc) ([]*gitlab.FeatureFlagUserList, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{pid, opt}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "ListFeatureFlagUserLists", varargs...)
	ret0, _ := ret[0].([]*gitlab.FeatureFlagUserList)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// ListFeatureFlagUserLists indicates an expected call of ListFeatureFlagUserLists.
func (mr *MockFeatureFlagUserListsServiceInterfaceMockRecorder) ListFeatureFlagUserLists(pid, opt any, options ...any) *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, opt}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListFeatureFlagUserLists", reflect.TypeOf((*MockFeatureFlagUserListsServiceInterface)(nil).ListFeatureFlagUserLists), varargs...)
	return &MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall{Call: call}
}

// MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall wrap *gomock.Call
type MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall) Return(arg0 []*gitlab.FeatureFlagUserList, arg1 *gitlab.Response, arg2 error) *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall) Do(f func(any, *gitlab.ListFeatureFlagUserListsOptions, ...gitlab.RequestOptionFunc) ([]*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall) DoAndReturn(f func(any, *gitlab.ListFeatureFlagUserListsOptions, ...gitlab.RequestOptionFunc) ([]*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceListFeatureFlagUserListsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

// UpdateFeatureFlagUserList mocks base method.
func (m *MockFeatureFlagUserListsServiceInterface) UpdateFeatureFlagUserList(pid any, iid int64, opt *gitlab.UpdateFeatureFlagUserListOptions, options ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error) {
	m.ctrl.T.Helper()
	varargs := []any{pid, iid, opt}
	for _, a := range options {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "UpdateFeatureFlagUserList", varargs...)
	ret0, _ := ret[0].(*gitlab.FeatureFlagUserList)
	ret1, _ := ret[1].(*gitlab.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// UpdateFeatureFlagUserList indicates an expected call of UpdateFeatureFlagUserList.
func (mr *MockFeatureFlagUserListsServiceInterfaceMockRecorder) UpdateFeatureFlagUserList(pid, iid, opt any, options ...any) *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, iid, opt}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateFeatureFlagUserList", reflect.TypeOf((*MockFeatureFlagUserListsServiceInterface)(nil).UpdateFeatureFlagUserList), varargs...)
	return &MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall{Call: call}
}

// MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall wrap *gomock.Call
type MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall struct {
	*gomock.Call
}

// Return rewrite *gomock.Call.Return
func (c *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall) Return(arg0 *gitlab.FeatureFlagUserList, arg1 *gitlab.Response, arg2 error) *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall {
	c.Call = c.Call.Return(arg0, arg1, arg2)
	return c
}

// Do rewrite *gomock.Call.Do
func (c *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall) Do(f func(any, int64, *gitlab.UpdateFeatureFlagUserListOptions, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall) DoAndReturn(f func(any, int64, *gitlab.UpdateFeatureFlagUserListOptions, ...gitlab.RequestOptionFunc) (*gitlab.FeatureFlagUserList, *gitlab.Response, error)) *MockFeatureFlagUserListsServiceInterfaceUpdateFeatureFlagUserListCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}
