a
    g                     @   st   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 d dlmZmZmZ G dd	 d	eZd
S )    )
ListObject)RequestOptions)StripeService)sanitize_id)Token)Listcast)LiteralNotRequired	TypedDictc                   @   s   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i fd	ee	e
 d
ddZi fd	ee	e
 d
ddZi i fedee
dddZi i fedee
dddZi fedee
dddZi fedee
dddZdS )TokenServicec                   @   sf   e Zd ZU eed< ed ed< ee ed< eee  ed< ee ed< ee ed< eed  ed	< d
S )TokenService.ListParamsZcardz"TokenService.ListParamsCreated|intcreatedZending_beforeexpandlimitZstarting_after)activedeleted	requested	suspendedstatusN)	__name__
__module____qualname__str__annotations__r
   r   intr	    r   r   k/var/www/staging/api/virtual_environments/venv/lib/python3.9/site-packages/stripe/issuing/_token_service.py
ListParams   s   
r   c                   @   s>   e Zd ZU ee ed< ee ed< ee ed< ee ed< dS )zTokenService.ListParamsCreatedgtZgteltZ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 )TokenService.RetrieveParamsr   N)r   r   r   r
   r   r   r   r   r   r   r   RetrieveParams?   s   
r#   c                   @   s*   e Zd ZU eee  ed< ed ed< dS )TokenService.UpdateParamsr   )r   r   r   r   N)r   r   r   r
   r   r   r   r	   r   r   r   r   UpdateParamsE   s   
r%   r   )paramsoptionsreturnc              	   C   s   t tt | jddd||dS )C
        Lists all Issuing Token objects for a given card.
        get/v1/issuing/tokensapiZbase_addressr&   r'   )r   r   r   _requestselfr&   r'   r   r   r   listO   s    zTokenService.listc              	      s$   t tt | jddd||dI dH S )r)   r*   r+   r,   r-   N)r   r   r   _request_asyncr/   r   r   r   
list_async`   s    
zTokenService.list_asyncr"   )tokenr&   r'   r(   c              	   C   s&   t t| jddjt|dd||dS )4
        Retrieves an Issuing Token object.
        r*   /v1/issuing/tokens/{token}r4   r,   r-   r   r   r.   formatr   r0   r4   r&   r'   r   r   r   retrieveq   s    	zTokenService.retrievec              	      s,   t t| jddjt|dd||dI dH S )r5   r*   r6   r7   r,   r-   Nr   r   r2   r9   r   r:   r   r   r   retrieve_async   s    	
zTokenService.retrieve_asyncr$   c              	   C   s&   t t| jddjt|dd||dS )`
        Attempts to update the specified Issuing Token object to the status specified.
        postr6   r7   r,   r-   r8   r:   r   r   r   update   s    	zTokenService.updatec              	      s,   t t| jddjt|dd||dI dH S )r>   r?   r6   r7   r,   r-   Nr<   r:   r   r   r   update_async   s    	
zTokenService.update_asyncN)r   r   r   r   r   r!   r#   r%   r   r   r   r1   r3   r   r;   r=   r@   rA   r   r   r   r   r      sX    r   N)Zstripe._list_objectr   Zstripe._request_optionsr   Zstripe._stripe_servicer   Zstripe._utilr   Zstripe.issuing._tokenr   typingr   r   Ztyping_extensionsr	   r
   r   r   r   r   r   r   <module>   s   