class_docstr: Sends an email.
  
  :param to: list of emails to send the email to. (templated)
  :param subject: subject line for the email. (templated)
  :param html_content: content of the email, html markup
      is allowed. (templated)
  :param files: file names to attach in email (templated)
  :param cc: list of recipients to be added in CC field
  :param bcc: list of recipients to be added in BCC field
  :param mime_subtype: MIME sub content type
  :param mime_charset: character set parameter added to the Content-Type
      header.
  :param custom_headers: additional headers to add to the MIME message.
code: def __init__(
      self,
      *,
      to: list[str] | str,
      subject: str,
      html_content: str,
      files: list | None = None,
      cc: list[str] | str | None = None,
      bcc: list[str] | str | None = None,
      mime_subtype: str = "mixed",
      mime_charset: str = "utf-8",
      conn_id: str | None = None,
      custom_headers: dict[str, Any] | None = None,
      **kwargs,
  ) -> None:
      super().__init__(**kwargs)
      self.to = to
      self.subject = subject
      self.html_content = html_content
      self.files = files or []
      self.cc = cc
      self.bcc = bcc
      self.mime_subtype = mime_subtype
      self.mime_charset = mime_charset
      self.conn_id = conn_id
      self.custom_headers = custom_headers
  
imports: from __future__ import annotations
  from typing import TYPE_CHECKING, Any, Sequence
  from airflow.models.baseoperator import BaseOperator
  from airflow.utils.email import send_email
label_desc: Use image node_id 1 to create a new EmailOperator object from inherited base classes: BaseOperator with example: obj = EmailOperator()