-type stream() ::
#stream{channel :: egrpc_stub:channel(),
grpc :: egrpc:grpc(),
headers :: [{binary(), binary()}],
stream_ref :: undefined | gun:stream_ref(),
encoding :: identity | gzip,
encoder :: fun((any()) -> binary()),
decoder :: fun((binary()) -> any()),
stream_interceptor_chain ::
#stream_interceptor_chain{init_req :: init_req(),
send_msg :: send_msg(),
close_send :: close_send(),
recv_header :: recv_header(),
recv_msg :: recv_msg(),
parse_msg :: parse_msg()} |
undefined,
stream_interceptor_states :: map(),
info :: term()}.