Búsqueda de sitios web

typescript - ¿Cómo puedo sobrescribir tipos incorrectos de un paquete que incluye su propio .d.ts?


Estoy usando chalk con un proyecto de JavaScript que estoy revisando con la bandera checkJs de TypeScript.

El código de JavaScript lo importa así:

const chalk = require('chalk')

Desafortunadamente, Chalk envía sus propios tipos, y sus tipos son incorrectos. Debería usar la sintaxis export=chalk (que es la sintaxis de TypeScript para CommonJS) pero en su lugar hace export default chalk.

Alguien presentó un PR para solucionarlo, pero el proyecto no ha fusionado ningún PR en un tiempo.

¿Cómo puedo solucionar el mal exportado de los typings de chalk?

Respuesta #1

Puedes sobrescribir los tipos del paquete proporcionando un mapeo de rutas:

  1. Crea un archivo llamado chalk-override.d.ts en la raíz de tu proyecto. Copia los tipos de chalk allí y arréglalos.
  2. Agrega lo siguiente a tu tsconfig.json (crea uno con tsc --init --checkJs si aún no lo has hecho):

    {
        // ... other settings ...
    
        "baseUrl": "./",
        "paths": {
            "chalk": ["chalk-override"]
        }
    }
    

Artículos relacionados