Un proyecto con el que estoy trabajando está usando este paquete: https://www.npmjs.com/package/@ethersproject/abstract-provider dentro de un SDK que estamos construyendo.
Después de la instalación, la carpeta SDK node_modules contiene el directorio @ethersproject que contiene un directorio abstract-provider así como muchos otros directorios, cada uno con su propio espacio de nombres con archivos package.json separados.
Usamos el código en el SDK de la siguiente manera: import { Provider } from '@ethersproject/abstract-provider'; y esto funciona bien para proyectos basados en paquetes web que importan nuestro SDK (como una aplicación React que usa create-react-app).
Cuando quiero usar nuestro SDK en un proyecto que NO usa un paquete como un paquete web (como una interfaz muy simple que extrae nuestro SDK con importmap como aquí: https://github.com/unegma/rainprotocol__verify-gating ) , estamos recibiendo un error:
Failed to resolve module specifier "@ethersproject/abstract-provider". Relative references must start with either "/", "./", or "../".
Supongo que esto se debe a que nuestro SDK no sabe cómo resolver @ethersproject/abstract-provider porque abstract-provider es un submódulo de @ethersproject (que ni siquiera es un módulo en sí).
¿Cuál es la manera de resolver este problema? ¿Necesitamos crear un archivo decs.d.ts en nuestra raíz SDK que contenga algo como: declare module "@ethersproject/abstract-provider; o hay una forma diferente de hacerlo?