async def METHOD_NAME(self, data: bytes, timeout: TimeoutDict) -> None:
    if not data:
        return
    write_timeout = timeout.get("write")
    async with self.write_lock:
        try:
            with anyio.fail_after(write_timeout):
                return await self.stream.send(data)
        except TimeoutError:
            await self.stream.aclose()
            raise WriteTimeout from None
        except BrokenResourceError as exc:
            raise WriteError from exc