Sobrescrita do tipo de propriedade de interface declarada em arquivo .d.ts TypeScript
Olá a todos! Sou novo no TypeScript e encontrei um problema ao trabalhar com bibliotecas externas. Tenho uma biblioteca (por exemplo, `express` ou `mongoose`) que, em seus arquivos de declaração de tipos (`.d.ts`), define uma interface, digamos, `Request`. Nessa interface, há uma propriedade `user` que, por padrão, tem o tipo `any` ou `Express.User | undefined`. Preciso sobrescrever essa propriedade no meu projeto para que ela tenha um tipo específico, por exemplo, `{ id: string; name: string; role: 'admin' | 'user' }`.
O problema é que não posso simplesmente alterar o arquivo `.d.ts` da biblioteca — isso é uma má prática e, ao atualizar a biblioteca, minhas alterações serão perdidas. Tentei criar minha própria interface que estende a original, mas o TypeScript reclama de conflito de tipos ou não reconhece minha sobrescrita.
Aqui está um exemplo de código:
```typescript
// Em node_modules/@types/express/index.d.ts (condicionalmente)
interface Request {
user?: any;
// ... outras propriedades
}
// Meu arquivo types/express.d.ts
import {