
    ,Of                    v    d dl mZ d dlmZmZ d dlZd dlZd dlm	Z	m
Z
mZ erd dlmZ d dlmZ  G d de
      Zy)	    )annotations)TYPE_CHECKINGAnyN)	AttributeCompletableGithubObjectNotSet)	NamedUser)Organizationc                      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dd
Zy)
Membershipz
    This class represents Membership of an organization.

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

    c                    t         | _        t         | _        t         | _        t         | _        t         | _        t         | _        y N)r   _url_state_role_organization_url_organization_userselfs    1lib/python3.12/site-packages/github/Membership.py_initAttributeszMembership._initAttributesB   s.    $*	&,%+
176<+1
    c                P    | j                  d| j                  j                  i      S )Nurl)get__repr__r   valuer   s    r   __repr__zMembership.__repr__J   s     		 899r   c                d    | j                  | j                         | j                  j                  S r   )_completeIfNotSetr   r   r   s    r   r   zMembership.urlM   s"    tyy)yyr   c                d    | j                  | j                         | j                  j                  S r   )r    r   r   r   s    r   statezMembership.stateR   s$    t{{+{{   r   c                d    | j                  | j                         | j                  j                  S r   )r    r   r   r   s    r   rolezMembership.roleW   $    tzz*zzr   c                d    | j                  | j                         | j                  j                  S r   )r    r   r   r   s    r   organization_urlzMembership.organization_url\   s(    t556%%+++r   c                d    | j                  | j                         | j                  j                  S r   )r    r   r   r   s    r   organizationzMembership.organizationa   s(    t112!!'''r   c                d    | j                  | j                         | j                  j                  S r   )r    r   r   r   s    r   userzMembership.userf   r%   r   c                   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 r3| j                  t        j                  j                  |d         | _
        y y )Nr   r"   r$   r'   r)   r+   )_makeStringAttributer   r   r   r   _makeClassAttributegithubr
   r   r	   r   )r   
attributess     r   _useAttributeszMembership._useAttributesk   s    J11*U2CDDIj 33Jw4GHDKZ22:f3EFDJ+%)%>%>zJ\?]%^D"Z'!%!9!9&:M:M:Z:Z\fgu\v!wDZ11&2B2B2L2LjY_N`aDJ  r   N)returnNone)r2   str)r2   r
   )r2   r	   )r0   zdict[str, Any]r2   r3   )__name__
__module____qualname____doc__r   r   propertyr   r"   r$   r'   r)   r+   r1    r   r   r   r   9   s    2:   ! !     , , ( (    br   r   )
__future__r   typingr   r   github.NamedUserr/   github.Organizationgithub.GithubObjectr   r   r   r	   r
   r   r:   r   r   <module>r@      s2   X # %   J J*0>b( >br   