// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/hetznercloud/cli/internal/hcapi2 (interfaces: ServerTypeClient)

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

import (
	context "context"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	hcloud "github.com/hetznercloud/hcloud-go/v2/hcloud"
)

// MockServerTypeClient is a mock of ServerTypeClient interface.
type MockServerTypeClient struct {
	ctrl     *gomock.Controller
	recorder *MockServerTypeClientMockRecorder
}

// MockServerTypeClientMockRecorder is the mock recorder for MockServerTypeClient.
type MockServerTypeClientMockRecorder struct {
	mock *MockServerTypeClient
}

// NewMockServerTypeClient creates a new mock instance.
func NewMockServerTypeClient(ctrl *gomock.Controller) *MockServerTypeClient {
	mock := &MockServerTypeClient{ctrl: ctrl}
	mock.recorder = &MockServerTypeClientMockRecorder{mock}
	return mock
}

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

// All mocks base method.
func (m *MockServerTypeClient) All(arg0 context.Context) ([]*hcloud.ServerType, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "All", arg0)
	ret0, _ := ret[0].([]*hcloud.ServerType)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// All indicates an expected call of All.
func (mr *MockServerTypeClientMockRecorder) All(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "All", reflect.TypeOf((*MockServerTypeClient)(nil).All), arg0)
}

// AllWithOpts mocks base method.
func (m *MockServerTypeClient) AllWithOpts(arg0 context.Context, arg1 hcloud.ServerTypeListOpts) ([]*hcloud.ServerType, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "AllWithOpts", arg0, arg1)
	ret0, _ := ret[0].([]*hcloud.ServerType)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// AllWithOpts indicates an expected call of AllWithOpts.
func (mr *MockServerTypeClientMockRecorder) AllWithOpts(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "AllWithOpts", reflect.TypeOf((*MockServerTypeClient)(nil).AllWithOpts), arg0, arg1)
}

// Get mocks base method.
func (m *MockServerTypeClient) Get(arg0 context.Context, arg1 string) (*hcloud.ServerType, *hcloud.Response, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Get", arg0, arg1)
	ret0, _ := ret[0].(*hcloud.ServerType)
	ret1, _ := ret[1].(*hcloud.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// Get indicates an expected call of Get.
func (mr *MockServerTypeClientMockRecorder) Get(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Get", reflect.TypeOf((*MockServerTypeClient)(nil).Get), arg0, arg1)
}

// GetByID mocks base method.
func (m *MockServerTypeClient) GetByID(arg0 context.Context, arg1 int64) (*hcloud.ServerType, *hcloud.Response, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByID", arg0, arg1)
	ret0, _ := ret[0].(*hcloud.ServerType)
	ret1, _ := ret[1].(*hcloud.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetByID indicates an expected call of GetByID.
func (mr *MockServerTypeClientMockRecorder) GetByID(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByID", reflect.TypeOf((*MockServerTypeClient)(nil).GetByID), arg0, arg1)
}

// GetByName mocks base method.
func (m *MockServerTypeClient) GetByName(arg0 context.Context, arg1 string) (*hcloud.ServerType, *hcloud.Response, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetByName", arg0, arg1)
	ret0, _ := ret[0].(*hcloud.ServerType)
	ret1, _ := ret[1].(*hcloud.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// GetByName indicates an expected call of GetByName.
func (mr *MockServerTypeClientMockRecorder) GetByName(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetByName", reflect.TypeOf((*MockServerTypeClient)(nil).GetByName), arg0, arg1)
}

// List mocks base method.
func (m *MockServerTypeClient) List(arg0 context.Context, arg1 hcloud.ServerTypeListOpts) ([]*hcloud.ServerType, *hcloud.Response, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "List", arg0, arg1)
	ret0, _ := ret[0].([]*hcloud.ServerType)
	ret1, _ := ret[1].(*hcloud.Response)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

// List indicates an expected call of List.
func (mr *MockServerTypeClientMockRecorder) List(arg0, arg1 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "List", reflect.TypeOf((*MockServerTypeClient)(nil).List), arg0, arg1)
}

// Names mocks base method.
func (m *MockServerTypeClient) Names() []string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "Names")
	ret0, _ := ret[0].([]string)
	return ret0
}

// Names indicates an expected call of Names.
func (mr *MockServerTypeClientMockRecorder) Names() *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "Names", reflect.TypeOf((*MockServerTypeClient)(nil).Names))
}

// ServerTypeDescription mocks base method.
func (m *MockServerTypeClient) ServerTypeDescription(arg0 int64) string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ServerTypeDescription", arg0)
	ret0, _ := ret[0].(string)
	return ret0
}

// ServerTypeDescription indicates an expected call of ServerTypeDescription.
func (mr *MockServerTypeClientMockRecorder) ServerTypeDescription(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ServerTypeDescription", reflect.TypeOf((*MockServerTypeClient)(nil).ServerTypeDescription), arg0)
}

// ServerTypeName mocks base method.
func (m *MockServerTypeClient) ServerTypeName(arg0 int64) string {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ServerTypeName", arg0)
	ret0, _ := ret[0].(string)
	return ret0
}

// ServerTypeName indicates an expected call of ServerTypeName.
func (mr *MockServerTypeClientMockRecorder) ServerTypeName(arg0 interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ServerTypeName", reflect.TypeOf((*MockServerTypeClient)(nil).ServerTypeName), arg0)
}
