o
    ½Ù·i.  ã                   @   s²   d Z ddlZddlmZmZmZmZmZmZm	Z	m
Z
 er"ddlmZ g d¢Zed Ze
eejf Ze
eee ee f Zeeeed gef ZG d	d
„ d
eƒZG dd„ de	ƒZdS )z 
Custom classes for type annotations

This module provides additional `PEP 484 <https://peps.python.org/pep-0484/>`_
type aliases used in ``pooch``'s codebase.
é    N)ÚTYPE_CHECKINGÚAnyÚCallableÚLiteralÚOptionalÚProtocolÚ	TypedDictÚUnioné   )ÚPooch)ÚActionÚ
DownloaderÚPathTypeÚPathInputTypeÚ	ParsedURLÚ	Processor)ÚdownloadÚfetchÚupdater   c                   @   s@   e Zd ZdZddœdedee ded dee d	ef
d
d„Z	dS )r   zO
    Class used to define the type definition for the downloader function.
    N)Ú
check_onlyÚfnameÚactionÚpoochr   r   Úreturnc                C   s   d S )N© )Úselfr   r   r   r   r   r   úI/home/ubuntu/.local/lib/python3.10/site-packages/pooch/typing/__init__.pyÚ__call__5   s   zDownloader.__call__)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__Ústrr   r   Úboolr   r   r   r   r   r   r   /   s    úþýüúùr   c                   @   s*   e Zd ZU dZeed< eed< eed< dS )r   z‚
    Type for a dictionary generated after parsing a URL.

    The dictionary contains three keys: protocol, netloc and path.
    ÚprotocolÚnetlocÚpathN)r   r   r    r!   r"   Ú__annotations__r   r   r   r   r   ?   s
   
 r   )r!   ÚosÚtypingr   r   r   r   r   r   r   r	   Ú r   Ú__all__r   r"   ÚPathLiker   ÚlistÚtupler   r   r   r   r   r   r   r   Ú<module>   s   (
