Description
Trying to import FlagdProvider in Typescript with ESM causes the following error:
node_modules/@openfeature/flagd-provider/src/index.d.ts:1:15 - error TS2834: Relative import paths need explicit file extensions in EcmaScript imports when '--moduleResolution' is 'node16' or 'nodenext'. Consider adding an extension to the import path.
1 export * from './lib/flagd-provider';
~~~~~~~~~~~~~~~~~~~~~~
src/main.ts:2:10 - error TS2305: Module '"@openfeature/flagd-provider"' has no exported member 'FlagdProvider'.
2 import { FlagdProvider } from '@openfeature/flagd-provider';
~~~~~~~~~~~~~
Found 2 errors in 2 files.
Errors Files
1 node_modules/@openfeature/flagd-provider/src/index.d.ts:1
1 src/main.ts:2
When I switch my project to CommonJS the problem is resolved.
I'm not sure if this is a bug or if I'm doing something wrong here.
Steps to reproduce
- Create Typescript ESM project.
- Import FlagdProvider like so:
import { FlagdProvider } from '@openfeature/flagd-provider';
.
I also created a simple example repo. Running npm run build
shows the error.