Open
Description
Version
System:
OS: macOS 15.0
CPU: (10) arm64 Apple M1 Pro
Memory: 151.06 MB / 32.00 GB
Shell: 5.9 - /bin/zsh
Browsers:
Safari: 18.0
npmPackages:
@rslib/core: ^0.0.16 => 0.0.16
Details
There is a minimal repro slimmed from a package using Rsbuild.
src/index.ts
import type { RsbuildPluginAPI as Foo } from 'my-kit';
import type { RsbuildPluginAPI as Bar } from 'my-kit/plugin';
export type { Foo, Bar };
While all the things is actually exported from ./node_modules/my-kit/dist-types/types/plugin.d.ts
.
node_modules/my-kit/dist-types
├── index.d.ts
└── types
├── index.d.ts
└── plugin.d.ts
The weird thing is if I import types from my-kit
(./node_modules/my-kit/dist-types/index.d.ts
). It will come into being a relative path import statement from ./types
(but there no dist/types/index.d.ts
or somethings like it in there).
dist/index.d.ts (actual)
import { RsbuildPluginAPI as Foo } from './types';
export declare type Bar = {};
export { Foo }
export { }
But I expected it should be bundle into the dist/index.d.ts
just like if I import the some type from the sub-path module my-kit/plugin
(./node_modules/my-kit/dist-types/types/plugin.d.ts
). It would be seems like:
dist/index.d.ts (expected)
export declare type Foo = {};
export declare type Bar = {};
export { Foo, Foo }
Reproduce link
https://github.com/Asuka109/repro-rslib-relative-path-typings
Reproduce Steps
pnpm install
pnpm build