// Code generated by MockGen. DO NOT EDIT.
// Source: interface.go
//
// Generated by this command:
//
//	mockgen -source=interface.go -package=mock -destination=mock\mock_windows.go
//

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

import (
	reflect "reflect"

	gomock "go.uber.org/mock/gomock"
	windows "golang.org/x/sys/windows"
)

// MockAPI is a mock of API interface.
type MockAPI struct {
	ctrl     *gomock.Controller
	recorder *MockAPIMockRecorder
	isgomock struct{}
}

// MockAPIMockRecorder is the mock recorder for MockAPI.
type MockAPIMockRecorder struct {
	mock *MockAPI
}

// NewMockAPI creates a new mock instance.
func NewMockAPI(ctrl *gomock.Controller) *MockAPI {
	mock := &MockAPI{ctrl: ctrl}
	mock.recorder = &MockAPIMockRecorder{mock}
	return mock
}

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

// CloseHandle mocks base method.
func (m *MockAPI) CloseHandle(h windows.Handle) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CloseHandle", h)
	ret0, _ := ret[0].(error)
	return ret0
}

// CloseHandle indicates an expected call of CloseHandle.
func (mr *MockAPIMockRecorder) CloseHandle(h any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseHandle", reflect.TypeOf((*MockAPI)(nil).CloseHandle), h)
}

// CloseToken mocks base method.
func (m *MockAPI) CloseToken(token windows.Token) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CloseToken", token)
	ret0, _ := ret[0].(error)
	return ret0
}

// CloseToken indicates an expected call of CloseToken.
func (mr *MockAPIMockRecorder) CloseToken(token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CloseToken", reflect.TypeOf((*MockAPI)(nil).CloseToken), token)
}

// CreateToolhelp32Snapshot mocks base method.
func (m *MockAPI) CreateToolhelp32Snapshot(flags, processID uint32) (windows.Handle, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateToolhelp32Snapshot", flags, processID)
	ret0, _ := ret[0].(windows.Handle)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateToolhelp32Snapshot indicates an expected call of CreateToolhelp32Snapshot.
func (mr *MockAPIMockRecorder) CreateToolhelp32Snapshot(flags, processID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateToolhelp32Snapshot", reflect.TypeOf((*MockAPI)(nil).CreateToolhelp32Snapshot), flags, processID)
}

// GetTokenUser mocks base method.
func (m *MockAPI) GetTokenUser(token windows.Token) (*windows.Tokenuser, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetTokenUser", token)
	ret0, _ := ret[0].(*windows.Tokenuser)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetTokenUser indicates an expected call of GetTokenUser.
func (mr *MockAPIMockRecorder) GetTokenUser(token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetTokenUser", reflect.TypeOf((*MockAPI)(nil).GetTokenUser), token)
}

// LookupAccount mocks base method.
func (m *MockAPI) LookupAccount(sid *windows.SID, system string) (string, string, uint32, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "LookupAccount", sid, system)
	ret0, _ := ret[0].(string)
	ret1, _ := ret[1].(string)
	ret2, _ := ret[2].(uint32)
	ret3, _ := ret[3].(error)
	return ret0, ret1, ret2, ret3
}

// LookupAccount indicates an expected call of LookupAccount.
func (mr *MockAPIMockRecorder) LookupAccount(sid, system any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "LookupAccount", reflect.TypeOf((*MockAPI)(nil).LookupAccount), sid, system)
}

// OpenProcess mocks base method.
func (m *MockAPI) OpenProcess(desiredAccess uint32, inheritHandle bool, processID uint32) (windows.Handle, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "OpenProcess", desiredAccess, inheritHandle, processID)
	ret0, _ := ret[0].(windows.Handle)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// OpenProcess indicates an expected call of OpenProcess.
func (mr *MockAPIMockRecorder) OpenProcess(desiredAccess, inheritHandle, processID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenProcess", reflect.TypeOf((*MockAPI)(nil).OpenProcess), desiredAccess, inheritHandle, processID)
}

// OpenProcessToken mocks base method.
func (m *MockAPI) OpenProcessToken(process windows.Handle, desiredAccess uint32, token *windows.Token) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "OpenProcessToken", process, desiredAccess, token)
	ret0, _ := ret[0].(error)
	return ret0
}

// OpenProcessToken indicates an expected call of OpenProcessToken.
func (mr *MockAPIMockRecorder) OpenProcessToken(process, desiredAccess, token any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "OpenProcessToken", reflect.TypeOf((*MockAPI)(nil).OpenProcessToken), process, desiredAccess, token)
}

// Process32First mocks base method.
func (m *MockAPI) Process32First(snapshot windows.Handle, pe *windows.ProcessEntry32) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Process32First", snapshot, pe)
	ret0, _ := ret[0].(error)
	return ret0
}

// Process32First indicates an expected call of Process32First.
func (mr *MockAPIMockRecorder) Process32First(snapshot, pe any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Process32First", reflect.TypeOf((*MockAPI)(nil).Process32First), snapshot, pe)
}

// Process32Next mocks base method.
func (m *MockAPI) Process32Next(snapshot windows.Handle, pe *windows.ProcessEntry32) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Process32Next", snapshot, pe)
	ret0, _ := ret[0].(error)
	return ret0
}

// Process32Next indicates an expected call of Process32Next.
func (mr *MockAPIMockRecorder) Process32Next(snapshot, pe any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Process32Next", reflect.TypeOf((*MockAPI)(nil).Process32Next), snapshot, pe)
}
