// Code generated by MockGen. DO NOT EDIT.
// Source: inference.go
//
// Generated by this command:
//
//	mockgen -source inference.go -package=mocks InferenceService
//

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

import (
	context "context"
	reflect "reflect"

	godo "github.com/digitalocean/godo"
	gomock "go.uber.org/mock/gomock"
)

// MockInferenceService is a mock of InferenceService interface.
type MockInferenceService struct {
	ctrl     *gomock.Controller
	recorder *MockInferenceServiceMockRecorder
	isgomock struct{}
}

// MockInferenceServiceMockRecorder is the mock recorder for MockInferenceService.
type MockInferenceServiceMockRecorder struct {
	mock *MockInferenceService
}

// NewMockInferenceService creates a new mock instance.
func NewMockInferenceService(ctrl *gomock.Controller) *MockInferenceService {
	mock := &MockInferenceService{ctrl: ctrl}
	mock.recorder = &MockInferenceServiceMockRecorder{mock}
	return mock
}

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

// CreateAsyncInvocation mocks base method.
func (m *MockInferenceService) CreateAsyncInvocation(ctx context.Context, params *godo.AsyncInvocationNewParams) (*godo.AsyncInvocation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateAsyncInvocation", ctx, params)
	ret0, _ := ret[0].(*godo.AsyncInvocation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateAsyncInvocation indicates an expected call of CreateAsyncInvocation.
func (mr *MockInferenceServiceMockRecorder) CreateAsyncInvocation(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateAsyncInvocation", reflect.TypeOf((*MockInferenceService)(nil).CreateAsyncInvocation), ctx, params)
}

// CreateChatCompletion mocks base method.
func (m *MockInferenceService) CreateChatCompletion(ctx context.Context, params *godo.ChatCompletionNewParams) (*godo.ChatCompletion, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateChatCompletion", ctx, params)
	ret0, _ := ret[0].(*godo.ChatCompletion)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateChatCompletion indicates an expected call of CreateChatCompletion.
func (mr *MockInferenceServiceMockRecorder) CreateChatCompletion(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateChatCompletion", reflect.TypeOf((*MockInferenceService)(nil).CreateChatCompletion), ctx, params)
}

// CreateChatCompletionStreaming mocks base method.
func (m *MockInferenceService) CreateChatCompletionStreaming(ctx context.Context, params *godo.ChatCompletionNewParams) (*godo.ChatCompletionStream, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateChatCompletionStreaming", ctx, params)
	ret0, _ := ret[0].(*godo.ChatCompletionStream)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateChatCompletionStreaming indicates an expected call of CreateChatCompletionStreaming.
func (mr *MockInferenceServiceMockRecorder) CreateChatCompletionStreaming(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateChatCompletionStreaming", reflect.TypeOf((*MockInferenceService)(nil).CreateChatCompletionStreaming), ctx, params)
}

// CreateEmbedding mocks base method.
func (m *MockInferenceService) CreateEmbedding(ctx context.Context, params *godo.EmbeddingNewParams) (*godo.CreateEmbeddingResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateEmbedding", ctx, params)
	ret0, _ := ret[0].(*godo.CreateEmbeddingResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateEmbedding indicates an expected call of CreateEmbedding.
func (mr *MockInferenceServiceMockRecorder) CreateEmbedding(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateEmbedding", reflect.TypeOf((*MockInferenceService)(nil).CreateEmbedding), ctx, params)
}

// CreateMessage mocks base method.
func (m *MockInferenceService) CreateMessage(ctx context.Context, params *godo.MessageNewParams) (*godo.Message, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateMessage", ctx, params)
	ret0, _ := ret[0].(*godo.Message)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateMessage indicates an expected call of CreateMessage.
func (mr *MockInferenceServiceMockRecorder) CreateMessage(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateMessage", reflect.TypeOf((*MockInferenceService)(nil).CreateMessage), ctx, params)
}

// CreateMessageStreaming mocks base method.
func (m *MockInferenceService) CreateMessageStreaming(ctx context.Context, params *godo.MessageNewParams) (*godo.MessageStream, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateMessageStreaming", ctx, params)
	ret0, _ := ret[0].(*godo.MessageStream)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateMessageStreaming indicates an expected call of CreateMessageStreaming.
func (mr *MockInferenceServiceMockRecorder) CreateMessageStreaming(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateMessageStreaming", reflect.TypeOf((*MockInferenceService)(nil).CreateMessageStreaming), ctx, params)
}

// CreateResponse mocks base method.
func (m *MockInferenceService) CreateResponse(ctx context.Context, params *godo.ResponseNewParams) (*godo.ResponsesResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateResponse", ctx, params)
	ret0, _ := ret[0].(*godo.ResponsesResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateResponse indicates an expected call of CreateResponse.
func (mr *MockInferenceServiceMockRecorder) CreateResponse(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateResponse", reflect.TypeOf((*MockInferenceService)(nil).CreateResponse), ctx, params)
}

// CreateResponseStreaming mocks base method.
func (m *MockInferenceService) CreateResponseStreaming(ctx context.Context, params *godo.ResponseNewParams) (*godo.ResponseStream, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateResponseStreaming", ctx, params)
	ret0, _ := ret[0].(*godo.ResponseStream)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CreateResponseStreaming indicates an expected call of CreateResponseStreaming.
func (mr *MockInferenceServiceMockRecorder) CreateResponseStreaming(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CreateResponseStreaming", reflect.TypeOf((*MockInferenceService)(nil).CreateResponseStreaming), ctx, params)
}

// GenerateImage mocks base method.
func (m *MockInferenceService) GenerateImage(ctx context.Context, params *godo.ImageGenerateParams) (*godo.ImagesResponse, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GenerateImage", ctx, params)
	ret0, _ := ret[0].(*godo.ImagesResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GenerateImage indicates an expected call of GenerateImage.
func (mr *MockInferenceServiceMockRecorder) GenerateImage(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GenerateImage", reflect.TypeOf((*MockInferenceService)(nil).GenerateImage), ctx, params)
}

// GenerateImageStreaming mocks base method.
func (m *MockInferenceService) GenerateImageStreaming(ctx context.Context, params *godo.ImageGenerateParams) (*godo.ImageGenerationStream, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GenerateImageStreaming", ctx, params)
	ret0, _ := ret[0].(*godo.ImageGenerationStream)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GenerateImageStreaming indicates an expected call of GenerateImageStreaming.
func (mr *MockInferenceServiceMockRecorder) GenerateImageStreaming(ctx, params any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GenerateImageStreaming", reflect.TypeOf((*MockInferenceService)(nil).GenerateImageStreaming), ctx, params)
}

// GetAsyncInvocation mocks base method.
func (m *MockInferenceService) GetAsyncInvocation(ctx context.Context, requestID string) (*godo.AsyncInvocation, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAsyncInvocation", ctx, requestID)
	ret0, _ := ret[0].(*godo.AsyncInvocation)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetAsyncInvocation indicates an expected call of GetAsyncInvocation.
func (mr *MockInferenceServiceMockRecorder) GetAsyncInvocation(ctx, requestID any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetAsyncInvocation", reflect.TypeOf((*MockInferenceService)(nil).GetAsyncInvocation), ctx, requestID)
}

// ListModels mocks base method.
func (m *MockInferenceService) ListModels(ctx context.Context) (*godo.ModelList, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListModels", ctx)
	ret0, _ := ret[0].(*godo.ModelList)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ListModels indicates an expected call of ListModels.
func (mr *MockInferenceServiceMockRecorder) ListModels(ctx any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ListModels", reflect.TypeOf((*MockInferenceService)(nil).ListModels), ctx)
}
