o
    iM_                     @   s
  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 d dlmZ d dlmZmZ d d	lmZmZmZmZmZ d d
lmZmZmZ erpd 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d ed e	d ed Z'dS )    )CreateableAPIResource)DeletableAPIResource)ExpandableField)
ListObject)ListableAPIResource)StripeObject)UpdateableAPIResource)class_method_variantsanitize_id)ClassVarListOptionalcastoverload)LiteralUnpackTYPE_CHECKING)File)ConfigurationCreateParams)ConfigurationDeleteParams)ConfigurationListParams)ConfigurationModifyParams)ConfigurationRetrieveParamsc                	   @   sD  e Zd ZU dZdZeed  ed< 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G dd deZG dd deZG dd deZee	 ed< ee
 ed< eed  ed< 	 eed< 	 ee ed< 	 eed< 	 ee ed< 	 ed ed< 	 ee ed< ee ed< ee ed< ee ed < ee ed!< ee ed"< ed#ed$ d%d fd&d'Zed#ed$ d%d fd(d)Zed*ed#ed+ d%d fd,d-Zeed*ed#ed+ d%d fd.d/Zed#ed+ d%d fd0d/Zed1d#ed+ d%d fd2d/Zed*ed#ed+ d%d fd3d4Zeed*ed#ed+ d%d fd5d6Zed#ed+ d%d fd7d6Zed8d#ed+ d%d fd9d6Z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@dAZ"eded#ed? d%d fdBdCZ#eded#edD d%d fdEdFZ$eded#edD d%d fdGdHZ%e	e
eeeeeedIZ&dJS )KConfigurationz
    A Configurations object represents how features should be configured for terminal readers.
    For information about how to use it, see the [Terminal configurations documentation](https://docs.stripe.com/terminal/fleet/configurations-overview).
    zterminal.configurationOBJECT_NAMEc                   @      e Zd ZU eed  ed< dS )zConfiguration.BbposWisepad3r   splashscreenN__name__
__module____qualname__r   r   __annotations__ r"   r"   ~/var/www/snowflake_co_dev_github/snow_flake_back_end_deploy/env/lib/python3.10/site-packages/stripe/terminal/_configuration.pyBbposWisepad30      
 r$   c                   @   r   )zConfiguration.BbposWiseposEr   r   Nr   r"   r"   r"   r#   BbposWiseposE6   r%   r&   c                   @   s   e Zd ZU ee ed< dS )zConfiguration.OfflineenabledN)r   r   r    r   boolr!   r"   r"   r"   r#   Offline<   s   
 r)   c                   @       e Zd ZU eed< 	 eed< dS )zConfiguration.RebootWindowend_hour
start_hourN)r   r   r    intr!   r"   r"   r"   r#   RebootWindowB   
   
 r.   c                   @   r   )zConfiguration.StripeS700r   r   Nr   r"   r"   r"   r#   
StripeS700L   r%   r0   c                   @   s  e Zd ZU 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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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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G d)d* d*eZG d+d, d,eZee ed-< ee ed.< ee ed/< ee ed0< ee ed1< ee	 ed2< ee
 ed3< ee ed4< ee ed5< ee ed6< ee ed7< ee ed8< ee ed9< ee ed:< ee ed;< ee ed<< ee ed=< ee ed>< ee ed?< ee ed@< ee edA< ee edB< i d-ed.ed/ed0ed1ed2e	d3e
