# Path: hypebot/hype_types.py

# 
# Path: hypebot/interfaces/interface_lib.py
# class BaseChatInterface(with_metaclass(abc.ABCMeta)):
#   DEFAULT_PARAMS = params_lib.HypeParams({
#       # Display name used when chatting.
#       'name': 'chatbot',
#   })
#   def __init__(self, params):
#   def RegisterHandlers(self, on_message_fn, user_tracker, user_prefs):
#   def Join(self, channel: hype_types.Channel):
#   def Leave(self, channel: hype_types.Channel):
#   def Loop(self):
#   def FindUser(self, query: Text) -> Optional[user_pb2.User]:
#   def WhoAll(self):
#   def SendMessage(self, channel: hype_types.Channel,
#                   message: Optional[hype_types.Message]):
#   def SendDirectMessage(self, user: user_pb2.User, message: hype_types.Message):
#   def Notice(self, channel: hype_types.Channel, message: hype_types.Message):
#   def Topic(self, channel: hype_types.Channel, new_topic: Text):


from hypebot import hype_types
from hypebot.interfaces import interface_lib
from typing import List, Text
    pass

  def Loop(self):
    """This interface does not interact with a chat application."""
    pass

  def FindUser(self, query: Text):
    """This interface doesn't care about plebs."""
    pass

  def Who(self, unused_user: hype_types.User):
    """This interface doesn't care about plebs."""
    pass

  def WhoAll(self):
    """This interface doesn't care about plebs."""
    pass

  def SendMessage(self, unused_channel: hype_types.Channel,
                  message: hype_types.Message):
    for msg in message.messages:
      # Messages with only cards and no text will have had default text already
      # added by the HypeCore.
      self._msgs.extend(msg.text)

  def SendDirectMessage(self, user, message):
    """Don't capture direct messages."""
    pass

  def Notice(self, unused_channel: hype_types.Channel,

# Path: hypebot/hype_types.py

# 
# Path: hypebot/interfaces/interface_lib.py
# class BaseChatInterface(with_metaclass(abc.ABCMeta)):
#   DEFAULT_PARAMS = params_lib.HypeParams({
#       # Display name used when chatting.
#       'name': 'chatbot',
#   })
#   def __init__(self, params):
#   def RegisterHandlers(self, on_message_fn, user_tracker, user_prefs):
#   def Join(self, channel: hype_types.Channel):
#   def Leave(self, channel: hype_types.Channel):
#   def Loop(self):
#   def FindUser(self, query: Text) -> Optional[user_pb2.User]:
#   def WhoAll(self):
#   def SendMessage(self, channel: hype_types.Channel,
#                   message: Optional[hype_types.Message]):
#   def SendDirectMessage(self, user: user_pb2.User, message: hype_types.Message):
#   def Notice(self, channel: hype_types.Channel, message: hype_types.Message):
#   def Topic(self, channel: hype_types.Channel, new_topic: Text):


# Path: hypebot/interfaces/capture_interface.py
from hypebot import hype_types
from hypebot.interfaces import interface_lib
from typing import List, Text

    pass

  def Loop(self):
    """This interface does not interact with a chat application."""
    pass

  def FindUser(self, query: Text):
    """This interface doesn't care about plebs."""
    pass

  def Who(self, unused_user: hype_types.User):
    """This interface doesn't care about plebs."""
    pass

  def WhoAll(self):
    """This interface doesn't care about plebs."""
    pass

  def SendMessage(self, unused_channel: hype_types.Channel,
                  message: hype_types.Message):
    for msg in message.messages:
      # Messages with only cards and no text will have had default text already
      # added by the HypeCore.
      self._msgs.extend(msg.text)

  def SendDirectMessage(self, user, message):
    """Don't capture direct messages."""
    pass

  def Notice(self, unused_channel: hype_types.Channel,

             unused_message: hype_types.Message):