
    Yi5                         S r SSKJr  SSKJr  SSKJr   " S S\5      r " S S\5      r " S	 S
\5      r	 " S S\5      r
 " S S\5      r " S S\5      r " S S\5      rg)z>This module contains objects related to Telegram forum topics.    )Optional)TelegramObject)JSONDictc                   b   ^  \ rS rSrSrSr SSS.S\S\S\S	\\   S
\\	   4
U 4S jjjjr
SrU =r$ )
ForumTopic   al  
This object represents a forum topic.

Objects of this class are comparable in terms of equality. Two objects of this class are
considered equal, if their :attr:`message_thread_id`, :attr:`name` and :attr:`icon_color`
are equal.

.. versionadded:: 20.0

Args:
    message_thread_id (:obj:`int`): Unique identifier of the forum topic
    name (:obj:`str`): Name of the topic
    icon_color (:obj:`int`): Color of the topic icon in RGB format
    icon_custom_emoji_id (:obj:`str`, optional): Unique identifier of the custom emoji shown
        as the topic icon.

Attributes:
    message_thread_id (:obj:`int`): Unique identifier of the forum topic
    name (:obj:`str`): Name of the topic
    icon_color (:obj:`int`): Color of the topic icon in RGB format
    icon_custom_emoji_id (:obj:`str`): Optional. Unique identifier of the custom emoji shown
        as the topic icon.
)
icon_coloricon_custom_emoji_idmessage_thread_idnameN
api_kwargsr   r   r	   r
   r   c                   > [         TU ]  US9  Xl        X l        X0l        X@l        U R                  U R                  U R                  4U l        U R                  5         g Nr   )super__init__r   r   r	   r
   	_id_attrs_freeze)selfr   r   r	   r
   r   	__class__s         ?/app/.venv/lib/python3.13/site-packages/telegram/_forumtopic.pyr   ForumTopic.__init__5   sP     	J/&7	)3G!00$))T__M    )r   r	   r
   r   r   N)__name__
__module____qualname____firstlineno____doc__	__slots__intstrr   r   r   __static_attributes____classcell__r   s   @r   r   r      sb    0 TI /3 *.  	
 'sm X& r   r   c                   ^   ^  \ rS rSrSrSr SSS.S\S\S\\   S	\\	   4U 4S
 jjjjr
SrU =r$ )ForumTopicCreatedI   a  
This object represents the content of a service message about a new forum topic created in
the chat.

Objects of this class are comparable in terms of equality. Two objects of this class are
considered equal, if their :attr:`name` and :attr:`icon_color` are equal.

.. versionadded:: 20.0

Args:
    name (:obj:`str`): Name of the topic
    icon_color (:obj:`int`): Color of the topic icon in RGB format
    icon_custom_emoji_id (:obj:`str`, optional): Unique identifier of the custom emoji shown
        as the topic icon.

Attributes:
    name (:obj:`str`): Name of the topic
    icon_color (:obj:`int`): Color of the topic icon in RGB format
    icon_custom_emoji_id (:obj:`str`): Optional. Unique identifier of the custom emoji shown
        as the topic icon.
)r	   r
   r   Nr   r   r	   r
   r   c                   > [         TU ]  US9  Xl        X l        X0l        U R                  U R                  4U l        U R                  5         g r   )r   r   r   r	   r
   r   r   )r   r   r	   r
   r   r   s        r   r   ForumTopicCreated.__init__b   sB     	J/	)3G!))T__5r   )r   r	   r
   r   r   )r   r   r   r   r   r    r"   r!   r   r   r   r#   r$   r%   s   @r   r'   r'   I   sW    , ?I /3	 *.  'sm	 X& r   r'   c                   J   ^  \ rS rSrSrSrSS.S\\   SS4U 4S jjjrSr	U =r
$ )	ForumTopicClosedt   z
This object represents a service message about a forum topic closed in the chat.
Currently holds no information.

.. versionadded:: 20.0
 Nr   r   returnc                @   > [         TU ]  US9  U R                  5         g r   r   r   r   r   r   r   s     r   r   ForumTopicClosed.__init__~       J/r   r   r   r   r   r   r    r   r   r   r#   r$   r%   s   @r   r,   r,   t   /     I;? hx&8 D  r   r,   c                   J   ^  \ rS rSrSrSrSS.S\\   SS4U 4S jjjrSr	U =r
$ )	ForumTopicReopened   z
This object represents a service message about a forum topic reopened in the chat.
Currently holds no information.

.. versionadded:: 20.0
r.   Nr   r   r/   c                @   > [         TU ]  US9  U R                  5         g r   r1   r2   s     r   r   ForumTopicReopened.__init__   r4   r   r5   r%   s   @r   r8   r8      r6   r   r8   c            	       b   ^  \ rS rSrSrSr  SSS.S\\   S\\   S\\   4U 4S	 jjjjr	S
r
U =r$ )ForumTopicEdited   a  
This object represents a service message about an edited forum topic.

Objects of this class are comparable in terms of equality. Two objects of this class are
considered equal, if their :attr:`name` and :attr:`icon_custom_emoji_id` are equal.

.. versionadded:: 20.0

Args:
    name (:obj:`str`, optional): New name of the topic, if it was edited.
    icon_custom_emoji_id (:obj:`str`, optional): New identifier of the custom emoji shown as
        the topic icon, if it was edited; an empty string if the icon was removed.

Attributes:
    name (:obj:`str`): Optional. New name of the topic, if it was edited.
    icon_custom_emoji_id (:obj:`str`): Optional. New identifier of the custom emoji shown as
        the topic icon, if it was edited; an empty string if the icon was removed.
)r
   r   Nr   r   r
   r   c                   > [         TU ]  US9  Xl        X l        U R                  U R                  4U l        U R                  5         g r   )r   r   r   r
   r   r   )r   r   r
   r   r   s       r   r   ForumTopicEdited.__init__   s?     	J/#'	3G!))T%>%>?r   )r   r
   r   )NN)r   r   r   r   r   r    r   r"   r   r   r#   r$   r%   s   @r   r=   r=      sT    & 1I #.2
 *.sm 'sm
 X& r   r=   c                   F   ^  \ rS rSrSrSrSS.S\\   4U 4S jjjrSr	U =r
$ )GeneralForumTopicHidden   z
This object represents a service message about General forum topic hidden in the chat.
Currently holds no information.

.. versionadded:: 20.0
r.   Nr   r   c                @   > [         TU ]  US9  U R                  5         g r   r1   r2   s     r   r    GeneralForumTopicHidden.__init__   r4   r   r5   r%   s   @r   rB   rB      (     I;? hx&8  r   rB   c                   F   ^  \ rS rSrSrSrSS.S\\   4U 4S jjjrSr	U =r
$ )GeneralForumTopicUnhidden   z
This object represents a service message about General forum topic unhidden in the chat.
Currently holds no information.

.. versionadded:: 20.0
r.   Nr   r   c                @   > [         TU ]  US9  U R                  5         g r   r1   r2   s     r   r   "GeneralForumTopicUnhidden.__init__   r4   r   r5   r%   s   @r   rH   rH      rF   r   rH   N)r   typingr   telegram._telegramobjectr   telegram._utils.typesr   r   r'   r,   r8   r=   rB   rH   r.   r   r   <module>rO      sk   & E  3 *, ,^( (V~    #~ #Ln   r   