docstr: update
  
  Args:
      query (ast.Update): user's entered query
  
  Returns:
      None
docstr_tok: ["update","Args",":","query","(","ast.Update",")",":","user","'s","entered","query","Returns",":","None"]
code: def update(self, query: ast.Update) -> None:
      """update
  
      Args:
          query (ast.Update): user's entered query
  
      Returns:
          None
      """
      conditions = extract_comparison_conditions(query.where)
      # Get page id from query
      _id = None
      for op, arg1, arg2 in conditions:
          if arg1 == "id" and op == "=":
              _id = arg2
          else:
              raise NotImplementedError
  
      data = {}
      for key, value in query.update_columns.items():
          if isinstance(value, Constant):
              data[key] = value.value
          else:
              data[key] = value
      self.handler.call_intercom_api(
          endpoint=f"/articles/{_id}",
          method="PUT",
          data=json.dumps(data),
      )
  
file_path: mindsdb/mindsdb/integrations/handlers/intercom_handler/intercom_tables.py
imports: from typing import List
  from mindsdb.integrations.utilities.sql_utils import extract_comparison_conditions
  from mindsdb.integrations.libs.api_handler import APIHandler, APITable
  from mindsdb_sql.parser import ast
  import pandas
  from mindsdb_sql.parser.ast.select.constant import Constant
  import json
label_desc: Use image node_id 4 for calling the Articles obj's underlying member method code with example usage: obj.update(query) without return types