refactor: remove callback-based APIs, work with promises only