2013-03-18 9 views
5

typescriptのモジュールはインタフェースと互換性があります。例えば以下のものが有効です:モジュールを呼び出し可能にする

module M{ 
    var s = "test" 
    export function f(){ 
     return s; 
    } 
} 

interface ITest{ 
    f():string; 
} 

var x:ITest = M; 

しかし、モジュール内に呼び出し可能な署名を入れることは可能ですか?具体的にどのように私は、次のインターフェイスと互換性のあるモジュールを書くことができます:

interface ITest{ 
    ():string; 
} 

答えて

2

いいえ、それは不可能です。コールシグネチャと一致することができるエンティティは、関数です。

interface ITest{ 
    ():string; 
} 

var x:ITest = function() {return "";} 
var y:ITest =() => ""; 
関連する問題