Чем отличается в TS return Promise.resolve(); от простого return;?
Вроде и то и то возвращает Promise<void>
но eslint ругается на no consistent return если в одном месте return; а в другом return Promise.race<void>([])
Внутри async функции - ничем.
Typescript-eslint просто не имеет соответствующего правила, а стандартное правило не знает ничего о типах.
Либо отключай это правило, либо ублажай его.