def __init__(self, id, type, title=None, username=None, first_name=None, last_name=None, all_members_are_administrators=None, photo=None, description=None, invite_link=None, pinned_message=None, sticker_set_name=None, can_set_sticker_set=None, _raw=None):
        """
        This object represents a chat.

        https://core.telegram.org/bots/api#chat
        

        Parameters:
        
        :param id: Unique identifier for this chat. This number may be greater than 32 bits and some programming languages may have difficulty/silent defects in interpreting it. But it is smaller than 52 bits, so a signed 64 bit integer or double-precision float type are safe for storing this identifier.
        :type  id: int
        
        :param type: Type of chat, can be either “private”, “group”, “supergroup” or “channel”
        :type  type: str|unicode
        

        Optional keyword parameters:
        
        :param title: Optional. Title, for supergroups, channels and group chats
        :type  title: str|unicode
        
        :param username: Optional. Username, for private chats, supergroups and channels if available
        :type  username: str|unicode
        
        :param first_name: Optional. First name of the other party in a private chat
        :type  first_name: str|unicode
        
        :param last_name: Optional. Last name of the other party in a private chat
        :type  last_name: str|unicode
        
        :param all_members_are_administrators: Optional. True if a group has ‘All Members Are Admins’ enabled.
        :type  all_members_are_administrators: bool
        
        :param photo: Optional. Chat photo. Returned only in getChat.
        :type  photo: pytgbot.api_types.receivable.media.ChatPhoto
        
        :param description: Optional. Description, for supergroups and channel chats. Returned only in getChat.
        :type  description: str|unicode
        
        :param invite_link: Optional. Chat invite link, for supergroups and channel chats. Each administrator in a chat generates their own invite links, so the bot must first generate the link using exportChatInviteLink. Returned only in getChat.
        :type  invite_link: str|unicode
        
        :param pinned_message: Optional. Pinned message, for supergroups and channel chats. Returned only in getChat.
        :type  pinned_message: pytgbot.api_types.receivable.updates.Message
        
        :param sticker_set_name: Optional. For supergroups, name of group sticker set. Returned only in getChat.
        :type  sticker_set_name: str|unicode
        
        :param can_set_sticker_set: Optional. True, if the bot can change the group sticker set. Returned only in getChat.
        :type  can_set_sticker_set: bool
        
        :param _raw: Optional. Original data this object was generated from. Could be `None`.
        :type  _raw: None | dict
        """
        super(Chat, self).__init__()
        from pytgbot.api_types.receivable.media import ChatPhoto
        from pytgbot.api_types.receivable.updates import Message
        
        assert_type_or_raise(id, int, parameter_name="id")
        self.id = id
        
        assert_type_or_raise(type, unicode_type, parameter_name="type")
        self.type = type
        
        assert_type_or_raise(title, None, unicode_type, parameter_name="title")
        self.title = title
        
        assert_type_or_raise(username, None, unicode_type, parameter_name="username")
        self.username = username
        
        assert_type_or_raise(first_name, None, unicode_type, parameter_name="first_name")
        self.first_name = first_name
        
        assert_type_or_raise(last_name, None, unicode_type, parameter_name="last_name")
        self.last_name = last_name
        
        assert_type_or_raise(all_members_are_administrators, None, bool, parameter_name="all_members_are_administrators")
        self.all_members_are_administrators = all_members_are_administrators
        
        assert_type_or_raise(photo, None, ChatPhoto, parameter_name="photo")
        self.photo = photo
        
        assert_type_or_raise(description, None, unicode_type, parameter_name="description")
        self.description = description
        
        assert_type_or_raise(invite_link, None, unicode_type, parameter_name="invite_link")
        self.invite_link = invite_link
        
        assert_type_or_raise(pinned_message, None, Message, parameter_name="pinned_message")
        self.pinned_message = pinned_message
        
        assert_type_or_raise(sticker_set_name, None, unicode_type, parameter_name="sticker_set_name")
        self.sticker_set_name = sticker_set_name
        
        assert_type_or_raise(can_set_sticker_set, None, bool, parameter_name="can_set_sticker_set")
        self.can_set_sticker_set = can_set_sticker_set

        self._raw = _raw
