express のindex.d.tsファイルが以下のようになっているのですが、ご覧のようにexportが先頭についてる変数(jsonなど)と、exportが先頭についてない関数(queryなど)が混在しています。
typescript
1declare function e(): core.Express; 2 3declare namespace e { 4 /** 5 * This is a built-in middleware function in Express. It parses incoming requests with JSON payloads and is based on body-parser. 6 * @since 4.16.0 7 */ 8 var json: typeof bodyParser.json; 9 10 /** 11 * This is a built-in middleware function in Express. It parses incoming requests with Buffer payloads and is based on body-parser. 12 * @since 4.17.0 13 */ 14 var raw: typeof bodyParser.raw; 15 16 17 /** 18 * This is a built-in middleware function in Express. It parses incoming request query parameters. 19 */ 20 export function query(options: qs.IParseOptions | typeof qs.parse): Handler; 21 22 export function Router(options?: RouterOptions): core.Router; 23 24 25 } 26export = e; 27
これはどのような意図でexportをつけたり、つけなかったりしているのでしょうか?
最初はexportをつけないと
typescripti
1import {json} from from 'express';
みたいなことが出来ないのかなと思ったのですが、実際にやってみたところexportがあろうと、なかろうとimportできてしまい、型推測も正常に動作してしまったため困惑しております。。。
あなたの回答
tips
プレビュー