
    ,Of                     f    d dl mZmZ d dlZd dlmZ  G d dej                  j                        Zy)    )AnyDictN)	Attributec                       e Zd ZdZddZdefdZedefd       Z	edefd       Z
edefd       Zedefd	       Zedefd
       ZddZdeeef   ddfdZy)UserKeyz
    This class represents UserKeys.

    The reference can be found here
    https://docs.github.com/en/rest/reference/users#keys

    returnNc                 :   t         j                  j                  | _        t         j                  j                  | _        t         j                  j                  | _        t         j                  j                  | _        t         j                  j                  | _        y N)githubGithubObjectNotSet_id_key_title_url	_verifiedselfs    .lib/python3.12/site-packages/github/UserKey.py_initAttributeszUserKey._initAttributes8   sa    #)#6#6#=#=$*$7$7$>$>	&,&9&9&@&@$*$7$7$>$>	*0*=*=*D*D    c                 z    | j                  | j                  j                  | j                  j                  d      S )N)idtitle)get__repr__r   valuer   r   s    r   __repr__zUserKey.__repr__?   s*    txx~~@Q@Q RSSr   c                 d    | j                  | j                         | j                  j                  S r
   )_completeIfNotSetr   r   r   s    r   r   z
UserKey.idB   s"    txx(xx~~r   c                 d    | j                  | j                         | j                  j                  S r
   )r   r   r   r   s    r   keyzUserKey.keyG   "    tyy)yyr   c                 d    | j                  | j                         | j                  j                  S r
   )r   r   r   r   s    r   r   zUserKey.titleL   s$    t{{+{{   r   c                 d    | j                  | j                         | j                  j                  S r
   )r   r   r   r   s    r   urlzUserKey.urlQ   r"   r   c                 d    | j                  | j                         | j                  j                  S r
   )r   r   r   r   s    r   verifiedzUserKey.verifiedV   s$    t~~.~~###r   c                 V    | j                   j                  d| j                        \  }}y)z
        :calls: `DELETE /user/keys/{id} <https://docs.github.com/en/rest/reference/users#get-a-public-ssh-key-for-the-authenticated-user>`_
        :rtype: None
        DELETEN)
_requesterrequestJsonAndCheckr%   )r   headersdatas      r   deletezUserKey.delete[   s"    
 ;;HdhhOr   
attributesc                 (   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         | _        y y )Nr   r!   r   r%   r'   )_makeIntAttributer   _makeStringAttributer   r   r   _makeBoolAttributer   )r   r/   s     r   _useAttributeszUserKey._useAttributesb   s    :--j.>?DHJ11*U2CDDIj 33Jw4GHDKJ11*U2CDDI#!44Z
5KLDN $r   )r   N)__name__
__module____qualname____doc__r   strr   propertyintr   r!   r   r%   boolr'   r.   r   r   r4    r   r   r   r   /   s    ET# T C   S   !s ! ! S   $$ $ $P
Mc3h 
MD 
Mr   r   )	typingr   r   github.GithubObjectr   r   r   CompletableGithubObjectr   r=   r   r   <module>rA      s+   R   )=Mf!!99 =Mr   