def __init__ ( self , id , type , title = None , username = None , first_name = None , last_name = None , all_members_are_administrators = None , photo = None , description = None , invite_link = None , pinned_message = None , sticker_set_name = None , can_set_sticker_set = None , _raw = None ) : super ( Chat , self ) . __init__ ( ) from pytgbot . api_types . receivable . media import ChatPhoto from pytgbot . api_types . receivable . updates import Message assert_type_or_raise ( id , int , parameter_name = "id" ) self . id = id assert_type_or_raise ( type , unicode_type , parameter_name = "type" ) self . type = type assert_type_or_raise ( title , None , unicode_type , parameter_name = "title" ) self . title = title assert_type_or_raise ( username , None , unicode_type , parameter_name = "username" ) self . username = username assert_type_or_raise ( first_name , None , unicode_type , parameter_name = "first_name" ) self . first_name = first_name assert_type_or_raise ( last_name , None , unicode_type , parameter_name = "last_name" ) self . last_name = last_name assert_type_or_raise ( all_members_are_administrators , None , bool , parameter_name = "all_members_are_administrators" ) self . all_members_are_administrators = all_members_are_administrators assert_type_or_raise ( photo , None , ChatPhoto , parameter_name = "photo" ) self . photo = photo assert_type_or_raise ( description , None , unicode_type , parameter_name = "description" ) self . description = description assert_type_or_raise ( invite_link , None , unicode_type , parameter_name = "invite_link" ) self . invite_link = invite_link assert_type_or_raise ( pinned_message , None , Message , parameter_name = "pinned_message" ) self . pinned_message = pinned_message assert_type_or_raise ( sticker_set_name , None , unicode_type , parameter_name = "sticker_set_name" ) self . sticker_set_name = sticker_set_name assert_type_or_raise ( can_set_sticker_set , None , bool , parameter_name = "can_set_sticker_set" ) self . can_set_sticker_set = can_set_sticker_set self . _raw = _raw
This object represents a chat.

        https://core.telegram.org/bots/api#chat
        

        Parameters:
        
        :param id: Unique identifier for this chat. This number may be greater than 32 bits and some programming languages may have difficulty/silent defects in interpreting it. But it is smaller than 52 bits, so a signed 64 bit integer or double-precision float type are safe for storing this identifier.
        :type  id: int
        
        :param type: Type of chat, can be either “private”, “group”, “supergroup” or “channel”
        :type  type: str|unicode
        

        Optional keyword parameters:
        
        :param title: Optional. Title, for supergroups, channels and group chats
        :type  title: str|unicode
        
        :param username: Optional. Username, for private chats, supergroups and channels if available
        :type  username: str|unicode
        
        :param first_name: Optional. First name of the other party in a private chat
        :type  first_name: str|unicode
        
        :param last_name: Optional. Last name of the other party in a private chat
        :type  last_name: str|unicode
        
        :param all_members_are_administrators: Optional. True if a group has ‘All Members Are Admins’ enabled.
        :type  all_members_are_administrators: bool
        
        :param photo: Optional. Chat photo. Returned only in getChat.
        :type  photo: pytgbot.api_types.receivable.media.ChatPhoto
        
        :param description: Optional. Description, for supergroups and channel chats. Returned only in getChat.
        :type  description: str|unicode
        
        :param invite_link: Optional. Chat invite link, for supergroups and channel chats. Each administrator in a chat generates their own invite links, so the bot must first generate the link using exportChatInviteLink. Returned only in getChat.
        :type  invite_link: str|unicode
        
        :param pinned_message: Optional. Pinned message, for supergroups and channel chats. Returned only in getChat.
        :type  pinned_message: pytgbot.api_types.receivable.updates.Message
        
        :param sticker_set_name: Optional. For supergroups, name of group sticker set. Returned only in getChat.
        :type  sticker_set_name: str|unicode
        
        :param can_set_sticker_set: Optional. True, if the bot can change the group sticker set. Returned only in getChat.
        :type  can_set_sticker_set: bool
        
        :param _raw: Optional. Original data this object was generated from. Could be `None`.
        :type  _raw: None | dict