'Asynchronously check if a node exists. Takes the same
arguments as :meth:`exists`.
:rtype: :class:`~kazoo.interfaces.IAsyncResult`'

def exists_async(self, path, watch=None):

    if (not isinstance(path, basestring)):
        raise TypeError('path    must    be    a    string')
    if (watch and (not callable(watch))):
        raise TypeError('watch    must    be    a    callable')
    async_result = self.handler.async_result()
    self._call(Exists(_prefix_root(self.chroot, path), watch), async_result)
    return async_result
