class AsyncLock:
    ...


class AsyncSocket:
    def __init__(self, send_lock: AsyncLock):
        ...

    async def __aenter__(self) -> "AsyncSocket":
        ...

    async def send_all(self, data):
        ...
