typescript - Ei pysty ratkaisemaan mukautettuja tyypin määritelmiä turborepo-monorepossa


Minulla on turborepo-projekti, jonka rakenne on seuraava:

apps
  - my-app
    - src
      - some-test.spec.ts
    - tsconfig.json
    - types
      - index.d.ts
packages
  - tsconfig
    - base.json

Tiedosto pacakges/tsconfig/base.json näyttää tältä:

{
  "compilerOptions": {
    "types": ["node", "jest"],
    "typeRoots": ["../../node_modules/@types"]
  },
  "exclude": [
    "build"
  ] 
}

Tiedosto apps/my-app/tsconfig.json näyttää tältä:

{
  "extends": "tsconfig/base.json",
  "include": [
    "src"
  ],
  "compilerOptions": {
    "typeRoots": [
      "./types"
    ]
  }
}

apps/my-app/types/index.d.ts sisälsi määritelmiä kirjastolle, jota käytän, ja olen ohittanut ne.

Ongelmana on, etten saa TypeScriptiä tunnistamaan jest-tyyppejä.

Jos jätän vain types base.json:n compilerOptions:n alle, jest toimii, mutta itse määritelty tyyppi ei toimi. Jos jätän vain typeRoots, omat tyypitykset toimivat, mutta jestin ei.

Onko mitään ideaa?

Aiheeseen liittyviä artikkeleita