streamtypes和合并json对象

假设以下types的代码(例如使用lodash或者像这里显式的):

function extend(base, overwrite) { for (var key in overwrite) base[key] = overwrite[key]; return base; } var first = extend({ a: 1 }, { b: 2 }); var second = extend({ c: 3 }, { d: 4 }); console.log(first.a + first.b + second.c + second.d); 

我怎样才能解释FlowType,这实际上是罚款?

试着把这个放在函数声明的上面:

 declare function extend<A, B>(a: A, b: B): A & B