o
    %h                     @   sV   d dl Z d dl mZ d dlmZmZmZ d dlmZ er"d dlm	Z	 G dd dZ
dS )    N)Path)TYPE_CHECKINGOptionalUnion)Artifact)Pagec                
   @   s   e Zd Zdddedededdf
dd	Zdefd
dZedddZedefddZ	edefddZ
dddZdee fddZdejfddZdeeef ddfddZdddZdS )Downloadpager   urlsuggested_filenameartifactreturnNc                 C   s,   || _ |j| _|j| _|| _|| _|| _d S N)_page_loop_dispatcher_fiber_url_suggested_filename	_artifact)selfr	   r
   r   r    r   N/var/www/html/myenv/lib/python3.10/site-packages/playwright/_impl/_download.py__init__   s   
zDownload.__init__c                 C   s   d| j d| jdS )Nz<Download url=z suggested_filename=>)r
   r   r   r   r   r   __repr__$   s   zDownload.__repr__c                 C      | j S r   )r   r   r   r   r   r	   '      zDownload.pagec                 C   r   r   )r   r   r   r   r   r
   +   r   zDownload.urlc                 C   r   r   )r   r   r   r   r   r   /   r   zDownload.suggested_filenamec                    s   | j  I d H  d S r   )r   deleter   r   r   r   r   3   s   zDownload.deletec                       | j  I d H S r   )r   failurer   r   r   r   r    6      zDownload.failurec                    r   r   )r   path_after_finishedr   r   r   r   path9   r!   zDownload.pathr#   c                    s   | j |I d H  d S r   )r   save_as)r   r#   r   r   r   r$   <   s   zDownload.save_asc                    r   r   )r   cancelr   r   r   r   r%   ?   r!   zDownload.cancel)r   r   )r   N)__name__
__module____qualname__strr   r   r   propertyr	   r
   r   r   r   r    pathlibr   r#   r   r$   r%   r   r   r   r   r      s0    


r   )r+   r   typingr   r   r   playwright._impl._artifactr   playwright._impl._pager   r   r   r   r   r   <module>   s   