после поиска надежного способа обнаружения функций Async или даже Promises, я закончил использование следующего теста:
() => fn.constructor.name === 'Promise' || fn.constructor.name === 'AsyncFunction'