docstr: Receive query as AST (abstract syntax tree) and act upon it somehow.
  
  Args:
      query (ASTNode): sql query represented as AST. Usually it should be ast.Insert
  
  Returns:
      None
docstr_tok: ["Receive","query","as","AST","(","abstract","syntax","tree",")","and","act","upon","it","somehow",".","Args",":","query","(","ASTNode",")",":","sql","query","represented","as","AST",".","Usually","it","should","be","ast.Insert","Returns",":","None"]
code: def insert(self, query: ASTNode) -> None:
      """Receive query as AST (abstract syntax tree) and act upon it somehow.
  
      Args:
          query (ASTNode): sql query represented as AST. Usually it should be ast.Insert
  
      Returns:
          None
      """
      raise NotImplementedError()
  
imports: from typing import Any
  import ast
  import pandas
  from mindsdb_sql.parser.ast import ASTNode, Select, Insert, Update, Delete
  from mindsdb_sql.parser.ast.select.identifier import Identifier
  from mindsdb.integrations.libs.base import BaseHandler
  from mindsdb.integrations.libs.api_handler_exceptions import TableAlreadyExists, TableNotFound
  from mindsdb.integrations.libs.response import HandlerResponse, RESPONSE_TYPE
label_desc: Use image node_id 3 for calling the APITable obj's underlying member method code with example usage: obj.insert(query) without return types