// Code generated by MockGen. DO NOT EDIT.
// Source: github.com/tidbcloud/aisupport/packages/sdk-go/contracts/api/agent-gateway/gateway/v1 (interfaces: GatewayServiceClient)
//
// Generated by this command:
//
//	mockgen -destination gateway_client_mock.go -package=agentgateway github.com/tidbcloud/aisupport/packages/sdk-go/contracts/api/agent-gateway/gateway/v1 GatewayServiceClient
//

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

import (
	context "context"
	reflect "reflect"

	gatewayv1 "github.com/tidbcloud/aisupport/packages/sdk-go/contracts/api/agent-gateway/gateway/v1"
	gomock "go.uber.org/mock/gomock"
	grpc "google.golang.org/grpc"
)

// MockGatewayServiceClient is a mock of GatewayServiceClient interface.
type MockGatewayServiceClient struct {
	ctrl     *gomock.Controller
	recorder *MockGatewayServiceClientMockRecorder
	isgomock struct{}
}

// MockGatewayServiceClientMockRecorder is the mock recorder for MockGatewayServiceClient.
type MockGatewayServiceClientMockRecorder struct {
	mock *MockGatewayServiceClient
}

// NewMockGatewayServiceClient creates a new mock instance.
func NewMockGatewayServiceClient(ctrl *gomock.Controller) *MockGatewayServiceClient {
	mock := &MockGatewayServiceClient{ctrl: ctrl}
	mock.recorder = &MockGatewayServiceClientMockRecorder{mock}
	return mock
}

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

// ProcessLarkMessage mocks base method.
func (m *MockGatewayServiceClient) ProcessLarkMessage(ctx context.Context, in *gatewayv1.ProcessLarkMessageRequest, opts ...grpc.CallOption) (*gatewayv1.ProcessLarkMessageResponse, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx, in}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "ProcessLarkMessage", varargs...)
	ret0, _ := ret[0].(*gatewayv1.ProcessLarkMessageResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ProcessLarkMessage indicates an expected call of ProcessLarkMessage.
func (mr *MockGatewayServiceClientMockRecorder) ProcessLarkMessage(ctx, in any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, in}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ProcessLarkMessage", reflect.TypeOf((*MockGatewayServiceClient)(nil).ProcessLarkMessage), varargs...)
}

// ProcessMessage mocks base method.
func (m *MockGatewayServiceClient) ProcessMessage(ctx context.Context, in *gatewayv1.ProcessMessageRequest, opts ...grpc.CallOption) (*gatewayv1.ProcessMessageResponse, error) {
	m.ctrl.T.Helper()
	varargs := []any{ctx, in}
	for _, a := range opts {
		varargs = append(varargs, a)
	}
	ret := m.ctrl.Call(m, "ProcessMessage", varargs...)
	ret0, _ := ret[0].(*gatewayv1.ProcessMessageResponse)
	ret1, _ := ret[1].(error)
	return ret0, ret1
}

// ProcessMessage indicates an expected call of ProcessMessage.
func (mr *MockGatewayServiceClientMockRecorder) ProcessMessage(ctx, in any, opts ...any) *gomock.Call {
	mr.mock.ctrl.T.Helper()
	varargs := append([]any{ctx, in}, opts...)
	return mr.mock.ctrl.RecordCallWithMethodType(mr.mock, "ProcessMessage", reflect.TypeOf((*MockGatewayServiceClient)(nil).ProcessMessage), varargs...)
}
