// Code generated by protoc-gen-go-micro. DO NOT EDIT.
// versions:
// - protoc-gen-go-micro v3.10.4
// - protoc              v5.29.2
// source: test.proto

package helloworld

import (
	context "context"
	proto "go.unistack.org/micro-tests/server/grpc/proto"
	client "go.unistack.org/micro/v4/client"
	metadata "go.unistack.org/micro/v4/metadata"
)

var (
	TestName = "Test"
)

type TestClient interface {
	Call(ctx context.Context, req *proto.Request, opts ...client.CallOption) (*proto.Response, error)
	StreamCall(ctx context.Context, opts ...client.CallOption) (Test_StreamCallClient, error)
}

type Test_StreamCallClient interface {
	Context() context.Context
	SendMsg(msg interface{}) error
	RecvMsg(msg interface{}) error
	CloseAndRecv() (*proto.Response, error)
	CloseSend() error
	Close() error
	Header() metadata.Metadata
	Send(msg *proto.Request) error
	Recv() (*proto.Response, error)
}

type TestServer interface {
	Call(ctx context.Context, req *proto.Request, rsp *proto.Response) error
	StreamCall(ctx context.Context, stream Test_StreamCallStream) error
}

type Test_StreamCallStream interface {
	Context() context.Context
	SendMsg(msg interface{}) error
	RecvMsg(msg interface{}) error
	SendAndClose(msg *proto.Response) error
	Close() error
	Recv() (*proto.Request, error)
	Send(msg *proto.Response) error
}
