At class NatsJSContext, methods CreateStreamAsync and UpdateStreamAsync return different types:
public async ValueTask<INatsJSStream> CreateStreamAsync(...)
{
// ...
return new NatsJSStream(...);
}
public async ValueTask<NatsJSStream> UpdateStreamAsync(...)
{
// ...
return new NatsJSStream(...);
}
Contructor of class NatsJSContext receives a NatsConnection instead of INatsConnection:
public partial class NatsJSContext
{
public NatsJSContext(NatsConnection connection) ...
public NatsJSContext(NatsConnection connection, NatsJSOpts opts) ...
}
Expected behavior
Given that the team decided to use interface + class pairs for most of the concepts, I would expect that there were no parameters and return types declared with the class type, but most importantly, that there were consistency among the declarations.
Observed behavior
To use just two instances as examples:
At class
NatsJSContext
, methodsCreateStreamAsync
andUpdateStreamAsync
return different types:Contructor of class
NatsJSContext
receives aNatsConnection
instead ofINatsConnection
:Expected behavior
Given that the team decided to use
interface + class
pairs for most of the concepts, I would expect that there were no parameters and return types declared with the class type, but most importantly, that there were consistency among the declarations.Server and client version
Client Versions:
Server Version: irrelevant
Host environment
No response
Steps to reproduce
No response