Entendendo esModuleInterop no tsconfig.json: como corrigir a importação de módulos CommonJS em TypeScript
Olá a todos! Sou novo no TypeScript e me deparei com um problema que não entendo ao configurar um projeto. Tenho um projeto Node.js e estou usando a biblioteca popular `express`. Instalei-a via npm e também instalei os tipos (`@types/express`). Meu arquivo `tsconfig.json` está assim:
```json
{
"compilerOptions": {
"target": "ES2020",
"module": "commonjs",
"outDir": "./dist",
"rootDir": "./src",
"strict": true
}
}
```
Quando tento importar o express assim:
```typescript
import express from 'express';
```
O TypeScript gera um erro: `Module '"/path/to/node_modules/@types/express/index"' has no default export.` ou algo como `This module is declared with 'export =' and can only be used with a default import when using the 'esModuleInterop' flag.`
Li sobre a flag `esModuleInterop`, mas não entendo completamente o que ela faz e por que isso é um problema. Por que não posso simplesmente importar o express como estou acostumado em JavaScript? Qual