Skip to main content


Disallow async functions which have no await expression.


This rule requires type information to run.

This rule extends the base eslint/require-await rule. It uses type information to add support for async functions that return a Promise.


Examples of correct code for this rule:

async function returnsPromise1() {
return Promise.resolve(1);

const returnsPromise2 = () => returnsPromise1();

How to Use

module.exports = {
"rules": {
// Note: you must disable the base rule as it can report incorrect errors
"require-await": "off",
"@typescript-eslint/require-await": "error"
Try this rule in the playground ↗


See eslint/require-await options.


Taken with ❤️ from ESLint core