using System.Text.Json.Nodes; namespace backend.Realtime; public interface IRealtimeUpstream : IAsyncDisposable { Task SendJsonAsync(JsonObject envelope, CancellationToken ct); Task ReceiveJsonAsync(CancellationToken ct); }