// Code generated by MockGen. DO NOT EDIT.
// Source: pkg/agentbay/interface/agentbay_interface.go

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

import (
	reflect "reflect"

	agentbay "github.com/aliyun/wuying-agentbay-sdk/golang/pkg/agentbay"
	gomock "github.com/golang/mock/gomock"
)

// MockAgentBayInterface is a mock of AgentBayInterface interface.
type MockAgentBayInterface struct {
	ctrl     *gomock.Controller
	recorder *MockAgentBayInterfaceMockRecorder
}

// MockAgentBayInterfaceMockRecorder is the mock recorder for MockAgentBayInterface.
type MockAgentBayInterfaceMockRecorder struct {
	mock *MockAgentBayInterface
}

// NewMockAgentBayInterface creates a new mock instance.
func NewMockAgentBayInterface(ctrl *gomock.Controller) *MockAgentBayInterface {
	mock := &MockAgentBayInterface{ctrl: ctrl}
	mock.recorder = &MockAgentBayInterfaceMockRecorder{mock}
	return mock
}

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

// Create mocks base method.
func (m *MockAgentBayInterface) Create(params *agentbay.CreateSessionParams) (*agentbay.SessionResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Create", params)
	ret0, _ := ret[0].(*agentbay.SessionResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Create indicates an expected call of Create.
func (mr *MockAgentBayInterfaceMockRecorder) Create(params interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Create", reflect.TypeOf((*MockAgentBayInterface)(nil).Create), params)
}

// Delete mocks base method.
func (m *MockAgentBayInterface) Delete(session *agentbay.Session, syncContext ...bool) (*agentbay.DeleteResult, error) {
	m.ctrl.T.Helper()
	varargs := []interface{}{session}
	for _, a := range syncContext {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "Delete", varargs...)
	ret0, _ := ret[0].(*agentbay.DeleteResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// Delete indicates an expected call of Delete.
func (mr *MockAgentBayInterfaceMockRecorder) Delete(session interface{}, syncContext ...interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]interface{}{session}, syncContext...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Delete", reflect.TypeOf((*MockAgentBayInterface)(nil).Delete), varargs...)
}

// List mocks base method.
func (m *MockAgentBayInterface) List(labels map[string]string, page *int, limit *int32) (*agentbay.SessionListResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List", labels, page, limit)
	ret0, _ := ret[0].(*agentbay.SessionListResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// List indicates an expected call of List.
func (mr *MockAgentBayInterfaceMockRecorder) List(labels, page, limit interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockAgentBayInterface)(nil).List), labels, page, limit)
}

// ListByLabels mocks base method.
func (m *MockAgentBayInterface) ListByLabels(params *agentbay.ListSessionParams) (*agentbay.SessionListResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListByLabels", params)
	ret0, _ := ret[0].(*agentbay.SessionListResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListByLabels indicates an expected call of ListByLabels.
func (mr *MockAgentBayInterfaceMockRecorder) ListByLabels(params interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListByLabels", reflect.TypeOf((*MockAgentBayInterface)(nil).ListByLabels), params)
}
