Александр
можно два варианта: блокирующий и с колбеком,а уж как колбек под нужный фреймворк асинхронный приспособить - дело пользователя
Плохо представляю как реалзиовать. Выйдет какой-то самописный Project Reactor скорее всего.
Условно у меня пользователь отдает либе HttpServletRequest, дальше делается пару http запросов, далее вызывается функция пользователя (которая может и в бд полезть по jdbc).
Те мне нужно тогда создать цепочку из универсальных промисов. И чтобы пользователь подсунул свою реализацию http server, http client.