如何在typescript中定义匿名泛型接口?

如何在typescript中定义匿名泛型接口?,typescript,Typescript,我正在寻找一种方法,使下面的代码段在不必声明接口的情况下进行编译 var a : <A>{ (value: A): void; (): A; } = null; var a:{(值:a):void;():a;}=null; 像这样的泛型类型存在是没有意义的。这和你不能写foox的原因是一样的在C++中没有实际的 t>代码>范围内——一旦该类型被显化,就必须绑定。< /P> 你可以写这个,它可能有你想要的语义 var a: { <A>(value: A): void;

我正在寻找一种方法,使下面的代码段在不必声明接口的情况下进行编译

var a : <A>{ (value: A): void; (): A; } = null; 
var a:{(值:a):void;():a;}=null;

像这样的泛型类型存在是没有意义的。这和你不能写
foox的原因是一样的在C++中没有实际的<代码> t>代码>范围内——一旦该类型被显化,就必须绑定。< /P>
你可以写这个,它可能有你想要的语义

var a: { <A>(value: A): void; <A>(): A; } = null; 
var a:{(值:a):void;():a;}=null;

如果这不是您想要的,那么发布一些关于
a
上有效和无效调用的示例将非常有用。

为什么不能创建命名接口?这个操作是如此抽象以至于你连名字都说不出来吗?我不想用一次性使用的接口污染名称空间。我已经有一段时间没有使用TS了,但是你不能做一些类似于本地“细节”名称空间的事情吗?当然我可以想出一个解决办法,但问题是如何避免这样做。TypeScript声称支持匿名类型,因此提出了这个问题。结果证明,我的案例是
{(value:a):void;():B;}