Code
let obj = {
prop1: function () { },
prop2: 'hello',
}
let prox = new Proxy(obj, {
get: function (target, name) {
return 5;
}
});
prox.prop1.
Expected behavior:
I would expect that when I type prox.prop1., I would get typescript suggestions for Number.prototype, but instead, I get suggestions for Function.prototype. prox.prop1 will (according to typescript) still be callable as a function, but in runtime, it will clearly be a number and will throw an exception.
Statically evaluate the proxy traps and determine the type of thing being returned to offer proper typescript intellisense.
Code
Expected behavior:
I would expect that when I type
prox.prop1., I would get typescript suggestions forNumber.prototype, but instead, I get suggestions forFunction.prototype.prox.prop1will (according to typescript) still be callable as a function, but in runtime, it will clearly be a number and will throw an exception.Statically evaluate the proxy traps and determine the type of thing being returned to offer proper typescript intellisense.