def METHOD_NAME(
    self,
    template_path: str,
    heading: Optional[str] = None,
    description: Optional[str] = None,
    data: Optional[Dict[str, Any]] = None,
) -> str:
    """Generates a file from the template and data"""
    report_data = {
        "heading": heading,
        "description": description,
        "data": data,
        "request": self.request_data,
    }
    report_data.update(self.template_data)
    template = self.template_loader.get_template(template_path)
    return template.render(report_data)