d4ed5ed6ed7ed8ed9ed:ed;ed<ed=eeeeeedCZdDS )EzConfiguration.Tippingc                   @   >   e Zd ZU eee  ed< 	 eee  ed< 	 ee ed< dS )zConfiguration.Tipping.Aedfixed_amountspercentagessmart_tip_thresholdNr   r   r    r   r   r-   r!   r"   r"   r"   r#   AedS      
 r6   c                   @   r1   )zConfiguration.Tipping.Audr2   r3   r4   Nr5   r"   r"   r"   r#   Auda   r7   r8   c                   @   r1   )zConfiguration.Tipping.Bgnr2   r3   r4   Nr5   r"   r"   r"   r#   Bgno   r7   r9   c                   @   r1   )zConfiguration.Tipping.Cadr2   r3   r4   Nr5   r"   r"   r"   r#   Cad}   r7   r:   c                   @   r1   )zConfiguration.Tipping.Chfr2   r3   r4   Nr5   r"   r"   r"   r#   Chf   r7   r;   c                   @   r1   )zConfiguration.Tipping.Czkr2   r3   r4   Nr5   r"   r"   r"   r#   Czk   r7   r<   c                   @   r1   )zConfiguration.Tipping.Dkkr2   r3   r4   Nr5   r"   r"   r"   r#   Dkk   r7   r=   c                   @   r1   )zConfiguration.Tipping.Eurr2   r3   r4   Nr5   r"   r"   r"   r#   Eur   r7   r>   c                   @   r1   )zConfiguration.Tipping.Gbpr2   r3   r4   Nr5   r"   r"   r"   r#   Gbp   r7   r?   c                   @   r1   )zConfiguration.Tipping.Gipr2   r3   r4   Nr5   r"   r"   r"   r#   Gip   r7   r@   c                   @   r1   )zConfiguration.Tipping.Hkdr2   r3   r4   Nr5   r"   r"   r"   r#   Hkd   r7   rA   c                   @   r1   )zConfiguration.Tipping.Hufr2   r3   r4   Nr5   r"   r"   r"   r#   Huf   r7   rB   c                   @   r1   )zConfiguration.Tipping.Jpyr2   r3   r4   Nr5   r"   r"   r"   r#   Jpy   r7   rC   c                   @   r1   )zConfiguration.Tipping.Mxnr2   r3   r4   Nr5   r"   r"   r"   r#   Mxn	  r7   rD   c                   @   r1   )zConfiguration.Tipping.Myrr2   r3   r4   Nr5   r"   r"   r"   r#   Myr  r7   rE   c                   @   r1   )zConfiguration.Tipping.Nokr2   r3   r4   Nr5   r"   r"   r"   r#   Nok%  r7   rF   c                   @   r1   )zConfiguration.Tipping.Nzdr2   r3   r4   Nr5   r"   r"   r"   r#   Nzd3  r7   rG   c                   @   r1   )zConfiguration.Tipping.Plnr2   r3   r4   Nr5   r"   r"   r"   r#   PlnA  r7   rH   c                   @   r1   )zConfiguration.Tipping.Ronr2   r3   r4   Nr5   r"   r"   r"   r#   RonO  r7   rI   c                   @   r1   )zConfiguration.Tipping.Sekr2   r3   r4   Nr5   r"   r"   r"   r#   Sek]  r7   rJ   c                   @   r1   )zConfiguration.Tipping.Sgdr2   r3   r4   Nr5   r"   r"   r"   r#   Sgdk  r7   rK   c                   @   r1   )zConfiguration.Tipping.Usdr2   r3   r4   Nr5   r"   r"   r"   r#   Usdy  r7   rL   aedaudbgncadchfczkdkkeurgbpgiphkdhufjpymxnmyrnoknzdplnronseksgdusd)r^   r_   r`   ra   rb   N)r   r   r    r   r6   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   rK   rL   r   r!   _inner_class_typesr"   r"   r"   r#   TippingR   s   
 	
rd   c                   @   r   )zConfiguration.VerifoneP400r   r   Nr   r"   r"   r"   r#   VerifoneP400  r%   re   c                   @   s|   e Zd ZU G dd deZG dd deZG dd deZee ed< ee ed< ee ed	< e	d
 ed< 	 eeed
Z
dS )zConfiguration.Wific                   @   s8   e Zd ZU ee ed< 	 eed< 	 eed< 	 eed< dS )z$Configuration.Wifi.EnterpriseEapPeapca_certificate_filepasswordssidusernameNr   r   r    r   strr!   r"   r"   r"   r#   EnterpriseEapPeap  s   
 rl   c                   @   sF   e Zd ZU ee ed< 	 eed< 	 eed< 	 ee ed< 	 eed< dS )z#Configuration.Wifi.EnterpriseEapTlsrf   client_certificate_fileprivate_key_fileprivate_key_file_passwordrh   Nrj   r"   r"   r"   r#   EnterpriseEapTls  s   
 rp   c                   @   r*   )zConfiguration.Wifi.PersonalPskrg   rh   N)r   r   r    rk   r!   r"   r"   r"   r#   PersonalPsk  r/   rq   enterprise_eap_peapenterprise_eap_tlspersonal_psk)rr   rs   rt   typeN)r   r   r    r   rl   rp   rq   r   r!   r   rc   r"   r"   r"   r#   Wifi  s   
 

