Overload typescript property from npm package

Viewed 31

Problem: Using a 3rd party npm package that has a d.ts file with definitions that are wrong

Looking for: a solution how to overload/introduce the correct types

enter image description here

What is seen on the snapshot is wrong , in fact the function supports objects. How do I change the interface?

1 Answers

you can make the typescript compiler consider the new type with as keyword. for example, if you have an object say

obj= {prop1: 1, prop2: "str", otherProp: ["str"] }

with predefined type

objType = {
 prop1: number; 
 prop2: string;
 otherProp: string[];
}

you can overwrite this type like this

obj= {prop1: 1, prop2: "str"} as newType

type newType = {
  prop1: number; 
  prop2: number;
}

off course, this is not the good approach you should follow, because you lose the importance of using type check, but it is considered a escape hitch in your case

Related