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