// Code generated by MockGen. DO NOT EDIT.
// Source: service.go
//
// Generated by this command:
//
//	mockgen -destination=mocks/mock_service.go -package=mocks -source=service.go SkillService
//

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

import (
	context "context"
	reflect "reflect"

	skills "github.com/stacklok/toolhive/pkg/skills"
	gomock "go.uber.org/mock/gomock"
)

// MockSkillService is a mock of SkillService interface.
type MockSkillService struct {
	ctrl     *gomock.Controller
	recorder *MockSkillServiceMockRecorder
	isgomock struct{}
}

// MockSkillServiceMockRecorder is the mock recorder for MockSkillService.
type MockSkillServiceMockRecorder struct {
	mock *MockSkillService
}

// NewMockSkillService creates a new mock instance.
func NewMockSkillService(ctrl *gomock.Controller) *MockSkillService {
	mock := &MockSkillService{ctrl: ctrl}
	mock.recorder = &MockSkillServiceMockRecorder{mock}
	return mock
}

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

// Build mocks base method.
func (m *MockSkillService) Build(ctx context.Context, opts skills.BuildOptions) (*skills.BuildResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Build", ctx, opts)
	ret0, _ := ret[0].(*skills.BuildResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteBuild mocks base method.
func (m *MockSkillService) DeleteBuild(ctx context.Context, tag string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteBuild", ctx, tag)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// GetContent mocks base method.
func (m *MockSkillService) GetContent(ctx context.Context, opts skills.ContentOptions) (*skills.SkillContent, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetContent", ctx, opts)
	ret0, _ := ret[0].(*skills.SkillContent)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// Info mocks base method.
func (m *MockSkillService) Info(ctx context.Context, opts skills.InfoOptions) (*skills.SkillInfo, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Info", ctx, opts)
	ret0, _ := ret[0].(*skills.SkillInfo)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// Install mocks base method.
func (m *MockSkillService) Install(ctx context.Context, opts skills.InstallOptions) (*skills.InstallResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Install", ctx, opts)
	ret0, _ := ret[0].(*skills.InstallResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// List mocks base method.
func (m *MockSkillService) List(ctx context.Context, opts skills.ListOptions) ([]skills.InstalledSkill, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List", ctx, opts)
	ret0, _ := ret[0].([]skills.InstalledSkill)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

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

// Push mocks base method.
func (m *MockSkillService) Push(ctx context.Context, opts skills.PushOptions) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Push", ctx, opts)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// Uninstall mocks base method.
func (m *MockSkillService) Uninstall(ctx context.Context, opts skills.UninstallOptions) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Uninstall", ctx, opts)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// Validate mocks base method.
func (m *MockSkillService) Validate(ctx context.Context, path string) (*skills.ValidationResult, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Validate", ctx, path)
	ret0, _ := ret[0].(*skills.ValidationResult)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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