@types/node . Cuando escribo import http = require('http') o import * as http from 'http' , se infiere el tipo de objeto que estoy importando: 
const fs = require('fs'); , el tipo es any . ¿Porqué es eso? ¿Puedo hacer algo al respecto?TL;RD
Una posible solución para esto es importar los tipos para Node.js.
Solución completa
La solución para este problema es importar los tipos para Node.js.
Está disponible como un paquete npm . Contiene todos los tipos para Node.js.
Para instalarlo, debe ejecutar el siguiente comando.
$ npm install --save-dev @types/node La razón por la que el --save-dev está en el comando de instalación es porque no se supone que sea una dependencia, sino una dependencia dev (desarrollo). Esto no instalará este paquete si, por ejemplo, su proyecto está instalado como un módulo npm .
Después de esto, IntelliSense recogerá automáticamente las definiciones de tipo y agregará la corrección automática de su código Node.js, lo que incluye hacer otras cosas útiles.
Si las definiciones de tipo no se recogen, la mejor solución es reiniciar Visual Studio Code. Si eso no funciona, asegúrese de que esté en su archivo package.json .
{ "devDependencies": { "@types/node": "^17.0.31" } }Nota: La versión era correcta en el momento de la publicación.
Si no es así, agregue ese código en su archivo package.json , guárdelo y ejecute el siguiente comando.
$ npm installEsto debería instalarlo con éxito.