假设我有一个函数,该函数接受通用参数并返回包含该通用参数的对象:
const wrap = <T>(value: T) => ({ tag: 'XZ' as const, value });
wrap
的返回类型为:{ tag: 'XZ', value: T }
。
是否有一种方法可以使用ReturnType
使用此方法无效,因为通用类型已转换为unknown
:
type MyType = ReturnType<typeof wrap>
不幸的是,使用这种方法不是有效的Typescript:
type MyType<T> = ReturnType<typeof wrap<T>>
是否有获取通用返回类型的方法?我基本上需要类似上一个代码块中的内容才能工作。
我已经找到了this question&answer,但是他们只提取了通用参数T
,而不提取了T
绑定到另一个通用参数的函数的整个返回类型。