// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/devops/pkg/service/jump/api (interfaces: JumpServiceAPI)
//
// Generated by this command:
//
//	mockgen -destination api_mock.go -package=api github.com/tidbcloud/devops/pkg/service/jump/api JumpServiceAPI
//

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

import (
	context "context"
	reflect "reflect"

	jump "github.com/tidbcloud/devops/entity/jump"
	gomock "go.uber.org/mock/gomock"
)

// MockJumpServiceAPI is a mock of JumpServiceAPI interface.
type MockJumpServiceAPI struct {
	ctrl     *gomock.Controller
	recorder *MockJumpServiceAPIMockRecorder
	isgomock struct{}
}

// MockJumpServiceAPIMockRecorder is the mock recorder for MockJumpServiceAPI.
type MockJumpServiceAPIMockRecorder struct {
	mock *MockJumpServiceAPI
}

// NewMockJumpServiceAPI creates a new mock instance.
func NewMockJumpServiceAPI(ctrl *gomock.Controller) *MockJumpServiceAPI {
	mock := &MockJumpServiceAPI{ctrl: ctrl}
	mock.recorder = &MockJumpServiceAPIMockRecorder{mock}
	return mock
}

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

// CancelAuthorizaiton mocks base method.
func (m *MockJumpServiceAPI) CancelAuthorizaiton(ctx context.Context, id uint64, param CancelAuthorizaitonParam) error {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CancelAuthorizaiton", ctx, id, param)
	ret0, _ := ret[0].(error)
	return ret0
}

// CancelAuthorizaiton indicates an expected call of CancelAuthorizaiton.
func (mr *MockJumpServiceAPIMockRecorder) CancelAuthorizaiton(ctx, id, param any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "CancelAuthorizaiton", reflect.TypeOf((*MockJumpServiceAPI)(nil).CancelAuthorizaiton), ctx, id, param)
}

// CreateAuthorization mocks base method.
func (m *MockJumpServiceAPI) CreateAuthorization(ctx context.Context, param CreateAuthorizationParam) (*uint64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "CreateAuthorization", ctx, param)
	ret0, _ := ret[0].(*uint64)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetAuthorization mocks base method.
func (m *MockJumpServiceAPI) GetAuthorization(ctx context.Context, id uint64) (*jump.Authorization, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetAuthorization", ctx, id)
	ret0, _ := ret[0].(*jump.Authorization)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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

// GetConnection mocks base method.
func (m *MockJumpServiceAPI) GetConnection(ctx context.Context, id uint64, applicant string, method jump.ConnectionMethod) (*jump.Connection, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "GetConnection", ctx, id, applicant, method)
	ret0, _ := ret[0].(*jump.Connection)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// GetConnection indicates an expected call of GetConnection.
func (mr *MockJumpServiceAPIMockRecorder) GetConnection(ctx, id, applicant, method any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "GetConnection", reflect.TypeOf((*MockJumpServiceAPI)(nil).GetConnection), ctx, id, applicant, method)
}

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

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

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

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

// ListAuthorizations mocks base method.
func (m *MockJumpServiceAPI) ListAuthorizations(ctx context.Context, param ListAuthorizationParam) ([]*jump.Authorization, int64, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListAuthorizations", ctx, param)
	ret0, _ := ret[0].([]*jump.Authorization)
	ret1, _ := ret[1].(int64)
	ret2, _ := ret[2].(error)
	return ret0, ret1, ret2
}

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

// ListAvailableDestinations mocks base method.
func (m *MockJumpServiceAPI) ListAvailableDestinations(ctx context.Context, typ jump.DestinationType) ([]string, error) {
	m.ctrl.T.Helper()
	ret := m.ctrl.Call(m, "ListAvailableDestinations", ctx, typ)
	ret0, _ := ret[0].([]string)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

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