flowtype,如何以类型安全的方式进行猴子补丁?

flowtype, how to monkey patch in a type safe manner?

我在我的项目中使用 flowtype,为方便起见,我想扩展我正在使用的库的功能,更具体地说 luxon

因此,在 Typescript 中,每当我想扩展库的类型时,我都可以做接口声明,Typescript 负责合并我的类型和库定义的类型,所以它专门处理这个用例我的

但是我无法在 flow 中找到任何信息来实现相同的目的,到目前为止唯一的解决方案似乎是采用流类型定义,将其复制到我自己的类型定义中(不想在上面写,因为每次我通过 CLI 安装类型时,我的更改都会丢失,对吗?)并就地修改它……这充其量是个糟糕的主意

是否有任何我不知道的机制可以快速扩展 flowtype 中的库定义,而无需诉诸硬修补现有类型定义?

Flow 是正确的,因为您不应该为内置 class 分配额外的功能。但是如果你真的想要,你可以用抑制错误关闭每行的流错误。 https://flow.org/en/docs/errors/

我完成这项工作的唯一方法是将流类型定义移动到我的自定义定义中并在那里手动添加类型。

截至撰写本文时,无法 merge/monkey 修补流类型。

用 TypeScript 帮自己一个忙。