code: def handler(cls, options, config):
      print("==== LookupTables; Describe Tables ====\n")
  
      lookup_tables = LookupTablesMagic.get_all_tables(
          LookupTables.get_instance(config=config)
      )
  
      print("{} Tables:\n".format(len(lookup_tables)))
      for table in lookup_tables.values():
          print(" Table Name: {}".format(table.table_name))
          print(" Driver Id: {}".format(table.driver_id))
          print(" Driver Type: {}\n".format(table.driver_type))
  
imports: import copy
  import json
  from streamalert.shared.logger import get_logger
  from streamalert.shared.lookup_tables.core import LookupTables
  from streamalert.shared.lookup_tables.utils import LookupTablesMagic
  from streamalert_cli.utils import CLICommand, generate_subparser, set_parser_epilog
label_desc: Use image node_id 2 for calling the LookupTablesDescribeTablesSubCommand obj's underlying member method code with example usage: obj.handler(cls, options, config) without return types