
    ,Of                    b    d dl mZ d dlmZ d dlmZ d dlZd dlZd dlmZm	Z	m
Z
  G d de	      Zy)    )annotations)datetime)AnyN)	AttributeCompletableGithubObjectNotSetc                      e Zd ZdZddZddZedd       Zedd       Zedd       Z	edd       Z
edd       Zedd	       Zedd
       Zedd       Zedd       Zedd       Zedd       Zedd       ZddZy)	GithubAppz
    This class represents github apps.

    The reference can be found here
    https://docs.github.com/en/rest/reference/apps

    c                   t         | _        t         | _        t         | _        t         | _        t         | _        t         | _        t         | _        t         | _        t         | _	        t         | _
        t         | _        t         | _        y N)r   _created_at_description_events_external_url	_html_url_id_name_owner_permissions_slug_updated_at_urlselfs    0lib/python3.12/site-packages/github/GithubApp.py_initAttributeszGithubApp._initAttributes?   s[    06,2-3-3)/#)%+
=C7=%+
06$*	    c                z    | j                  | j                  j                  | j                  j                  d      S )N)idurl)get__repr__r   valuer   r   s    r   __repr__zGithubApp.__repr__M   s(    txx~~diioo NOOr   c                d    | j                  | j                         | j                  j                  S r   )_completeIfNotSetr   r"   r   s    r   
created_atzGithubApp.created_atP   (    t//0%%%r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   descriptionzGithubApp.descriptionU   (    t001  &&&r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   eventszGithubApp.eventsZ   s$    t||,||!!!r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   external_urlzGithubApp.external_url_   s(    t112!!'''r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   html_urlzGithubApp.html_urld   s$    t~~.~~###r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   r   zGithubApp.idi   s"    txx(xx~~r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   namezGithubApp.namen   $    tzz*zzr   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   ownerzGithubApp.owners   s$    t{{+{{   r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   permissionszGithubApp.permissionsx   r*   r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   slugzGithubApp.slug}   r4   r   c                d    | j                  | j                         | j                  j                  S r   )r%   r   r"   r   s    r   
updated_atzGithubApp.updated_at   r'   r   c                .    | j                   j                  S r   )r   r"   r   s    r   r    zGithubApp.url   s    yyr   c                (   d|v r| j                  |d         | _        d|v r| j                  |d         | _        d|v r| j	                  |d         | _        d|v r| j                  |d         | _        d|v r| j                  |d         | _        d|v r| j                  |d         | _	        d|v r| j                  |d         | _
        d|v r2| j                  t        j                  j                  |d         | _        d	|v r| j                  |d	         | _        d
|v r5| j                  |d
         | _        | j                  d|d
          | _        d|v r| j                  |d         | _        d|v r| j                  |d         | _        y y )Nr&   r)   r,   r.   r0   r   r3   r6   r8   r:   z/apps/r<   r    )_makeDatetimeAttributer   _makeStringAttributer   _makeListOfStringsAttributer   r   r   _makeIntAttributer   r   _makeClassAttributegithub	NamedUserr   _makeDictAttributer   r   r   r   )r   
attributess     r   _useAttributeszGithubApp._useAttributes   s   :%#:::l;STDJ& $ 9 9*]:S TDz!;;Jx<PQDLZ'!%!:!::n;U!VD#!66z*7MNDN:--j.>?DHZ22:f3EFDJj 2263C3C3M3MzZaObcDKJ& $ 7 7
=8Q RDZ22:f3EFDJ11F:f;M:N2OPDI:%#:::l;STDJ11*U2CDDI r   N)returnNone)rI   str)rI   r   )rI   z	list[str])rI   int)rI   zgithub.NamedUser.NamedUser)rI   zdict[str, str])rG   zdict[str, Any]rI   rJ   )__name__
__module____qualname____doc__r   r#   propertyr&   r)   r,   r.   r0   r   r3   r6   r8   r:   r<   r    rH    r   r   r
   r
   6   s   +P & & ' ' " " ( ( $ $       ! ! ' '     & &  Er   r
   )
__future__r   r   typingr   github.GithubObjectrD   github.NamedUserr   r   r   r
   rR   r   r   <module>rW      s.   X #     J JnE' nEr   