{
  // 编译选项
  "compilerOptions": {
    "outDir": "./lib",
    // 是否包含可以用于 debug 的 sourceMap
    "sourceMap": false,
    // 以严格模式解析
    "strict": true,
    // 采用的模块系统
    "module": "commonjs",
    // 如何处理模块
    "moduleResolution": "node",
    // 编译输出目标 ES 版本
    "target": "es6",
    // 允许从没有设置默认导出的模块中默认导入
    "allowSyntheticDefaultImports": true,
    // 将每个文件作为单独的模块
    "isolatedModules": false,
    // 启用装饰器
    "experimentalDecorators": true,
    // 启用设计类型元数据（用于反射）
    "emitDecoratorMetadata": true,
    // 在表达式和声明上有隐含的any类型时报错
    "noImplicitAny": false,
    // 不是函数的所有返回路径都有返回值时报错。
    "noImplicitReturns": true,
    // 从 tslib 导入外部帮助库: 比如__extends，__rest等
    "importHelpers": true,
    // 编译过程中打印文件名
    "listFiles": true,
    // 移除注释
    "removeComments": true,
    "suppressImplicitAnyIndexErrors": true,
    // 允许编译javascript文件
    "allowJs": true,
    // 针对重复声明的第三方模块
    "skipLibCheck": true,
    // 解析非相对模块名的基准目录
    "baseUrl": ".",
    // 编译过程中需要引入的库文件的列表
    "lib": [
      "dom",
      "es2015",
      "es2015.promise",
      "ES6"
    ],
    "types": ["node"] // 导入指定类型包
  },
  "include": [
    "src/**/*",
  ],
  "exclude": ["node_modules"],
}