Почему ts-node игнорирует мой файл декларации mongoose? - PullRequest
0 голосов
/ 19 мая 2019

Я расширяю и express, и mongoose одинаково, но ts-node, похоже, игнорирует мой файл объявления типа mongoose. Я прочитал документацию по ts-node, но не мог понять, почему mongoose не работает Я использую префикс --file для запуска своего кода, так что это не проблема. Моя файловая структура

.
├── tsconfig.json
├── types
        _express
          └── types.d.ts
|      _mongoose
          └── types.d.ts

Мои файлы деклараций

//Express
declare namespace Express {
  interface Request {
    userId: string;
  }
}


//Mongoose
namespace Mongoose {
  interface Query<T> {
    cache(options: CacheOptions): Query<T>;
    useCache: boolean;
    hashKey: string;
  }
}
type CacheOptions = {
  key?: string;
};

TSconfig, * 1015 JSON *

{
  "compilerOptions": {
    "baseUrl": ".",
    "paths": { "*": ["types/*"] },
    "target": "es5",
    "lib": ["esnext"],
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "allowSyntheticDefaultImports": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "module": "commonjs",
    "moduleResolution": "node",
    "resolveJsonModule": true,
    "isolatedModules": true,
    "noEmit": true,
    "typeRoots": ["./node_modules/@types", "./types"]
  },
  "include": ["./src", "./types"]
}
...