What does it mean when TsLint says "expected callSignature to have a typedef."

I have a function in my code:

networkStop = (action: string = null) => {
    this.action[action] = false;
    this.net = false;
    this.netd = false;
}

I'm getting a TsLint error saying:

Message 4   TsLint: expected callSignature to have a typedef.

Can someone explain what this means?


Solution 1:

"Missing Type definition" See : https://github.com/palantir/tslint/blob/master/src/rules/typedefRule.ts for details. Basically some annotation (for a function because callSignature) is missing.

Probably the fix (specify the return type explicitly) :

networkStop = (action: string = null):void => {
    this.action[action] = false;
    this.net = false;
    this.netd = false;
}

Solution 2:

To avoid the build error. in the tslint.json file write code like:-

"typedef": [
  false,
  "call-signature"
],

This line of code in tslint.json does not make the return type of method required.