0

I want to create a simple yarn package that can be installed by multiple local yarn projects using yarn add link:/path/to/package. Imagine the package of the package to be shared looks like this

├── package.json
├── tsconfig.json
└── src
    ├── generated
    │   ├── abc.js
    │   ├── abc.d.ts
    │   └── def.js
    │   └── def.d.ts

My goal is that abc and def should be accessible like this

import * from "myPackage/abc"

Currently if I install the above package with yarn add link:/path/to/package then I have to do

import * from "myPackage/src/generated/abc"

I'm a rookie on making typescript packages so forgive me. Can someone point me in the right direction here?

I've tried the suggestion here but it doesn't make a difference.

mr.bjerre
  • 2,384
  • 2
  • 24
  • 37

1 Answers1

0

So it seems I need to set exports and typesVersions in package.json

  "exports": {
    "./": "./src/generated/"
  },
  "typesVersions": {
    "*": {
      "abc": [
        "./src/generated/abc.d.ts"
      ],
      "def": [
        "./src/generated/def.d.ts"
      ],
    }
  },
mr.bjerre
  • 2,384
  • 2
  • 24
  • 37