Estoy trabajando con un Lerna monorepo. A menudo veo que un paquete realiza importaciones desde el interior de otro paquete, por ejemplo:
import { SomeType } from "@schema/folder/folder/file.ts" Esto no es deseable, porque a veces necesitamos transformar los tipos generados automáticamente antes de exportarlos a través index.d.ts . Esto a veces da como resultado que se importe el tipo incorrecto, no transformado, desde el interior del paquete.
Me gustaría restringir de alguna manera los archivos/carpetas que un paquete expone a los demás, por lo que tales importaciones no serían posibles:
import { SomeType } from "@schema" // valid import { SomeType2 } from "@schema/folder/folder/file.ts" // invalid¿Cuáles son mis opciones?
No estoy seguro de qué otra información puedo proporcionar ya que tengo poca o ninguna experiencia con estas cosas.
Cuando usa eslint , puede agregar una regla no-restricted-imports a la configuración de eslint del paquete:
"no-restricted-imports": [ "error", { "patterns": ["@schema/folder/*"] } ],