o
    i                     @   s   d dl mZ d dlmZ d dlmZmZ d dlmZ erFd 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 d dlmZ G dd deZdS )    )StripeService)sanitize_id)Optionalcast)TYPE_CHECKING)FileLink)
ListObject)RequestOptions)FileLinkCreateParams)FileLinkListParams)FileLinkRetrieveParams)FileLinkUpdateParamsc                	   @   s0  e Zd Z		dded ded ddfdd	Z		dded ded ddfd
dZ	dddded ddfddZ	dddded ddfddZ		ddeded ded ddfddZ			ddeded ded ddfddZ
		ddeded ded ddfddZ		ddeded ded ddfddZdS )FileLinkServiceNparamsr   optionsr	   returnListObject[FileLink]c              	   C      t d| jddd||dS )/
        Returns a list of file links.
        r   get/v1/file_linksapibase_addressr   r   r   _requestselfr   r    r   y/var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/env/lib/python3.10/site-packages/stripe/_file_link_service.pylist      zFileLinkService.listc              	      "   t d| jddd||dI dH S )r   r   r   r   r   r   Nr   _request_asyncr   r   r   r   
list_async&      
zFileLinkService.list_asyncr
   r   c              	   C   r   )1
        Creates a new file link object.
        r   postr   r   r   r   r   r   r   r   create9   r!   zFileLinkService.createc              	      r"   )r'   r   r(   r   r   r   Nr#   r   r   r   r   create_asyncL   r&   zFileLinkService.create_asynclinkr   c              	   C   &   t d| jddjt|dd||dS )<
        Retrieves the file link with the given ID.
        r   r   /v1/file_links/{link}r+   r   r   r   r   formatr   r   r+   r   r   r   r   r   retrieve_      	zFileLinkService.retrievec              	      .   t d| jddjt|dd||dI dH S )r-   r   r   r.   r/   r   r   Nr   r$   r1   r   r2   r   r   r   retrieve_asyncs      	
zFileLinkService.retrieve_asyncr   c              	   C   r,   )_
        Updates an existing file link object. Expired links can no longer be updated.
        r   r(   r.   r/   r   r   r0   r2   r   r   r   update   r4   zFileLinkService.updatec              	      r5   )r9   r   r(   r.   r/   r   r   Nr6   r2   r   r   r   update_async   r8   zFileLinkService.update_async)NN)N)__name__
__module____qualname__r   r    r%   r)   r*   strr3   r7   r:   r;   r   r   r   r   r      s    






r   N)stripe._stripe_servicer   stripe._utilr   typingr   r   typing_extensionsr   stripe._file_linkr   stripe._list_objectr   stripe._request_optionsr	   &stripe.params._file_link_create_paramsr
   $stripe.params._file_link_list_paramsr   (stripe.params._file_link_retrieve_paramsr   &stripe.params._file_link_update_paramsr   r   r   r   r   r   <module>   s   