Puedo hacer algo como a continuación para establecer el tipo de req.body en PersoneModel.
import { Request, Response } from 'express'; router.post('/',(req: Request<{}, any, PersoneModel>, res: Response) => { // req.body is now PersoneModel } Sin embargo, sobrescribo la solicitud original, como P extends core.Params = core.ParamsDictionary que se muestra a continuación.
interface Request<P extends core.Params = core.ParamsDictionary, ResBody = any, ReqBody = any, ReqQuery = core.Query> extends core.Request<P, ResBody, ReqBody, ReqQuery> { }¿Cómo evito esto?
Puede importar ParamsDictionary desde express-serve-static-core como se muestra a continuación.
import { ParamsDictionary } from "express-serve-static-core"; import { Request, Response } from 'express'; router.post('/',(req: Request<ParamsDictionary, any, PersoneModel>, res: Response) => { // req.body is now PersoneModel }