我目前正在尝试将Ramda与Typescript一起使用,但我找不到任何关于为管道(或组合)函数创建的函数表达式声明类型的示例,下面是我的代码:
interface VersionObject {
major: number;
minor: number;
patch: number;
}
const parseVersionString = pipe(
split('.'),
map(unless(isNaN, parseInt)), // btw, ts complain about this parseInt
zip(['major', 'minor', 'patch']),
fromPairs
);
我想要做的是宣布parseVersionString
收到string
并返回VersionObject
,我怎么能这样做?
两种语法变体是等效的:
const parseVersionString: (s: string) => VersionObject = pipe(
const parseVersionString: { (s: string): VersionObject } = pipe(