// Code generated by MockGen. DO NOT EDIT.
// Source: pkg/cloud/provider.go

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

import (
	context "context"
	reflect "reflect"

	gomock "github.com/golang/mock/gomock"
	cloud "github.com/tidbcloud/ticdc-service/pkg/cloud"
	types "k8s.io/apimachinery/pkg/types"
	client "sigs.k8s.io/controller-runtime/pkg/client"
)

// MockProvider is a mock of Provider interface.
type MockProvider struct {
	ctrl     *gomock.Controller
	recorder *MockProviderMockRecorder
}

// MockProviderMockRecorder is the mock recorder for MockProvider.
type MockProviderMockRecorder struct {
	mock *MockProvider
}

// NewMockProvider creates a new mock instance.
func NewMockProvider(ctrl *gomock.Controller) *MockProvider {
	mock := &MockProvider{ctrl: ctrl}
	mock.recorder = &MockProviderMockRecorder{mock}
	return mock
}

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

// BuildDNS mocks base method.
func (m *MockProvider) BuildDNS(providerConfig string, dns *cloud.DNSRequest) ([]client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildDNS", providerConfig, dns)
	ret0, _ := ret[0].([]client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// BuildDNS indicates an expected call of BuildDNS.
func (mr *MockProviderMockRecorder) BuildDNS(providerConfig, dns interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BuildDNS", reflect.TypeOf((*MockProvider)(nil).BuildDNS), providerConfig, dns)
}

// BuildNodePool mocks base method.
func (m *MockProvider) BuildNodePool(arg0 string, arg1 types.NamespacedName, arg2 *cloud.NodePool) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildNodePool", arg0, arg1, arg2)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// BuildProviderConfig mocks base method.
func (m *MockProvider) BuildProviderConfig(arg0 types.NamespacedName) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildProviderConfig", arg0)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// BuildSinkEndpoint mocks base method.
func (m *MockProvider) BuildSinkEndpoint(arg0 string, arg1 types.NamespacedName, arg2 *cloud.EndpointRequest) ([]client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildSinkEndpoint", arg0, arg1, arg2)
	ret0, _ := ret[0].([]client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// BuildStorageClass mocks base method.
func (m *MockProvider) BuildStorageClass(arg0 types.NamespacedName, arg1 *cloud.StorageClass) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildStorageClass", arg0, arg1)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteDNS mocks base method.
func (m *MockProvider) DeleteDNS(arg0 context.Context, arg1 client.Client, arg2 string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteDNS", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// DeleteNodePool mocks base method.
func (m *MockProvider) DeleteNodePool(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteNodePool", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// DeleteProviderConfig mocks base method.
func (m *MockProvider) DeleteProviderConfig(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteProviderConfig", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// DeleteSinkEndpoint mocks base method.
func (m *MockProvider) DeleteSinkEndpoint(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteSinkEndpoint", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// DeleteStorageClass mocks base method.
func (m *MockProvider) DeleteStorageClass(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteStorageClass", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// GetSinkEndpointDetail mocks base method.
func (m *MockProvider) GetSinkEndpointDetail(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) (*cloud.SinkEndpoint, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetSinkEndpointDetail", arg0, arg1, arg2)
	ret0, _ := ret[0].(*cloud.SinkEndpoint)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

// ValidateEndpointZones indicates an expected call of ValidateEndpointZones.
func (mr *MockProviderMockRecorder) ValidateEndpointZones(ctx, endpointZones, serviceName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateEndpointZones", reflect.TypeOf((*MockProvider)(nil).ValidateEndpointZones), ctx, endpointZones, serviceName)
}

// MockNodePoolProvider is a mock of NodePoolProvider interface.
type MockNodePoolProvider struct {
	ctrl     *gomock.Controller
	recorder *MockNodePoolProviderMockRecorder
}

// MockNodePoolProviderMockRecorder is the mock recorder for MockNodePoolProvider.
type MockNodePoolProviderMockRecorder struct {
	mock *MockNodePoolProvider
}

// NewMockNodePoolProvider creates a new mock instance.
func NewMockNodePoolProvider(ctrl *gomock.Controller) *MockNodePoolProvider {
	mock := &MockNodePoolProvider{ctrl: ctrl}
	mock.recorder = &MockNodePoolProviderMockRecorder{mock}
	return mock
}

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

// BuildNodePool mocks base method.
func (m *MockNodePoolProvider) BuildNodePool(arg0 string, arg1 types.NamespacedName, arg2 *cloud.NodePool) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildNodePool", arg0, arg1, arg2)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteNodePool mocks base method.
func (m *MockNodePoolProvider) DeleteNodePool(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteNodePool", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockStorageProvider is a mock of StorageProvider interface.
type MockStorageProvider struct {
	ctrl     *gomock.Controller
	recorder *MockStorageProviderMockRecorder
}

// MockStorageProviderMockRecorder is the mock recorder for MockStorageProvider.
type MockStorageProviderMockRecorder struct {
	mock *MockStorageProvider
}

// NewMockStorageProvider creates a new mock instance.
func NewMockStorageProvider(ctrl *gomock.Controller) *MockStorageProvider {
	mock := &MockStorageProvider{ctrl: ctrl}
	mock.recorder = &MockStorageProviderMockRecorder{mock}
	return mock
}

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

// BuildStorageClass mocks base method.
func (m *MockStorageProvider) BuildStorageClass(arg0 types.NamespacedName, arg1 *cloud.StorageClass) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildStorageClass", arg0, arg1)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteStorageClass mocks base method.
func (m *MockStorageProvider) DeleteStorageClass(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteStorageClass", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockCertificateProvider is a mock of CertificateProvider interface.
type MockCertificateProvider struct {
	ctrl     *gomock.Controller
	recorder *MockCertificateProviderMockRecorder
}

// MockCertificateProviderMockRecorder is the mock recorder for MockCertificateProvider.
type MockCertificateProviderMockRecorder struct {
	mock *MockCertificateProvider
}

// NewMockCertificateProvider creates a new mock instance.
func NewMockCertificateProvider(ctrl *gomock.Controller) *MockCertificateProvider {
	mock := &MockCertificateProvider{ctrl: ctrl}
	mock.recorder = &MockCertificateProviderMockRecorder{mock}
	return mock
}

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

// BuildCertificate mocks base method.
func (m *MockCertificateProvider) BuildCertificate(arg0 types.NamespacedName, arg1 *cloud.CertificateRequest) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildCertificate", arg0, arg1)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteCertificate mocks base method.
func (m *MockCertificateProvider) DeleteCertificate(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteCertificate", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockEndpointProvider is a mock of EndpointProvider interface.
type MockEndpointProvider struct {
	ctrl     *gomock.Controller
	recorder *MockEndpointProviderMockRecorder
}

// MockEndpointProviderMockRecorder is the mock recorder for MockEndpointProvider.
type MockEndpointProviderMockRecorder struct {
	mock *MockEndpointProvider
}

// NewMockEndpointProvider creates a new mock instance.
func NewMockEndpointProvider(ctrl *gomock.Controller) *MockEndpointProvider {
	mock := &MockEndpointProvider{ctrl: ctrl}
	mock.recorder = &MockEndpointProviderMockRecorder{mock}
	return mock
}

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

// BuildSinkEndpoint mocks base method.
func (m *MockEndpointProvider) BuildSinkEndpoint(arg0 string, arg1 types.NamespacedName, arg2 *cloud.EndpointRequest) ([]client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildSinkEndpoint", arg0, arg1, arg2)
	ret0, _ := ret[0].([]client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteSinkEndpoint mocks base method.
func (m *MockEndpointProvider) DeleteSinkEndpoint(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteSinkEndpoint", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// GetSinkEndpointDetail mocks base method.
func (m *MockEndpointProvider) GetSinkEndpointDetail(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) (*cloud.SinkEndpoint, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetSinkEndpointDetail", arg0, arg1, arg2)
	ret0, _ := ret[0].(*cloud.SinkEndpoint)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

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

// ValidateEndpointZones indicates an expected call of ValidateEndpointZones.
func (mr *MockEndpointProviderMockRecorder) ValidateEndpointZones(ctx, endpointZones, serviceName interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ValidateEndpointZones", reflect.TypeOf((*MockEndpointProvider)(nil).ValidateEndpointZones), ctx, endpointZones, serviceName)
}

// MockDNSProvider is a mock of DNSProvider interface.
type MockDNSProvider struct {
	ctrl     *gomock.Controller
	recorder *MockDNSProviderMockRecorder
}

// MockDNSProviderMockRecorder is the mock recorder for MockDNSProvider.
type MockDNSProviderMockRecorder struct {
	mock *MockDNSProvider
}

// NewMockDNSProvider creates a new mock instance.
func NewMockDNSProvider(ctrl *gomock.Controller) *MockDNSProvider {
	mock := &MockDNSProvider{ctrl: ctrl}
	mock.recorder = &MockDNSProviderMockRecorder{mock}
	return mock
}

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

// BuildDNS mocks base method.
func (m *MockDNSProvider) BuildDNS(providerConfig string, dns *cloud.DNSRequest) ([]client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildDNS", providerConfig, dns)
	ret0, _ := ret[0].([]client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// BuildDNS indicates an expected call of BuildDNS.
func (mr *MockDNSProviderMockRecorder) BuildDNS(providerConfig, dns interface{}) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "BuildDNS", reflect.TypeOf((*MockDNSProvider)(nil).BuildDNS), providerConfig, dns)
}

// DeleteDNS mocks base method.
func (m *MockDNSProvider) DeleteDNS(arg0 context.Context, arg1 client.Client, arg2 string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteDNS", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockGCProvider is a mock of GCProvider interface.
type MockGCProvider struct {
	ctrl     *gomock.Controller
	recorder *MockGCProviderMockRecorder
}

// MockGCProviderMockRecorder is the mock recorder for MockGCProvider.
type MockGCProviderMockRecorder struct {
	mock *MockGCProvider
}

// NewMockGCProvider creates a new mock instance.
func NewMockGCProvider(ctrl *gomock.Controller) *MockGCProvider {
	mock := &MockGCProvider{ctrl: ctrl}
	mock.recorder = &MockGCProviderMockRecorder{mock}
	return mock
}

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

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

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

// OnAppboxDeleting mocks base method.
func (m *MockGCProvider) OnAppboxDeleting(arg0 context.Context, arg1 string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "OnAppboxDeleting", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockGCExecutor is a mock of GCExecutor interface.
type MockGCExecutor struct {
	ctrl     *gomock.Controller
	recorder *MockGCExecutorMockRecorder
}

// MockGCExecutorMockRecorder is the mock recorder for MockGCExecutor.
type MockGCExecutorMockRecorder struct {
	mock *MockGCExecutor
}

// NewMockGCExecutor creates a new mock instance.
func NewMockGCExecutor(ctrl *gomock.Controller) *MockGCExecutor {
	mock := &MockGCExecutor{ctrl: ctrl}
	mock.recorder = &MockGCExecutorMockRecorder{mock}
	return mock
}

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

// OnAppboxDeleting mocks base method.
func (m *MockGCExecutor) OnAppboxDeleting(arg0 context.Context, arg1 string) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "OnAppboxDeleting", arg0, arg1)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockAppboxLister is a mock of AppboxLister interface.
type MockAppboxLister struct {
	ctrl     *gomock.Controller
	recorder *MockAppboxListerMockRecorder
}

// MockAppboxListerMockRecorder is the mock recorder for MockAppboxLister.
type MockAppboxListerMockRecorder struct {
	mock *MockAppboxLister
}

// NewMockAppboxLister creates a new mock instance.
func NewMockAppboxLister(ctrl *gomock.Controller) *MockAppboxLister {
	mock := &MockAppboxLister{ctrl: ctrl}
	mock.recorder = &MockAppboxListerMockRecorder{mock}
	return mock
}

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

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

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

// MockProviderConfiger is a mock of ProviderConfiger interface.
type MockProviderConfiger struct {
	ctrl     *gomock.Controller
	recorder *MockProviderConfigerMockRecorder
}

// MockProviderConfigerMockRecorder is the mock recorder for MockProviderConfiger.
type MockProviderConfigerMockRecorder struct {
	mock *MockProviderConfiger
}

// NewMockProviderConfiger creates a new mock instance.
func NewMockProviderConfiger(ctrl *gomock.Controller) *MockProviderConfiger {
	mock := &MockProviderConfiger{ctrl: ctrl}
	mock.recorder = &MockProviderConfigerMockRecorder{mock}
	return mock
}

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

// BuildProviderConfig mocks base method.
func (m *MockProviderConfiger) BuildProviderConfig(arg0 types.NamespacedName) (client.Object, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "BuildProviderConfig", arg0)
	ret0, _ := ret[0].(client.Object)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// DeleteProviderConfig mocks base method.
func (m *MockProviderConfiger) DeleteProviderConfig(arg0 context.Context, arg1 client.Client, arg2 types.NamespacedName) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "DeleteProviderConfig", arg0, arg1, arg2)
	ret0, _ := ret[0].(error)
	return ret0
}

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

// MockK8sGetter is a mock of K8sGetter interface.
type MockK8sGetter struct {
	ctrl     *gomock.Controller
	recorder *MockK8sGetterMockRecorder
}

// MockK8sGetterMockRecorder is the mock recorder for MockK8sGetter.
type MockK8sGetterMockRecorder struct {
	mock *MockK8sGetter
}

// NewMockK8sGetter creates a new mock instance.
func NewMockK8sGetter(ctrl *gomock.Controller) *MockK8sGetter {
	mock := &MockK8sGetter{ctrl: ctrl}
	mock.recorder = &MockK8sGetterMockRecorder{mock}
	return mock
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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