o
    ik                     @   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	m
Z
mZ er0d dlmZ d dlmZ G dd	 d	ed	 Zd
S )    )
ListObject)ListableAPIResource)StripeObject)ClassVar)LiteralUnpackTYPE_CHECKING)PhysicalBundleListParams)PhysicalBundleRetrieveParamsc                   @   s  e Zd ZU dZdZeed  ed< G dd deZ	e	ed< e
ed< 	 eed< 	 e
ed	< 	 ed ed
< 	 ed ed< 	 ed ed< 	 eded ded  fddZeded ded  fddZede
ded dd fddZede
ded dd fddZde	iZdS )PhysicalBundlez
    A Physical Bundle represents the bundle of physical items - card stock, carrier letter, and envelope - that is shipped to a cardholder when you create a physical card.
    zissuing.physical_bundleOBJECT_NAMEc                   @   s6   e Zd ZU ed ed< 	 ed ed< 	 ed ed< dS )zPhysicalBundle.Features)optionalrequiredunsupported	card_logocarrier_textsecond_lineN)__name__
__module____qualname__r   __annotations__ r   r   /var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/env/lib/python3.10/site-packages/stripe/issuing/_physical_bundle.pyFeatures   s   
 r   featuresidlivemodenameobject)activeinactivereviewstatus)customstandardtypeparamsr	   returnc                 K   s4   | j d|  |d}t|tstdt|j |S )
        Returns a list of physical bundle objects. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
        getr&   %Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrorr%   r   clsr&   resultr   r   r   listC   s   
zPhysicalBundle.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )r(   r)   r*   Nr+   )_static_request_asyncr-   r.   r   r/   r%   r   r0   r   r   r   
list_asyncW   s   
zPhysicalBundle.list_asyncr
   c                 K   s   | |fi |}|   |S )5
        Retrieves a physical bundle object.
        )refreshr1   r   r&   instancer   r   r   retrievek   s   zPhysicalBundle.retrievec                    s$   | |fi |}|  I dH  |S )r6   N)refresh_asyncr8   r   r   r   retrieve_asyncv   s   zPhysicalBundle.retrieve_asyncN)r   r   r   __doc__r   r   r   r   r   r   strboolclassmethodr   r   r3   r5   r:   r<   _inner_class_typesr   r   r   r   r      s^   
 

r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   typingr   typing_extensionsr   r   r   2stripe.params.issuing._physical_bundle_list_paramsr	   6stripe.params.issuing._physical_bundle_retrieve_paramsr
   r   r   r   r   r   <module>   s   