2017-12-13 13 views
2

たとえば、私はmy-libraryというカスタムライブラリを公開しています。このライブラリは、Typescript 2:node_moduleのカスタムタイプの定義

node_modules/ 
    my-library/ 
     lib/ 
      index.js 
      src/ 
       ... 
     typings/ 
      index.d.ts 
     package.json 

言ってやるが、今私はindex.jsからApplicationと呼ばれるデフォルト何かをエクスポートするので、あなたは、私がその入力を宣言したい私のindex.d.tsで、今import Application from 'my-library';

でそれを使用する構造のものであろう。

export = Application; 
export as namespace Application; 

declare namespace Application { 
    function foo(arg1: string): object; 
} 

私は、これはエラーを返すことを期待知っているが、それはしていません:

import Application from 'my-library'; 

Application.foo(123)[0].blahblah; 

引数が間違っているだけでなく、戻り値も同じです。私は上記のように私の型定義を追加することになっているのか分かりません。

+0

[MQTT](https://github.com/mqttjs/MQTT.js)モジュールは、種類の船が、彼らは 'types'というフォルダを使用していることを良い例です。 –

答えて

0

hereを見ると、Typescriptがどこで定義されているかを確認できます。

package.jsontypesを追加して、カスタム定義ファイルを指し示すことをお勧めします。

{ 
    "types": "typings/index.d.ts", 
} 
関連する問題