docs: async def read_data(self, stream_id: int) -> bytes:
          """Read data from the specified stream until it is closed by the remote
          peer. If the stream is never ended, this never returns.
          """
          frames = [f async for f in self.stream_frames(stream_id)]
          return b''.join(frames)