<PackageReference Include="Grpc.Net.Client" Version="2.80.0" />

Grpc.Net.Client.Internal.IGrpcCall<TRequest, TResponse>

interface IGrpcCall<TRequest, TResponse> : IDisposable, IEnumerable<KeyValuePair<string, object>>, IEnumerable
object CallWrapper { get; set; }

IAsyncStreamReader<TResponse> ClientStreamReader { get; }

IClientStreamWriter<TRequest> ClientStreamWriter { get; }

bool Disposed { get; }

int MessagesRead { get; }

bool ResponseFinished { get; }

Task<TResponse> GetResponseAsync()

Status GetStatus()

Metadata GetTrailers()

void StartServerStreaming(TRequest request)

void StartUnary(TRequest request)

bool TryRegisterCancellation(CancellationToken cancellationToken, out Nullable cancellationTokenRegistration)

Task WriteClientStreamAsync<TState>(Func<GrpcCall<TRequest, TResponse>, Stream, CallOptions, TState, Task> writeFunc, TState state, CancellationToken cancellationToken)