Skip to content

Commit e3bb635

Browse files
fix(packaging): resolve correct .d.cts types for CJS consumers
Each package shipped a single top-level "types" in its exports map pointing at the ESM `.d.ts`. Because every package is `"type": "module"`, TypeScript's node16/nodenext resolution interprets that declaration as ESM, so CommonJS consumers (moduleResolution node16/nodenext) cannot import the packages: - TS1479 on value imports - TS1541 on type-only imports The matching `.d.cts` declarations are already emitted by tsup but were never referenced. Nest the `types` condition under each `import`/`require` branch so CJS consumers resolve `.d.cts` and ESM consumers resolve `.d.ts`. This is purely additive to type resolution — runtime entries and ESM consumers are unchanged. Verified with @arethetypeswrong/cli (all green across node10, node16 from CJS and ESM, and bundler) and against a real CommonJS + node16 consumer build. Fixes #748 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 8952d13 commit e3bb635

7 files changed

Lines changed: 56 additions & 21 deletions

File tree

packages/browser/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@
99
"types": "./dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"types": "./dist/index.d.ts",
13-
"import": "./dist/index.mjs",
14-
"require": "./dist/index.cjs"
12+
"import": {
13+
"types": "./dist/index.d.ts",
14+
"default": "./dist/index.mjs"
15+
},
16+
"require": {
17+
"types": "./dist/index.d.cts",
18+
"default": "./dist/index.cjs"
19+
}
1520
}
1621
},
1722
"scripts": {

packages/client/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@
99
"types": "./dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"types": "./dist/index.d.ts",
13-
"import": "./dist/index.mjs",
14-
"require": "./dist/index.cjs"
12+
"import": {
13+
"types": "./dist/index.d.ts",
14+
"default": "./dist/index.mjs"
15+
},
16+
"require": {
17+
"types": "./dist/index.d.cts",
18+
"default": "./dist/index.cjs"
19+
}
1520
}
1621
},
1722
"scripts": {

packages/core/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@
99
"types": "./dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"types": "./dist/index.d.ts",
13-
"import": "./dist/index.mjs",
14-
"require": "./dist/index.cjs"
12+
"import": {
13+
"types": "./dist/index.d.ts",
14+
"default": "./dist/index.mjs"
15+
},
16+
"require": {
17+
"types": "./dist/index.d.cts",
18+
"default": "./dist/index.cjs"
19+
}
1520
}
1621
},
1722
"scripts": {

packages/langchain/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@
99
"types": "./dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"types": "./dist/index.d.ts",
13-
"import": "./dist/index.mjs",
14-
"require": "./dist/index.cjs"
12+
"import": {
13+
"types": "./dist/index.d.ts",
14+
"default": "./dist/index.mjs"
15+
},
16+
"require": {
17+
"types": "./dist/index.d.cts",
18+
"default": "./dist/index.cjs"
19+
}
1520
}
1621
},
1722
"scripts": {

packages/openai/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,14 @@
99
"types": "./dist/index.d.ts",
1010
"exports": {
1111
".": {
12-
"types": "./dist/index.d.ts",
13-
"import": "./dist/index.mjs",
14-
"require": "./dist/index.cjs"
12+
"import": {
13+
"types": "./dist/index.d.ts",
14+
"default": "./dist/index.mjs"
15+
},
16+
"require": {
17+
"types": "./dist/index.d.cts",
18+
"default": "./dist/index.cjs"
19+
}
1520
}
1621
},
1722
"scripts": {

packages/otel/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,14 @@
1919
"types": "./dist/index.d.ts",
2020
"exports": {
2121
".": {
22-
"types": "./dist/index.d.ts",
23-
"import": "./dist/index.mjs",
24-
"require": "./dist/index.cjs"
22+
"import": {
23+
"types": "./dist/index.d.ts",
24+
"default": "./dist/index.mjs"
25+
},
26+
"require": {
27+
"types": "./dist/index.d.cts",
28+
"default": "./dist/index.cjs"
29+
}
2530
}
2631
},
2732
"scripts": {

packages/tracing/package.json

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,9 +19,14 @@
1919
"types": "./dist/index.d.ts",
2020
"exports": {
2121
".": {
22-
"types": "./dist/index.d.ts",
23-
"import": "./dist/index.mjs",
24-
"require": "./dist/index.cjs"
22+
"import": {
23+
"types": "./dist/index.d.ts",
24+
"default": "./dist/index.mjs"
25+
},
26+
"require": {
27+
"types": "./dist/index.d.cts",
28+
"default": "./dist/index.cjs"
29+
}
2530
}
2631
},
2732
"scripts": {

0 commit comments

Comments
 (0)