o
    BiQ!                     @   sx   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZmZmZ d dlmZmZmZ G dd	 d	eZd
S )    )FileLink)
ListObject)RequestOptions)StripeService)sanitize_id)DictListcast)LiteralNotRequired	TypedDictc                	   @   sP  e Zd ZG dd deZG dd deZG dd deZG dd deZG d	d
 d
eZi i fddde	de
e fddZi i fddde	de
e fddZi fddde	defddZi fddde	defddZi i fdeddde	defddZi i fdeddde	defddZi i fdeddde	defdd Zi i fdeddde	defd!d"Zd#S )$FileLinkServicec                   @   sD   e Zd ZU eee  ed< 	 ee ed< 	 eed< 	 ed ed< dS )FileLinkService.CreateParamsexpand
expires_atfileLiteral['']|Dict[str, str]metadataN)__name__
__module____qualname__r   r   str__annotations__int r   r   Y/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/_file_link_service.pyCreateParams   s   
 r   c                   @   sr   e Zd ZU ed ed< 	 ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< 	 ee ed< 	 ee ed< d	S )
FileLinkService.ListParamsz%FileLinkService.ListParamsCreated|intcreatedending_beforer   expiredr   limitstarting_afterN)	r   r   r   r   r   r   r   boolr   r   r   r   r   
ListParams   s   
 r$   c                   @   sD   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )z!FileLinkService.ListParamsCreatedgtgteltlteN)r   r   r   r   r   r   r   r   r   r   ListParamsCreated=   s   
 r)   c                   @   s   e Zd ZU eee  ed< dS )FileLinkService.RetrieveParamsr   Nr   r   r   r   r   r   r   r   r   r   r   RetrieveParamsO   s   
 r,   c                   @   s:   e Zd ZU eee  ed< 	 ed ed< 	 ed ed< dS )FileLinkService.UpdateParamsr   zLiteral['']|Literal['now']|intr   r   r   Nr+   r   r   r   r   UpdateParamsU   s   
 r.   paramsr   optionsreturnc              	   C   s   t tt | jddd||dS )/
        Returns a list of file links.
        get/v1/file_linksapibase_addressr/   r0   )r	   r   r   _requestselfr/   r0   r   r   r   listc   s   zFileLinkService.listc              	      s&   t tt | jddd||dI dH S )r2   r3   r4   r5   r6   N)r	   r   r   _request_asyncr9   r   r   r   
list_asyncv   s   
zFileLinkService.list_asyncr   c              	   C   s   t t| jddd||dS )1
        Creates a new file link object.
        postr4   r5   r6   )r	   r   r8   r9   r   r   r   create   s   zFileLinkService.createc              	      s"   t t| jddd||dI dH S )r>   r?   r4   r5   r6   N)r	   r   r<   r9   r   r   r   create_async   s   
zFileLinkService.create_asynclinkr*   c              	   C   &   t t| jddjt|dd||dS )<
        Retrieves the file link with the given ID.
        r3   /v1/file_links/{link}rB   r5   r6   r	   r   r8   formatr   r:   rB   r/   r0   r   r   r   retrieve      	zFileLinkService.retrievec              	      .   t t| jddjt|dd||dI dH S )rD   r3   rE   rF   r5   r6   Nr	   r   r<   rH   r   rI   r   r   r   retrieve_async      	
zFileLinkService.retrieve_asyncr-   c              	   C   rC   )_
        Updates an existing file link object. Expired links can no longer be updated.
        r?   rE   rF   r5   r6   rG   rI   r   r   r   update   rK   zFileLinkService.updatec              	      rL   )rP   r?   rE   rF   r5   r6   NrM   rI   r   r   r   update_async   rO   zFileLinkService.update_asyncN)r   r   r   r   r   r$   r)   r,   r.   r   r   r   r;   r=   r@   rA   r   rJ   rN   rQ   rR   r   r   r   r   r      s    






r   N)stripe._file_linkr   stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   typingr   r   r	   typing_extensionsr
   r   r   r   r   r   r   r   <module>   s   