// Code generated by MockGen. DO NOT EDIT.
// Source: ./pkg/cloud/aliyun/client.go
//
// Generated by this command:
//
//	mockgen -destination ./pkg/cloud/aliyun/client_mock.go -package aliyun -source ./pkg/cloud/aliyun/client.go
//

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

import (
	reflect "reflect"

	client "github.com/alibabacloud-go/cs-20151215/v5/client"
	client0 "github.com/alibabacloud-go/ecs-20140526/v4/client"
	client1 "github.com/alibabacloud-go/nlb-20220430/v4/client"
	client2 "github.com/alibabacloud-go/privatelink-20200415/v5/client"
	client3 "github.com/alibabacloud-go/slb-20140515/v4/client"
	client4 "github.com/alibabacloud-go/vpc-20160428/v6/client"
	vpcpeer "github.com/aliyun/alibaba-cloud-sdk-go/services/vpcpeer"
	gomock "go.uber.org/mock/gomock"
)

// MockClient is a mock of Client interface.
type MockClient struct {
	ctrl     *gomock.Controller
	recorder *MockClientMockRecorder
}

// MockClientMockRecorder is the mock recorder for MockClient.
type MockClientMockRecorder struct {
	mock *MockClient
}

// NewMockClient creates a new mock instance.
func NewMockClient(ctrl *gomock.Controller) *MockClient {
	mock := &MockClient{ctrl: ctrl}
	mock.recorder = &MockClientMockRecorder{mock}
	return mock
}

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

// CS mocks base method.
func (m *MockClient) CS(arg0 *AssumedRole, arg1 ...Option) (*client.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "CS", varargs...)
	ret0, _ := ret[0].(*client.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// CS indicates an expected call of CS.
func (mr *MockClientMockRecorder) CS(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CS", reflect.TypeOf((*MockClient)(nil).CS), varargs...)
}

// ECS mocks base method.
func (m *MockClient) ECS(arg0 *AssumedRole, arg1 ...Option) (*client0.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "ECS", varargs...)
	ret0, _ := ret[0].(*client0.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ECS indicates an expected call of ECS.
func (mr *MockClientMockRecorder) ECS(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ECS", reflect.TypeOf((*MockClient)(nil).ECS), varargs...)
}

// NLB mocks base method.
func (m *MockClient) NLB(arg0 *AssumedRole, arg1 ...Option) (*client1.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "NLB", varargs...)
	ret0, _ := ret[0].(*client1.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// NLB indicates an expected call of NLB.
func (mr *MockClientMockRecorder) NLB(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "NLB", reflect.TypeOf((*MockClient)(nil).NLB), varargs...)
}

// PrivateLink mocks base method.
func (m *MockClient) PrivateLink(arg0 *AssumedRole, arg1 ...Option) (*client2.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "PrivateLink", varargs...)
	ret0, _ := ret[0].(*client2.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// PrivateLink indicates an expected call of PrivateLink.
func (mr *MockClientMockRecorder) PrivateLink(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "PrivateLink", reflect.TypeOf((*MockClient)(nil).PrivateLink), varargs...)
}

// SLB mocks base method.
func (m *MockClient) SLB(arg0 *AssumedRole, arg1 ...Option) (*client3.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "SLB", varargs...)
	ret0, _ := ret[0].(*client3.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// SLB indicates an expected call of SLB.
func (mr *MockClientMockRecorder) SLB(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "SLB", reflect.TypeOf((*MockClient)(nil).SLB), varargs...)
}

// VPC mocks base method.
func (m *MockClient) VPC(arg0 *AssumedRole, arg1 ...Option) (*client4.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "VPC", varargs...)
	ret0, _ := ret[0].(*client4.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// VPC indicates an expected call of VPC.
func (mr *MockClientMockRecorder) VPC(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "VPC", reflect.TypeOf((*MockClient)(nil).VPC), varargs...)
}

// VpcPeer mocks base method.
func (m *MockClient) VpcPeer(arg0 *AssumedRole, arg1 ...Option) (*vpcpeer.Client, error) {
	m.ctrl.T.Helper()
	varargs := []any{arg0}
	for _, a := range arg1 {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "VpcPeer", varargs...)
	ret0, _ := ret[0].(*vpcpeer.Client)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// VpcPeer indicates an expected call of VpcPeer.
func (mr *MockClientMockRecorder) VpcPeer(arg0 any, arg1 ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{arg0}, arg1...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "VpcPeer", reflect.TypeOf((*MockClient)(nil).VpcPeer), varargs...)
}
