I am new to creating npm packages.
I would not want users to be able to import everything from my package, such as the Utils class.
export class Utils implements IUtils {
// ......
}
How do I avoid it?
>Solution :
You can specify the exports key in your package.json. When this is set, only the specified paths can be accessed from the module.
Docs: https://nodejs.org/api/packages.html#exports
The way I usually do this is to create an index.js or index.ts and add that to the exports. Then, anything I want to expose publicly, I export via the index file.
For example:
// index.ts
export { MyPublicClass } from './MyPublicClass'