javascript – Porque o retorno dentro do forEach não consegue entender o tipo da resposta de uma função de um de uma classe? Typescript

Eu consigo acessar através do for..of,
Mas através do forEach não consigo, a função não consegue entender que dentro do forEach está retornando uma função que é do tipo IHttpResponse.

interface IHttpResponse {
  statusCode: number;
  body: any;
}

const badRequest = (error: Error): IHttpResponse => ({
  statusCode: 400,
  body: error,
});

class Example {
handle(httpRequest: HttpRequest): IHttpResponse {
    const requiredFields = ('name', 'email', 'password', 'passwordConfirmation');

    // Aqui ele entende que o retorno de badRequest é um IHttpResponse
    for (const field of requiredFields) {
      if (!httpRequest.body(field)) {
        return badRequest(new MissingParamError(field));
      }
    }

   // Usando forEach ele não consegue entender que o retorno do badRequest é um IHttpResponse.     
   requiredFields.forEach((field) => {
      if (!httpRequest.body(field)) {
        return badRequest(new MissingParamError(field));
      }
   });   
}
}