rv   bbpos_wisepad3bbpos_wisepos_eTdeletedidis_account_defaultlivemodenameobjectofflinereboot_windowstripe_s700tippingverifone_p400wifiparamsr   returnc                 K   s   t d| jd|  |dS )5
        Creates a new Configuration object.
        r   postr   )r   _static_request	class_urlclsr   r"   r"   r#   create  s   zConfiguration.createc                    s"   t d| jd|  |dI dH S )r   r   r   r   N)r   _static_request_asyncr   r   r"   r"   r#   create_async/  s   
zConfiguration.create_asyncsidr   c                 K   *   d|   t|f }td| jd||dS )1
        Deletes a Configuration object.
        %s/%sr   deleter   r   r
   r   r   r   r   r   urlr"   r"   r#   _cls_delete?     zConfiguration._cls_deletec                 K      dS r   Nr"   r   r   r"   r"   r#   r   P  s   zConfiguration.deletec                 K   r   r   r"   selfr   r"   r"   r#   r   Z  s   r   c                 K   s   | j d|  |dS )r   r   r   )_request_and_refreshinstance_urlr   r"   r"   r#   r   c  s
   c                    2   d|   t|f }td| jd||dI dH S )r   r   r   r   r   Nr   r
   r   r   r   r"   r"   r#   _cls_delete_asyncp     
zConfiguration._cls_delete_asyncc                       dS r   r"   r   r"   r"   r#   delete_async  s   zConfiguration.delete_asyncc                    r   r   r"   r   r"   r"   r#   r     s   r   c                    s   | j d|  |dI dH S )r   r   r   N)_request_and_refresh_asyncr   r   r"   r"   r#   r     s   r   c                 K   s4   | j d|  |d}t|tstdt|j |S ):
        Returns a list of Configuration objects.
        getr   %Expected list object from API, got %s)r   r   
isinstancer   	TypeErrorru   r   r   r   resultr"   r"   r#   list  s   
zConfiguration.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )r   r   r   Nr   )r   r   r   r   r   ru   r   r   r"   r"   r#   
list_async  s   
zConfiguration.list_asyncr   c                 K   r   )5
        Updates a new Configuration object.
        r   r   r   r   r   r   rz   r   r   r"   r"   r#   modify  r   zConfiguration.modifyc                    r   )r   r   r   r   r   Nr   r   r"   r"   r#   modify_async  r   zConfiguration.modify_asyncr   c                 K   s   | |fi |}|   |S )3
        Retrieves a Configuration object.
        )refreshr   rz   r   instancer"   r"   r#   retrieve  s   zConfiguration.retrievec                    s$   | |fi |}|  I dH  |S )r   N)refresh_asyncr   r"   r"   r#   retrieve_async  s   zConfiguration.retrieve_async)rw   rx   r   r   r   r   r   r   N)'r   r   r    __doc__r   r   r   r!   r   r$   r&   r)   r.   r0   rd   re   rv   r   rk   r(   classmethodr   r   r   r   r   staticmethodr   r	   r   r   r   r   r   r   r   r   r   rc   r"   r"   r"   r#   r   !   s:  
 
  fB

r   N)(stripe._createable_api_resourcer   stripe._deletable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   stripe._updateable_api_resourcer   stripe._utilr	   r
   typingr   r   r   r   r   typing_extensionsr   r   r   stripe._filer   3stripe.params.terminal._configuration_create_paramsr   3stripe.params.terminal._configuration_delete_paramsr   1stripe.params.terminal._configuration_list_paramsr   3stripe.params.terminal._configuration_modify_paramsr   5stripe.params.terminal._configuration_retrieve_paramsr   r   r"   r"   r"   r#   <module>   s.   
