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

package testing

import (
	reflect "reflect"

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

// MockAuditEventsServiceInterface is a mock of AuditEventsServiceInterface interface.
type MockAuditEventsServiceInterface struct {
	ctrl     *gomock.Controller
	recorder *MockAuditEventsServiceInterfaceMockRecorder
	isgomock struct{}
}

// MockAuditEventsServiceInterfaceMockRecorder is the mock recorder for MockAuditEventsServiceInterface.
type MockAuditEventsServiceInterfaceMockRecorder struct {
	mock *MockAuditEventsServiceInterface
}

// NewMockAuditEventsServiceInterface creates a new mock instance.
func NewMockAuditEventsServiceInterface(ctrl *gomock.Controller) *MockAuditEventsServiceInterface {
	mock := &MockAuditEventsServiceInterface{ctrl: ctrl}
	mock.recorder = &MockAuditEventsServiceInterfaceMockRecorder{mock}
	return mock
}

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

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

// GetGroupAuditEvent indicates an expected call of GetGroupAuditEvent.
func (mr *MockAuditEventsServiceInterfaceMockRecorder) GetGroupAuditEvent(gid, event any, options ...any) *MockAuditEventsServiceInterfaceGetGroupAuditEventCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{gid, event}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetGroupAuditEvent", reflect.TypeOf((*MockAuditEventsServiceInterface)(nil).GetGroupAuditEvent), varargs...)
	return &MockAuditEventsServiceInterfaceGetGroupAuditEventCall{Call: call}
}

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

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

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

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

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

// GetInstanceAuditEvent indicates an expected call of GetInstanceAuditEvent.
func (mr *MockAuditEventsServiceInterfaceMockRecorder) GetInstanceAuditEvent(event any, options ...any) *MockAuditEventsServiceInterfaceGetInstanceAuditEventCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{event}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetInstanceAuditEvent", reflect.TypeOf((*MockAuditEventsServiceInterface)(nil).GetInstanceAuditEvent), varargs...)
	return &MockAuditEventsServiceInterfaceGetInstanceAuditEventCall{Call: call}
}

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

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

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

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

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

// GetProjectAuditEvent indicates an expected call of GetProjectAuditEvent.
func (mr *MockAuditEventsServiceInterfaceMockRecorder) GetProjectAuditEvent(pid, event any, options ...any) *MockAuditEventsServiceInterfaceGetProjectAuditEventCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, event}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetProjectAuditEvent", reflect.TypeOf((*MockAuditEventsServiceInterface)(nil).GetProjectAuditEvent), varargs...)
	return &MockAuditEventsServiceInterfaceGetProjectAuditEventCall{Call: call}
}

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

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

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

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

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

// ListGroupAuditEvents indicates an expected call of ListGroupAuditEvents.
func (mr *MockAuditEventsServiceInterfaceMockRecorder) ListGroupAuditEvents(gid, opt any, options ...any) *MockAuditEventsServiceInterfaceListGroupAuditEventsCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{gid, opt}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListGroupAuditEvents", reflect.TypeOf((*MockAuditEventsServiceInterface)(nil).ListGroupAuditEvents), varargs...)
	return &MockAuditEventsServiceInterfaceListGroupAuditEventsCall{Call: call}
}

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

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

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

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

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

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

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

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

// Do rewrite *gomock.Call.Do
func (c *MockAuditEventsServiceInterfaceListInstanceAuditEventsCall) Do(f func(*gitlab.ListAuditEventsOptions, ...gitlab.RequestOptionFunc) ([]*gitlab.AuditEvent, *gitlab.Response, error)) *MockAuditEventsServiceInterfaceListInstanceAuditEventsCall {
	c.Call = c.Call.Do(f)
	return c
}

// DoAndReturn rewrite *gomock.Call.DoAndReturn
func (c *MockAuditEventsServiceInterfaceListInstanceAuditEventsCall) DoAndReturn(f func(*gitlab.ListAuditEventsOptions, ...gitlab.RequestOptionFunc) ([]*gitlab.AuditEvent, *gitlab.Response, error)) *MockAuditEventsServiceInterfaceListInstanceAuditEventsCall {
	c.Call = c.Call.DoAndReturn(f)
	return c
}

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

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

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

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

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

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