
    bf                     J    d dl mZmZ d dlmZ d dlmZ  G d de          ZdS )   )_DICT_VERSION_ACCOUNT_DICT_VERSION_RELATIONSHIP)api_version)Mastodonc                   z   e Zd Z edde          dd            Z edde          dd            Z edde          dd            Z eddd          dd	            Z edd
e	          d             Z
 edd
e	          d             Z eddd          dd            Z eddd          dd            ZdS )r   z1.1.0z2.6.0Nc                    ||                      |d          }||                      |d          }||                      |d          }|                     t                                }|                     dd|          S )z
        Fetch a list of users muted by the logged-in user.

        Returns a list of :ref:`account dicts <account dicts>`.
        NTdateconvGETz/api/v1/mutes_Mastodon__unpack_id_Mastodon__generate_paramslocals_Mastodon__api_requestselfmax_idmin_idsince_idlimitparamss         d/home/feoh/.local/pipx/venvs/mastodon-archive/lib/python3.11/site-packages/mastodon/relationships.pymuteszMastodon.mutes   s     %%ft%<<F%%ft%<<F''4'@@H''11!!%&AAA    z1.0.0c                    ||                      |d          }||                      |d          }||                      |d          }|                     t                                }|                     dd|          S )z
        Fetch a list of users blocked by the logged-in user.

        Returns a list of :ref:`account dicts <account dicts>`.
        NTr	   r   z/api/v1/blocksr   r   s         r   blockszMastodon.blocks    s     %%ft%<<F%%ft%<<F''4'@@H''11!!%)96BBBr   c                    ||                      |d          }||                      |d          }||                      |d          }|                     t                                }|                     dd|          S )z
        Fetch the logged-in user's incoming follow requests.

        Returns a list of :ref:`account dicts <account dicts>`.
        NTr	   r   z/api/v1/follow_requestsr   r   s         r   follow_requestszMastodon.follow_requests6   s     %%ft%<<F%%ft%<<F''4'@@H''11!!%)BFKKKr   z1.4.0c                    ||                      |d          }||                      |d          }||                      |d          }|                     t                                }|                     dd|          S )z
        Fetch the logged-in user's blocked domains.

        Returns a list of blocked domain URLs (as strings, without protocol specifier).
        NTr	   r   /api/v1/domain_blocksr   r   s         r   domain_blockszMastodon.domain_blocksL   s     %%ft%<<F%%ft%<<F''4'@@H''11!!%)@&IIIr   z3.0.0c                 `    |                      |          }|                     dd| d          S )z
        Accept an incoming follow request.

        Returns the updated :ref:`relationship dict <relationship dict>` for the requesting account.
        POST/api/v1/follow_requests/z
/authorizer   r   r   ids     r   follow_request_authorizez!Mastodon.follow_request_authorizeb   s9     b!!!!&*SR*S*S*STTTr   c                 `    |                      |          }|                     dd| d          S )z
        Reject an incoming follow request.

        Returns the updated :ref:`relationship dict <relationship dict>` for the requesting account.
        r#   r$   z/rejectr%   r&   s     r   follow_request_rejectzMastodon.follow_request_rejectl   s9     b!!!!&*PR*P*P*PQQQr   c                 v    |                      t                                }|                     dd|           dS )zl
        Add a block for all statuses originating from the specified domain for the logged-in user.
        r#   r    Nr   r   r   r   domainr   s      r   domain_blockzMastodon.domain_blocky   s:    
 ''116#:FCCCCCr   c                 v    |                      t                                }|                     dd|           dS )z?
        Remove a domain block for the logged-in user.
        DELETEr    Nr,   r-   s      r   domain_unblockzMastodon.domain_unblock   s:    
 ''118%<fEEEEEr   )NNNN)N)__name__
__module____qualname__r   r   r   r   r   r!   r   r(   r*   r/   r2    r   r   r   r   	   s        ['#899B B B :9B$ ['#899C C C :9C* ['#899L L L :9L* ['7++J J J ,+J* ['#=>>U U ?>U ['#=>>R R ?>R ['7++D D D ,+D ['7++F F F ,+F F Fr   r   N)versionsr   r   utilityr   	internalsr   	Internalsr6   r   r   <module>r;      s    H G G G G G G G             , , , , , ,~F ~F ~F ~F ~Fy ~F ~F ~F ~F ~Fr   