Avatar ·

Como estender o objeto Request no Express com TypeScript

Olá a todos! Estou escrevendo um backend em Express com TypeScript e me deparei com um problema de tipagem do objeto Request.\n\nEu tenho um middleware que adiciona dados do usuário à requisição após a autenticação. Faço algo assim:\n\n```typescript\nimport { Request, Response, NextFunction } from 'express';\nimport jwt from 'jsonwebtoken';\n\ninterface UserPayload {\n id: string;\n email: string;\n role: 'admin' | 'user';\n}\n\nexport const authMiddleware = (req: Request, res: Response, next: NextFunction) => {\n const token = req.headers.authorization?.split(' ')[1];\n \n if (!token) {\n return res.status(401).json({ message: 'Sem token' });\n }\n\n try {\n const decoded = jwt.verify(token, process.env.JWT_SECRET!) as UserPayload;\n req.user = decoded; // Erro TypeScript: Prope