我有返回功能的高阶函数,并且,让我们想象这样的事情:TS - 重载函数签名由厂 为简洁返回FN
function factory() {
return function baz(payload: { [key: string]: {} }): 'hello' {
return 'hello';
}
}
const foo = factory();
现在,foo
是函数baz
其中有这样一个说法签名(非常通用的):
interface payload {
[key: string] : {}
}
我需要做的是过载foo
该签名只,有一个更准确的签名(需要):
function foo(payload: {id: string}) {}
我怎样才能做到这一点?
你的意思是:'const foo = factory()as(payload:{id:string})=>'hello';'? –