class_docstr: Sends an email.
  
  :param to: list of emails to send the email to. (templated)
  :param from_email: email to send from. (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 (templated)
  :param bcc: list of recipients to be added in BCC field (templated)
  :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 execute(self, context: Context):
      with SmtpHook(smtp_conn_id=self.conn_id) as smtp_hook:
          return smtp_hook.send_email_smtp(
              to=self.to,
              subject=self.subject,
              html_content=self.html_content,
              from_email=self.from_email,
              files=self.files,
              cc=self.cc,
              bcc=self.bcc,
              mime_subtype=self.mime_subtype,
              mime_charset=self.mime_charset,
              conn_id=self.conn_id,
              custom_headers=self.custom_headers,
          )
  
file_path: airflow/airflow/providers/smtp/operators/smtp.py
imports: from __future__ import annotations
  from typing import TYPE_CHECKING, Any, Sequence
  from airflow.models import BaseOperator
  from airflow.providers.smtp.hooks.smtp import SmtpHook
label_desc: Use image node_id 2 for calling the EmailOperator obj's underlying member method code with example usage: obj.execute(context) and returns: smtp_hook