Description
Verify canary release
- I verified that the issue exists in the latest Next.js canary release
Provide environment information
Operating System:
Platform: darwin
Arch: arm64
Version: Darwin Kernel Version 21.6.0: Thu Sep 29 20:13:56 PDT 2022; root:xnu-8020.240.7~1/RELEASE_ARM64_T6000
Binaries:
Node: 16.17.0
npm: 8.15.0
Yarn: N/A
pnpm: 7.25.0
Relevant packages:
next: 13.1.7-canary.18
eslint-config-next: 13.0.0
react: 18.2.0
react-dom: 18.2.0
Which area(s) of Next.js are affected? (leave empty if unsure)
TypeScript
To Reproduce
pnpm create next-app
(with typescript)- add
"type": "module"
topackage.json
- change
moduleResolution
tonodenext
- run
npx tsc --noEmit
Describe the Bug
Typescript complain about next/*
, for example:
Cannot find module 'next/head' or its corresponding type declarations.
I believe this is because there is no exports
field in node_modules/next/package.json
.
Expected Behavior
Typescript shouldn't complain.
Context
- We use
"type": "module"
as we want repo scripts to be esm rather than cjs. - We use
"moduleResolution": "nodenext"
as we use a setup similar to the monorepo created bynpx create-turbo@latest
, but we want sources to be undersrc
and not the root folder.
Which browser are you using? (if relevant)
No response
How are you deploying your application? (if relevant)
No response