error TS2794: Expected 1 arguments, but got 0. Did you forget to include 'void' in your type argument to 'Promise'?

TypescriptPromiseResolve

Typescript Problem Overview


In my project, I was using [email protected] and it was working fine, but now I updated its version to latest [email protected] and it is giving me a lot of errors. I am unable to find anything in documentations and not getting any Idea how to resolve this issue.

here is my code:

dbPool.query(`DELETE FROM table WHERE Id='${Id}'`, () => resolve())

Another one is:

return new Promise((resolve, reject) => {
  this.redis.SET(addr, resp, () => resolve())
})

These both are giving me error:

> error TS2794: Expected 1 arguments, but got 0. Did you forget to include 'void' in your type argument to 'Promise'?

Any idea what should I pass in resolve() to resolve this issue??

Typescript Solutions


Solution 1 - Typescript

The standard argument for resolve in your case is unknown, which means that an argument is required;

If you don't want resolve to be taking any arguments you can explicitly set the generic type of Promise to void;

return new Promise<void>((resolve, reject) => {
  this.red.SET(addr, resp, () => resolve())
})

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionNaila AkbarView Question on Stackoverflow
Solution 1 - TypescriptMike S.View Answer on Stackoverflow