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

package testing

import (
	reflect "reflect"

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

// MockMergeRequestApprovalsServiceInterface is a mock of MergeRequestApprovalsServiceInterface interface.
type MockMergeRequestApprovalsServiceInterface struct {
	ctrl     *gomock.Controller
	recorder *MockMergeRequestApprovalsServiceInterfaceMockRecorder
	isgomock struct{}
}

// MockMergeRequestApprovalsServiceInterfaceMockRecorder is the mock recorder for MockMergeRequestApprovalsServiceInterface.
type MockMergeRequestApprovalsServiceInterfaceMockRecorder struct {
	mock *MockMergeRequestApprovalsServiceInterface
}

// NewMockMergeRequestApprovalsServiceInterface creates a new mock instance.
func NewMockMergeRequestApprovalsServiceInterface(ctrl *gomock.Controller) *MockMergeRequestApprovalsServiceInterface {
	mock := &MockMergeRequestApprovalsServiceInterface{ctrl: ctrl}
	mock.recorder = &MockMergeRequestApprovalsServiceInterfaceMockRecorder{mock}
	return mock
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// DeleteApprovalRule indicates an expected call of DeleteApprovalRule.
func (mr *MockMergeRequestApprovalsServiceInterfaceMockRecorder) DeleteApprovalRule(pid, mergeRequest, approvalRule any, options ...any) *MockMergeRequestApprovalsServiceInterfaceDeleteApprovalRuleCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mergeRequest, approvalRule}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "DeleteApprovalRule", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).DeleteApprovalRule), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceDeleteApprovalRuleCall{Call: call}
}

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

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

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

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

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

// GetApprovalRules indicates an expected call of GetApprovalRules.
func (mr *MockMergeRequestApprovalsServiceInterfaceMockRecorder) GetApprovalRules(pid, mergeRequest any, options ...any) *MockMergeRequestApprovalsServiceInterfaceGetApprovalRulesCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mergeRequest}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetApprovalRules", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).GetApprovalRules), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceGetApprovalRulesCall{Call: call}
}

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

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

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

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

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

// GetApprovalState indicates an expected call of GetApprovalState.
func (mr *MockMergeRequestApprovalsServiceInterfaceMockRecorder) GetApprovalState(pid, mergeRequest any, options ...any) *MockMergeRequestApprovalsServiceInterfaceGetApprovalStateCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mergeRequest}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetApprovalState", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).GetApprovalState), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceGetApprovalStateCall{Call: call}
}

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

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

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

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

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

// GetConfiguration indicates an expected call of GetConfiguration.
func (mr_2 *MockMergeRequestApprovalsServiceInterfaceMockRecorder) GetConfiguration(pid, mr any, options ...any) *MockMergeRequestApprovalsServiceInterfaceGetConfigurationCall {
	mr_2.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mr}, options...)
	call := mr_2.mock.ctrl.RecordCallWithMethodType(mr_2.mock, "GetConfiguration", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).GetConfiguration), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceGetConfigurationCall{Call: call}
}

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

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

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

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

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

// ResetApprovalsOfMergeRequest indicates an expected call of ResetApprovalsOfMergeRequest.
func (mr_2 *MockMergeRequestApprovalsServiceInterfaceMockRecorder) ResetApprovalsOfMergeRequest(pid, mr any, options ...any) *MockMergeRequestApprovalsServiceInterfaceResetApprovalsOfMergeRequestCall {
	mr_2.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mr}, options...)
	call := mr_2.mock.ctrl.RecordCallWithMethodType(mr_2.mock, "ResetApprovalsOfMergeRequest", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).ResetApprovalsOfMergeRequest), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceResetApprovalsOfMergeRequestCall{Call: call}
}

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

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

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

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

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

// UnapproveMergeRequest indicates an expected call of UnapproveMergeRequest.
func (mr_2 *MockMergeRequestApprovalsServiceInterfaceMockRecorder) UnapproveMergeRequest(pid, mr any, options ...any) *MockMergeRequestApprovalsServiceInterfaceUnapproveMergeRequestCall {
	mr_2.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mr}, options...)
	call := mr_2.mock.ctrl.RecordCallWithMethodType(mr_2.mock, "UnapproveMergeRequest", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).UnapproveMergeRequest), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceUnapproveMergeRequestCall{Call: call}
}

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

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

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

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

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

// UpdateApprovalRule indicates an expected call of UpdateApprovalRule.
func (mr *MockMergeRequestApprovalsServiceInterfaceMockRecorder) UpdateApprovalRule(pid, mergeRequest, approvalRule, opt any, options ...any) *MockMergeRequestApprovalsServiceInterfaceUpdateApprovalRuleCall {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{pid, mergeRequest, approvalRule, opt}, options...)
	call := mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "UpdateApprovalRule", reflect.TypeOf((*MockMergeRequestApprovalsServiceInterface)(nil).UpdateApprovalRule), varargs...)
	return &MockMergeRequestApprovalsServiceInterfaceUpdateApprovalRuleCall{Call: call}
}

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

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

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

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