2015-12-11 24 views
0

節點MongoDB驅動程序有一個MongoClient.connect()方法選項,您可以在其中傳遞包含promiseLibrary值的選項散列。目前我有hacked a version of the mongodb.d.ts只能使用q async library。爲了避免使用返回類型q.Promise<T>無處不在,而是使用Promise<T>。有沒有辦法做到聲明無極接口,是這樣的:使用來自不同模塊的接口作爲頂級接口

interface Promise<T> extends q.Promise; 

目前這產生以下錯誤:

Generic type 'Promise<T>' requires 1 type argument(s). 

回答

0

雖然試圖提煉和概括,我發現答案是這樣的問題:

interface Promise<T> extends q.Promise<T> {} 

例如:

declare module FirstModule { 
    interface SomeGeneric<T> { 
     finally(): SomeGeneric<T>; 
    } 
    export function resolve<T>(object: T): SomeGeneric<T>; 
} 

declare module SecondModule { 
    interface SameGeneric<V> extends FirstModule.SomeGeneric<V> {} 

    interface Thing { 
     Method<U>(): SameGeneric<U>; 
    } 
}