2017-02-24 10 views
1

Typescriptプロジェクトでnconf-yamlプラグインを使用したいのですが、タイピングに追加する方法がわかりません。種類@で/ nconfに、formats変数は以下のように宣言されます。typescript変数の宣言を拡張する

export declare var formats: { 
    json: IFormat; 
    ini: IFormat; 
}; 

どのように私はそれがなりますように、YAMLを追加するためにマージ宣言を使用してください:

export declare var formats: { 
    json: IFormat; 
    ini: IFormat; 
    yaml: IFormat 
}; 

答えて

1

私はしないでくださいあなたがそれを行うことができると思います。この変数がインライン展開されているため、この変数の型を変更することはできません!インタフェースが別々に宣言されていれば、それは可能であろう。だから、あなたがしたい場合は自分のレポにプルリクエストを送信することができます:D nconfタイピングは、このように定義された

場合:

import * as nconf from "nconf"; 

declare module "nconf" { 
    export interface IFormats { 
     json: nconf.IFormat; 
     ini: nconf.IFormat; 
     yaml: nconf.IFormat; 
    } 
} 

:あなたが含まれているファイルindex.d.tsを作成しているだろう

export interface IFormats { 
    json: IFormat; 
    ini: IFormat; 
} 
export declare var formats: IFormats; 

をそれはあなたの問題を解決したでしょう。一方

それでもタイプを無視するためにそれを使用する前に変数をキャストすることができます

(nconf.formats as any).yaml 
関連する問題