
    Ai\0             	          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 d d	lmZmZ d d
lmZmZmZmZmZmZ d dlmZmZmZmZ erd 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. d dl/m0Z0 d dl1m2Z2 d dl3m4Z4 d dl5m6Z6 d dl7m8Z8 d dl9m:Z: d dl;m<Z< d dl=m>Z> d dl?m@Z@ d dlAmBZB d dlCmDZD d dlEmFZF d d lGmHZH d d!lImJZJ  G d" d#ed#   ed#   e	d#   ed#         ZKeKeKj                  _M        y$)%    )CreateableAPIResource)DeletableAPIResource)ExpandableField)
ListObject)ListableAPIResource)StripeObject)APIResourceTestHelpers)UpdateableAPIResource)class_method_variantsanitize_id)ClassVarDictListOptionalcastoverload)LiteralTypeUnpackTYPE_CHECKING)Charge)PaymentIntent)PaymentMethod)Refund)SetupIntent)ReaderCancelActionParams)ReaderCollectInputsParams) ReaderCollectPaymentMethodParams) ReaderConfirmPaymentIntentParams)ReaderCreateParams)ReaderDeleteParams)ReaderListParams)ReaderModifyParams) ReaderPresentPaymentMethodParams) ReaderProcessPaymentIntentParams)ReaderProcessSetupIntentParams)ReaderRefundPaymentParams)ReaderRetrieveParams)ReaderSetReaderDisplayParams)"ReaderSucceedInputCollectionParams)"ReaderTimeoutInputCollectionParams)Locationc                      e Zd ZU dZdZeed      ed<    G d de      Z	e
e	   ed<   	 e
ed      ed<   	 e
e   ed	<   	 ed
   ed<   	 eed<   	 e
e   ed<   	 eed<   	 e
e   ed<   	 eed<   	 e
ed      ed<   	 eeef   ed<   	 ed   ed<   	 eed<   	 e
ed      ed<   	 ededed   dd fd       Zeededed   dd fd              Zeded   dd fd       Z ed      ded   dd fd        Zededed   dd fd!       Zeededed   dd fd"              Zeded   dd fd#       Z ed$      ded   dd fd%       Zededed&   dd fd'       Zeededed&   dd fd(              Zeded&   dd fd)       Z ed*      ded&   dd fd+       Zededed&   dd fd,       Zeededed&   dd fd-              Zeded&   dd fd.       Z ed/      ded&   dd fd0       Zededed1   dd fd2       Zeededed1   dd fd3              Zeded1   dd fd4       Z ed5      ded1   dd fd6       Zededed1   dd fd7       Zeededed1   dd fd8              Z eded1   dd fd9       Z  ed:      ded1   dd fd;       Z ededed<   dd fd=       Z!eededed<   dd fd>              Z"eded<   dd fd?       Z" ed@      ded<   dd fdA       Z"ededed<   dd fdB       Z#eededed<   dd fdC              Z$eded<   dd fdD       Z$ edE      ded<   dd fdF       Z$ededG   dd fdH       Z%ededG   dd fdI       Z&edJededK   dd fdL       Z'eedJededK   dd fdM              Z(ededK   dd fdN       Z( edO      dedK   dd fdP       Z(edJededK   dd fdQ       Z)eedJededK   dd fdR              Z*ededK   dd fdS       Z* edT      dedK   dd fdU       Z*ededV   de+d    fdW       Z,ededV   de+d    fdX       Z-edededY   dd fdZ       Z.edededY   dd fd[       Z/ededed\   dd fd]       Z0eededed\   dd fd^              Z1eded\   dd fd_       Z1 ed`      ded\   dd fda       Z1ededed\   dd fdb       Z2eededed\   dd fdc              Z3eded\   dd fdd       Z3 ede      ded\   dd fdf       Z3edededg   dd fdh       Z4eedededg   dd fdi              Z5ededg   dd fdj       Z5 edk      dedg   dd fdl       Z5edededg   dd fdm       Z6eedededg   dd fdn              Z7ededg   dd fdo       Z7 edp      dedg   dd fdq       Z7edededr   dd fds       Z8eedededr   dd fdt              Z9ededr   dd fdu       Z9 edv      dedr   dd fdw       Z9edededr   dd fdx       Z:eedededr   dd fdy              Z;ededr   dd fdz       Z; ed{      dedr   dd fd|       Z;ededed}   dd fd~       Z<ededed}   dd fd       Z=ededed   dd fd       Z>eededed   dd fd              Z?eded   dd fd       Z? ed      ded   dd fd       Z?ededed   dd fd       Z@eededed   dd fd              ZAeded   dd fd       ZA ed      ded   dd fd       ZA G d deBd          ZCeDd        ZEde	iZFy)Readerz
    A Reader represents a physical device for accepting payment details.

    Related guide: [Connecting to a reader](https://stripe.com/docs/terminal/payments/connect-reader)
    zterminal.readerOBJECT_NAMEc                      e Zd ZU  G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      Z	 G d de      Z
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d<   	 ee
   ed<   	 ed   ed<   	 ed   ed<   	 eeeeee	e
dZy)Reader.Actionc                   Z    e Zd ZU  G d de      Zee   ed<   	 eee	e	f      ed<   	 deiZ
y)Reader.Action.CollectInputsc            	          e Zd ZU  G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      Z	 G d de      Z
 G d de      Z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d<   	 ee
   ed<   	 eee      ed<   	 ed   ed<   	 eeeeee	e
edZy)!Reader.Action.CollectInputs.Inputc                   T    e Zd ZU ee   ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   y),Reader.Action.CollectInputs.Input.CustomTextdescriptionskip_buttonsubmit_buttontitleN__name__
__module____qualname__r   str__annotations__     J/var/www/html/immo/lib/python3.12/site-packages/stripe/terminal/_reader.py
CustomTextr7   Q   sD    !)#. "*#. $,C=0 $C=(rC   rE   c                       e Zd ZU ee   ed<   y)'Reader.Action.CollectInputs.Input.EmailvalueNr<   rB   rC   rD   EmailrG   c       #C=(rC   rI   c                       e Zd ZU ee   ed<   y))Reader.Action.CollectInputs.Input.NumericrH   Nr<   rB   rC   rD   NumericrL   i   rJ   rC   rM   c                       e Zd ZU ee   ed<   y)'Reader.Action.CollectInputs.Input.PhonerH   Nr<   rB   rC   rD   PhonerO   o   rJ   rC   rP   c                   b    e Zd ZU  G d de      Zee   ed<   	 ee   ed<   	 ee   ed<   	 deiZ	y)+Reader.Action.CollectInputs.Input.Selectionc                   B    e Zd ZU ee   ed<   	 eed      ed<   	 eed<   y)2Reader.Action.CollectInputs.Input.Selection.Choiceid)primary	secondarystyletextN)r=   r>   r?   r   r@   rA   r   rB   rC   rD   ChoicerT   v   s5    $SM)  (0F(GHH "	rC   rZ   choicesrU   rY   N)
r=   r>   r?   r   rZ   r   rA   r   r@   _inner_class_typesrB   rC   rD   	SelectionrR   u   sN      "&\) !% #3-' +4V)<&rC   r]   c                       e Zd ZU ee   ed<   y)+Reader.Action.CollectInputs.Input.SignaturerH   Nr<   rB   rC   rD   	Signaturer_      rJ   rC   r`   c                       e Zd ZU ee   ed<   y)&Reader.Action.CollectInputs.Input.TextrH   Nr<   rB   rC   rD   Textrb      rJ   rC   rc   c                   `    e Zd ZU eed      ed<   	 ee   ed<   	 ee   ed<   	 eed      ed<   y)(Reader.Action.CollectInputs.Input.Toggle)disabledenableddefault_valuer8   r;   rH   N)r=   r>   r?   r   r   rA   r@   rB   rC   rD   Togglere      sR    #+G4I,J#KK "*#. $C=( $G,A$BCCrC   ri   custom_textemailnumericphonerequired	selection	signatureskippedrY   toggles)rk   rl   rm   ro   rp   rY   type)rj   rk   rl   rm   ro   rp   rY   rr   N)r=   r>   r?   r   rE   rI   rM   rP   r]   r`   rc   ri   r   rA   boolr   r   r\   rB   rC   rD   Inputr5   P   sP    $L l L = =: < \ $ &j11  & "'**  & #4.( $I.. $I.. "$' tn$ "$v,//   $."&"!*!* %	&"rC   ru   inputsmetadataN)r=   r>   r?   r   ru   r   rA   r   r   r@   r\   rB   rC   rD   CollectInputsr3   O   sI    \ \| K tCH~.. #+E!2rC   rx   c                   b    e Zd ZU  G d de      Zee   ed<   	 ed   ed<   	 ed   ed<   	 deiZy)	"Reader.Action.CollectPaymentMethodc                   b    e Zd ZU  G d de      Zee   ed<   	 ee   ed<   	 ee   ed<   	 deiZy)0Reader.Action.CollectPaymentMethod.CollectConfigc                       e Zd ZU ee   ed<   y)8Reader.Action.CollectPaymentMethod.CollectConfig.Tippingamount_eligibleNr=   r>   r?   r   intrA   rB   rC   rD   Tippingr~          %-c]2rC   r   enable_customer_cancellationskip_tippingtippingN)	r=   r>   r?   r   r   r   rt   rA   r\   rB   rC   rD   CollectConfigr|      sO    l  /7tn< 'tn, "'** '0%9"rC   r   collect_configr   payment_intentr   payment_methodN)	r=   r>   r?   r   r   r   rA   r   r\   rB   rC   rD   CollectPaymentMethodrz      sQ    : :* %]33 ,O<< %_55 #3M!BrC   r   c                   P    e Zd ZU  G d de      Zee   ed<   	 ed   ed<   	 deiZy)"Reader.Action.ConfirmPaymentIntentc                       e Zd ZU ee   ed<   y)0Reader.Action.ConfirmPaymentIntent.ConfirmConfig
return_urlNr<   rB   rC   rD   ConfirmConfigr   !  s    $SM)rC   r   confirm_configr   r   N)	r=   r>   r?   r   r   r   rA   r   r\   rB   rC   rD   ConfirmPaymentIntentr      s?      %]33 ,O<< #3M!BrC   r   c                   P    e Zd ZU  G d de      Zed   ed<   	 ee   ed<   	 deiZy)"Reader.Action.ProcessPaymentIntentc                   t    e Zd ZU  G d de      Zee   ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   	 deiZ	y)0Reader.Action.ProcessPaymentIntent.ProcessConfigc                       e Zd ZU ee   ed<   y)8Reader.Action.ProcessPaymentIntent.ProcessConfig.Tippingr   Nr   rB   rC   rD   r   r   3  r   rC   r   r   r   r   r   N)
r=   r>   r?   r   r   r   rt   rA   r@   r\   rB   rC   rD   ProcessConfigr   2  s`    l  /7tn< %SM) 'tn, "'** '0%9"rC   r   r   r   process_configN)	r=   r>   r?   r   r   r   rA   r   r\   rB   rC   rD   ProcessPaymentIntentr   1  s?    : :2 ,O<< %]33 #3M!BrC   r   c                   b    e Zd ZU  G d de      Zee   ed<   	 ee   ed<   	 ed   ed<   	 deiZ	y) Reader.Action.ProcessSetupIntentc                       e Zd ZU ee   ed<   y).Reader.Action.ProcessSetupIntent.ProcessConfigr   Nr=   r>   r?   r   rt   rA   rB   rC   rD   r   r   V      .6tn<rC   r   generated_cardr   r   setup_intentN)
r=   r>   r?   r   r   r   r@   rA   r   r\   rB   rC   rD   ProcessSetupIntentr   U  sP      %SM) %]33 *-88 #3M!BrC   r   c                       e Zd ZU  G d de      Zee   ed<   	 eed      ed<   	 ee	e
e
f      ed<   	 eed      ed<   	 eed	      ed
<   	 eed      ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   	 deiZy)Reader.Action.RefundPaymentc                       e Zd ZU ee   ed<   y)/Reader.Action.RefundPayment.RefundPaymentConfigr   Nr   rB   rC   rD   RefundPaymentConfigr   k  r   rC   r   amountr   chargerw   r   r   )	duplicate
fraudulentrequested_by_customerreasonr   refundrefund_application_feerefund_payment_configreverse_transferN)r=   r>   r?   r   r   r   r   rA   r   r   r@   r   rt   r\   rB   rC   rD   RefundPaymentr   j  s    l  SM! _X677 tCH~.. %__%EFF JK  _X677 %-TN2 $,,?#@@ 'tn, #:;N!OrC   r   c                   P    e Zd ZU  G d de      Zee   ed<   	 ed   ed<   	 deiZy)Reader.Action.SetReaderDisplayc                   h    e Zd ZU  G d de      Zeed<   	 ee   ed<   	 ee	   ed<   	 e	ed<   	 deiZ
y)#Reader.Action.SetReaderDisplay.Cartc                   0    e Zd ZU eed<   	 eed<   	 eed<   y),Reader.Action.SetReaderDisplay.Cart.LineItemr   r8   quantityN)r=   r>   r?   r   rA   r@   rB   rC   rD   LineItemr     s%    K "%$ "MrC   r   currency
line_itemstaxtotalN)r=   r>   r?   r   r   r@   rA   r   r   r   r\   rB   rC   rD   Cartr     sU    |   !N* c]" 
 '3H%="rC   r   cartrs   N)	r=   r>   r?   r   r   r   rA   r   r\   rB   rC   rD   SetReaderDisplayr     s=    >| >B 4.  &/! #)$rC   r   collect_inputscollect_payment_methodconfirm_payment_intentfailure_codefailure_messageprocess_payment_intentprocess_setup_intentrefund_paymentset_reader_display)failedin_progress	succeededstatus)r   r   r   r   r   r   r   rs   N)r=   r>   r?   r   rx   r   r   r   r   r   r   r   rA   r@   r   r\   rB   rC   rD   Actionr1   N   sW   g	3L g	3R&	C< &	CP	C< 	C""	C< "	CH	C 	C*-	PL -	P^*	0| *	0X !//	 !))= >>	 !))= >>	 sm#	 "#&	 !))= >>	 ''9::	 !//	 %%566	 <==	 "
 	
	 ,&:&:&:$6+"2
rC   r   actionTdeleteddevice_sw_version)	bbpos_chipper2xbbpos_wisepad3bbpos_wisepos_emobile_phone_readersimulated_stripe_s700simulated_wisepos_e	stripe_m2stripe_s700verifone_P400device_typerU   
ip_addresslabellast_seen_atlivemoder,   locationrw   objectserial_number)offlineonliner   readerparamsr   returnc                 p    t        d| j                  ddj                  t        |            |            S )
        Cancels the current reader action. See [Programmatic Cancellation](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven#programmatic-cancellation) for more details.
        r.   post+/v1/terminal/readers/{reader}/cancel_actionr   r   r   _static_requestformatr   clsr   r   s      rD   _cls_cancel_actionzReader._cls_cancel_actionF  sK     =DD&v. E     	
 		
rC   c                      yr   NrB   r   r   s     rD   cancel_actionzReader.cancel_actionX       	rC   c                      yr   rB   selfr   s     rD   r   zReader.cancel_actionb       	rC   r   c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r   r.   r   r   rU   r   r   r   _requestr   r   getr   s     rD   r   zReader.cancel_actionk  sQ     MM=DD&txx~6 E    	
 		
rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r   r.   r   r   r   r   Nr   _static_request_asyncr   r   r   s      rD   _cls_cancel_action_asynczReader._cls_cancel_action_async}  sY      ++=DD&v. E   ,  	
 		
   7AA
	Ac                    K   ywr   rB   r   s     rD   cancel_action_asynczReader.cancel_action_async        	   c                    K   ywr   rB   r   s     rD   r  zReader.cancel_action_async        	r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r   r.   r   r   rU   r   r   Nr   _request_asyncr   r   r  r   s     rD   r  zReader.cancel_action_async  sa      %%=DD&txx~6 E   &  	
 		
   AAA
		Ar   c                 p    t        d| j                  ddj                  t        |            |            S )
        Initiates an [input collection flow](https://docs.stripe.com/docs/terminal/features/collect-inputs) on a Reader to display input forms and collect information from your customers.
        r.   r   ,/v1/terminal/readers/{reader}/collect_inputsr   r   r   r   s      rD   _cls_collect_inputszReader._cls_collect_inputs  K     >EE&v. F     	
 		
rC   c                      yr  NrB   r   s     rD   r   zReader.collect_inputs  r   rC   c                      yr  rB   r   s     rD   r   zReader.collect_inputs  r   rC   r  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r   zReader.collect_inputs  Q     MM>EE&txx~6 F    	
 		
rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   _cls_collect_inputs_asyncz Reader._cls_collect_inputs_async  Y      ++>EE&v. F   ,  	
 		
r	  c                    K   ywr  rB   r   s     rD   collect_inputs_asynczReader.collect_inputs_async  r  r  c                    K   ywr  rB   r   s     rD   r"  zReader.collect_inputs_async  r  r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r"  zReader.collect_inputs_async  a      %%>EE&txx~6 F   &  	
 		
r  r   c                 p    t        d| j                  ddj                  t        |            |            S )G  
        Initiates a payment flow on a Reader and updates the PaymentIntent with card details before manual confirmation. See [Collecting a Payment method](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=inspect#collect-a-paymentmethod) for more details.
        r.   r   4/v1/terminal/readers/{reader}/collect_payment_methodr   r   r   r   s      rD   _cls_collect_payment_methodz"Reader._cls_collect_payment_method"  K     FMM&v. N     	
 		
rC   c                      yr'  NrB   r   s     rD   r   zReader.collect_payment_method4  r   rC   c                      yr,  rB   r   s     rD   r   zReader.collect_payment_method>  r   rC   r)  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r'  r.   r   r(  rU   r   r   r  r   s     rD   r   zReader.collect_payment_methodG  Q     MMFMM&txx~6 N    	
 		
rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r'  r.   r   r(  r   r   Nr  r   s      rD   !_cls_collect_payment_method_asyncz(Reader._cls_collect_payment_method_asyncY  Y      ++FMM&v. N   ,  	
 		
r	  c                    K   ywr,  rB   r   s     rD   collect_payment_method_asyncz#Reader.collect_payment_method_asynck  r  r  c                    K   ywr,  rB   r   s     rD   r4  z#Reader.collect_payment_method_asyncu  r  r  r1  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r'  r.   r   r(  rU   r   r   Nr  r   s     rD   r4  z#Reader.collect_payment_method_async~  a      %%FMM&txx~6 N   &  	
 		
r  r   c                 p    t        d| j                  ddj                  t        |            |            S )
        Finalizes a payment on a Reader. See [Confirming a Payment](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=inspect#confirm-the-paymentintent) for more details.
        r.   r   4/v1/terminal/readers/{reader}/confirm_payment_intentr   r   r   r   s      rD   _cls_confirm_payment_intentz"Reader._cls_confirm_payment_intent  r*  rC   c                      yr9  NrB   r   s     rD   r   zReader.confirm_payment_intent  r   rC   c                      yr=  rB   r   s     rD   r   zReader.confirm_payment_intent  r   rC   r;  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r9  r.   r   r:  rU   r   r   r  r   s     rD   r   zReader.confirm_payment_intent  r/  rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r9  r.   r   r:  r   r   Nr  r   s      rD   !_cls_confirm_payment_intent_asyncz(Reader._cls_confirm_payment_intent_async  r2  r	  c                    K   ywr=  rB   r   s     rD   confirm_payment_intent_asyncz#Reader.confirm_payment_intent_async  r  r  c                    K   ywr=  rB   r   s     rD   rC  z#Reader.confirm_payment_intent_async  r  r  rA  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r9  r.   r   r:  rU   r   r   Nr  r   s     rD   rC  z#Reader.confirm_payment_intent_async  r7  r  r    c                 Z    t        d| j                  d| j                         |            S ).
        Creates a new Reader object.
        r.   r   r   )r   r   	class_urlr   r   s     rD   createzReader.create  s6    
    
 	
rC   c                 v   K   t        d| j                  d| j                         |       d{         S 7 w)rG  r.   r   r   N)r   r  rH  rI  s     rD   create_asynczReader.create_async  sD      ++ ,  
 	
s   ,97
	9sidr!   c                 z    | j                         dt        |      }t        d| j                  d||            S )*
        Deletes a Reader object.
        /r.   deleter   rH  r   r   r   r   rM  r   urls       rD   _cls_deletezReader._cls_delete  sE     +c*:;   
 	
rC   c                      yrO  NrB   rM  r   s     rD   rQ  zReader.delete-  s     	rC   c                      yrW  rB   r   s     rD   rQ  zReader.delete5  s    
 	rC   rU  c                 F    | j                  d| j                         |      S )rO  rQ  r   )_request_and_refreshinstance_urlr   s     rD   rQ  zReader.delete<  s.     (( ) 
 	
rC   c                    K   | j                         dt        |      }t        d| j                  d||       d{         S 7 w)rO  rP  r.   rQ  r   NrH  r   r   r  rS  s       rD   _cls_delete_asynczReader._cls_delete_asyncI  sS      +c*:;++ ,  
 	
   <A	A
	A	c                    K   ywrW  rB   rX  s     rD   delete_asynczReader.delete_asyncZ  r  r  c                    K   ywrW  rB   r   s     rD   rb  zReader.delete_asyncd  r  r  r_  c                 b   K   | j                  d| j                         |       d{   S 7 w)rO  rQ  r   N)_request_and_refresh_asyncr\  r   s     rD   rb  zReader.delete_asyncm  s<      44 5 
 
 	
 
s   &/-/r"   c                     | j                  d| j                         |      }t        |t              s!t	        dt        |      j                  z        |S )3
        Returns a list of Reader objects.
        r  r   %Expected list object from API, got %s)r   rH  
isinstancer   	TypeErrorrs   r=   r   r   results      rD   listzReader.listz  s]     $$MMO % 

 &*-7<((* 
 rC   c                    K   | j                  d| j                         |       d{   }t        |t              s!t	        dt        |      j                  z        |S 7 7w)rg  r  r   Nrh  )r  rH  ri  r   rj  rs   r=   rk  s      rD   
list_asynczReader.list_async  sk      00MMO 1 
 

 &*-7<((* 
 
s   &A"A 8A"r#   c                 z    | j                         dt        |      }t        d| j                  d||            S )
        Updates a Reader object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
        rP  r.   r   r   rR  r   rU   r   rT  s       rD   modifyzReader.modify  sD     +b/:   
 	
rC   c                    K   | j                         dt        |      }t        d| j                  d||       d{         S 7 w)rq  rP  r.   r   r   Nr^  rr  s       rD   modify_asynczReader.modify_async  sR      +b/:++ ,  
 	
r`  r%   c                 p    t        d| j                  ddj                  t        |            |            S )
        Initiates a payment flow on a Reader. See [process the payment](https://docs.stripe.com/docs/terminal/payments/collect-card-payment?terminal-sdk-platform=server-driven&process=immediately#process-payment) for more details.
        r.   r   4/v1/terminal/readers/{reader}/process_payment_intentr   r   r   r   s      rD   _cls_process_payment_intentz"Reader._cls_process_payment_intent  r*  rC   c                      yrw  NrB   r   s     rD   r   zReader.process_payment_intent  r   rC   c                      yr{  rB   r   s     rD   r   zReader.process_payment_intent  r   rC   ry  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )rw  r.   r   rx  rU   r   r   r  r   s     rD   r   zReader.process_payment_intent  r/  rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)rw  r.   r   rx  r   r   Nr  r   s      rD   !_cls_process_payment_intent_asyncz(Reader._cls_process_payment_intent_async  r2  r	  c                    K   ywr{  rB   r   s     rD   process_payment_intent_asyncz#Reader.process_payment_intent_async  r  r  c                    K   ywr{  rB   r   s     rD   r  z#Reader.process_payment_intent_async  r  r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)rw  r.   r   rx  rU   r   r   Nr  r   s     rD   r  z#Reader.process_payment_intent_async   r7  r  r&   c                 p    t        d| j                  ddj                  t        |            |            S )
        Initiates a SetupIntent flow on a Reader. See [Save directly without charging](https://docs.stripe.com/docs/terminal/features/saving-payment-details/save-directly) for more details.
        r.   r   2/v1/terminal/readers/{reader}/process_setup_intentr   r   r   r   s      rD   _cls_process_setup_intentz Reader._cls_process_setup_intent2  sK     DKK&v. L     	
 		
rC   c                      yr  NrB   r   s     rD   r   zReader.process_setup_intentD  r   rC   c                      yr  rB   r   s     rD   r   zReader.process_setup_intentN  r   rC   r  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r   zReader.process_setup_intentW  sQ     MMDKK&txx~6 L    	
 		
rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   _cls_process_setup_intent_asyncz&Reader._cls_process_setup_intent_asynci  sY      ++DKK&v. L   ,  	
 		
r	  c                    K   ywr  rB   r   s     rD   process_setup_intent_asyncz!Reader.process_setup_intent_async{  r  r  c                    K   ywr  rB   r   s     rD   r  z!Reader.process_setup_intent_async  r  r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r  z!Reader.process_setup_intent_async  sa      %%DKK&txx~6 L   &  	
 		
r  r'   c                 p    t        d| j                  ddj                  t        |            |            S )
        Initiates an in-person refund on a Reader. See [Refund an Interac Payment](https://docs.stripe.com/docs/terminal/payments/regional?integration-country=CA#refund-an-interac-payment) for more details.
        r.   r   ,/v1/terminal/readers/{reader}/refund_paymentr   r   r   r   s      rD   _cls_refund_paymentzReader._cls_refund_payment  r  rC   c                      yr  NrB   r   s     rD   r   zReader.refund_payment  r   rC   c                      yr  rB   r   s     rD   r   zReader.refund_payment  r   rC   r  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r   zReader.refund_payment  r  rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   _cls_refund_payment_asyncz Reader._cls_refund_payment_async  r   r	  c                    K   ywr  rB   r   s     rD   refund_payment_asynczReader.refund_payment_async  r  r  c                    K   ywr  rB   r   s     rD   r  zReader.refund_payment_async  r  r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r  zReader.refund_payment_async  r%  r  r(   c                 8     | |fi |}|j                          |S ),
        Retrieves a Reader object.
        )refreshr   rU   r   instances       rD   retrievezReader.retrieve  s$     r$V$rC   c                 T   K    | |fi |}|j                          d{    |S 7 w)r  N)refresh_asyncr  s       rD   retrieve_asynczReader.retrieve_async  s3      r$V$$$&&& 	's   (&(r)   c                 p    t        d| j                  ddj                  t        |            |            S )y
        Sets the reader display to show [cart details](https://docs.stripe.com/docs/terminal/features/display).
        r.   r   0/v1/terminal/readers/{reader}/set_reader_displayr   r   r   r   s      rD   _cls_set_reader_displayzReader._cls_set_reader_display$  sK     BII&v. J     	
 		
rC   c                      yr  NrB   r   s     rD   r   zReader.set_reader_display6  r   rC   c                      yr  rB   r   s     rD   r   zReader.set_reader_display@  r   rC   r  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r   zReader.set_reader_displayI  sQ     MMBII&txx~6 J    	
 		
rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   _cls_set_reader_display_asyncz$Reader._cls_set_reader_display_async[  sY      ++BII&v. J   ,  	
 		
r	  c                    K   ywr  rB   r   s     rD   set_reader_display_asynczReader.set_reader_display_asyncm  r  r  c                    K   ywr  rB   r   s     rD   r  zReader.set_reader_display_asyncw  r  r  r  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r  zReader.set_reader_display_async  sa      %%BII&txx~6 J   &  	
 		
r  c                      e Zd ZU ed   ed<   ededed   ddfd       Ze	e
deded   ddfd              Ze	ded   ddfd	       Z ed
      ded   ddfd       Zededed   ddfd       Ze	e
deded   ddfd              Ze	ded   ddfd       Z ed      ded   ddfd       Zededed   ddfd       Ze	e
deded   ddfd              Ze	ded   ddfd       Z ed      ded   ddfd       Zededed   ddfd       Ze	e
deded   ddfd              Ze	ded   ddfd       Z ed      ded   ddfd       Zededed   ddfd       Ze	e
deded   ddfd              Ze	ded   ddfd       Z ed       ded   ddfd!       Zededed   ddfd"       Ze	e
deded   ddfd#              Ze	ded   ddfd$       Z ed%      ded   ddfd&       Zy')(Reader.TestHelpersr.   _resource_clsr   r   r$   r   c                 p    t        d| j                  ddj                  t        |            |            S )
            Presents a payment method on a simulated reader. Can be used to simulate accepting a payment, saving a card or refunding a transaction.
            r.   r   A/v1/test_helpers/terminal/readers/{reader}/present_payment_methodr   r   r   r   s      rD   _cls_present_payment_methodz.Reader.TestHelpers._cls_present_payment_method  sK     ##W^^*62 _  " $ 	 	rC   c                      yr  NrB   r   s     rD   present_payment_methodz)Reader.TestHelpers.present_payment_method       rC   c                      yr  rB   r   s     rD   r  z)Reader.TestHelpers.present_payment_method       rC   r  c                     t        d| j                  j                  ddj                  t	        | j                  j                  d                  |            S )r  r.   r   r  rU   r   r   r   resourcer  r   r   r  r   s     rD   r  z)Reader.TestHelpers.present_payment_method  s^     &&W^^*4==+<+<T+BC _  " ' 	 	rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   !_cls_present_payment_method_asyncz4Reader.TestHelpers._cls_present_payment_method_async  sY      //W^^*62 _  " 0  	 	r	  c                    K   ywr  rB   r   s     rD   present_payment_method_asyncz/Reader.TestHelpers.present_payment_method_async        r  c                    K   ywr  rB   r   s     rD   r  z/Reader.TestHelpers.present_payment_method_async        r  r  c                    K   t        d| j                  j                  ddj                  t	        | j                  j                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr   r  r  r   r   r  r   s     rD   r  z/Reader.TestHelpers.present_payment_method_async  sl      mm22W^^*4==+<+<T+BC _  " 3  	 	   AA'A%
	A'r*   c                 p    t        d| j                  ddj                  t        |            |            S )k
            Use this endpoint to trigger a successful input collection on a simulated reader.
            r.   r   C/v1/test_helpers/terminal/readers/{reader}/succeed_input_collectionr   r   r   r   s      rD   _cls_succeed_input_collectionz0Reader.TestHelpers._cls_succeed_input_collection  K     ##Y``*62 a  " $ 	 	rC   c                      yr  NrB   r   s     rD   succeed_input_collectionz+Reader.TestHelpers.succeed_input_collection  r  rC   c                      yr  rB   r   s     rD   r  z+Reader.TestHelpers.succeed_input_collection%  r  rC   r  c                     t        d| j                  j                  ddj                  t	        | j                  j                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r  z+Reader.TestHelpers.succeed_input_collection.  ^     &&Y``*4==+<+<T+BC a  " ' 	 	rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   #_cls_succeed_input_collection_asyncz6Reader.TestHelpers._cls_succeed_input_collection_async@  Y      //Y``*62 a  " 0  	 	r	  c                    K   ywr  rB   r   s     rD   succeed_input_collection_asyncz1Reader.TestHelpers.succeed_input_collection_asyncT  r  r  c                    K   ywr  rB   r   s     rD   r  z1Reader.TestHelpers.succeed_input_collection_async^  r  r  r  c                    K   t        d| j                  j                  ddj                  t	        | j                  j                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r  z1Reader.TestHelpers.succeed_input_collection_asyncg  l      mm22Y``*4==+<+<T+BC a  " 3  	 	r  r+   c                 p    t        d| j                  ddj                  t        |            |            S )w
            Use this endpoint to complete an input collection with a timeout error on a simulated reader.
            r.   r   C/v1/test_helpers/terminal/readers/{reader}/timeout_input_collectionr   r   r   r   s      rD   _cls_timeout_input_collectionz0Reader.TestHelpers._cls_timeout_input_collectiony  r  rC   c                      yr  NrB   r   s     rD   timeout_input_collectionz+Reader.TestHelpers.timeout_input_collection  r  rC   c                      yr  rB   r   s     rD   r  z+Reader.TestHelpers.timeout_input_collection  r  rC   r  c                     t        d| j                  j                  ddj                  t	        | j                  j                  d                  |            S )r  r.   r   r  rU   r   r   r  r   s     rD   r  z+Reader.TestHelpers.timeout_input_collection  r  rC   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r  r.   r   r  r   r   Nr  r   s      rD   #_cls_timeout_input_collection_asyncz6Reader.TestHelpers._cls_timeout_input_collection_async  r  r	  c                    K   ywr  rB   r   s     rD   timeout_input_collection_asyncz1Reader.TestHelpers.timeout_input_collection_async  r  r  c                    K   ywr  rB   r   s     rD   r  z1Reader.TestHelpers.timeout_input_collection_async  r  r  r  c                    K   t        d| j                  j                  ddj                  t	        | j                  j                  d                  |       d{         S 7 w)r  r.   r   r  rU   r   r   Nr  r   s     rD   r  z1Reader.TestHelpers.timeout_input_collection_async  r  r  N)r=   r>   r?   r   rA   classmethodr@   r   r  r   staticmethodr  r   r  r  r  r  r  r  r  r  r  r  rB   rC   rD   TestHelpersr    s   H~%			 ?@	 		 
	& 
			#)*L#M		 
 
	 
	"#EF		 
	 
;	<	"#EF		 
=	" 
		 ?@	 		 
	& 
			#)*L#M		 
 
	 
	"#EF		 
	 
A	B	"#EF		 
C	" 
		 AB	 		 
	& 
			#)*N#O		 
 
	 
	"#GH		 
	 
=	>	"#GH		 
?	" 
		 AB	 		 
	& 
			#)*N#O		 
 
	 
	"#GH		 
	 
C	D	"#GH		 
E	" 
		 AB	 		 
	& 
			#)*N#O		 
 
	 
	"#GH		 
	 
=	>	"#GH		 
?	" 
		 AB	 		 
	& 
			#)*N#O		 
 
	 
	"#GH		 
	 
C	D	"#GH		 
E	rC   r  c                 $    | j                  |       S )N)r  )r   s    rD   test_helperszReader.test_helpers  s    %%rC   N)Gr=   r>   r?   __doc__r/   r   r   rA   r   r   r   r@   r   rt   r   r   r  r   r   r   r  r   r   r  r  r  r   r  r"  r)  r   r1  r4  r;  r   rA  rC  rJ  rL  rU  rQ  r_  rb  r   rm  ro  rs  ru  ry  r   r  r  r  r   r  r  r  r   r  r  r  r  r  r   r  r  r	   r  propertyr  r\   rB   rC   rD   r.   r.   @   s    9JK'"345Is
 s
j V gdm$$  }$ 	
 
 	G  J 3- N z233 38n %&&  W0122 

$*+E$F
	
 
" %&@A	   9:	  ./
9:
	
 0
" 

$*+E$F
	
 
" %&@A	   9:	  45
9:
	
 6
" 

$*+F$G
	
 
" %&AB	   :;	  /0
:;
	
 1
" 

$*+F$G
	
 
" %&AB	   :;	  56
:;
	
 7
" 

$*+M$N
	
 
" %&HI	   AB	  78
AB
	
 9
" 

$*+M$N
	
 
" %&HI	   AB	  =>
AB
	
 ?
" 

$*+M$N
	
 
" %&HI	   AB	  78
AB
	
 9
" 

$*+M$N
	
 
" %&HI	   AB	  =>
AB
	
 ?
" 
f%9: 
x 
 
 
23
	
 
 

!'(<!=
	
 
  C 6*>#? H    v&:;    -(

34

	

 )

 

!'(<!=
	
 
  "#78	   34	  -.

34

	

 /

 01	H	 & 01	H	 & 

 &'; <
	
 
  

 &'; <
	
 
  

$*+M$N
	
 
" %&HI	   AB	  78
AB
	
 9
" 

$*+M$N
	
 
" %&HI	   AB	  =>
AB
	
 ?
" 

$*+K$L
	
 
" %&FG	   ?@	  56
?@
	
 7
" 

$*+K$L
	
 
" %&FG	   ?@	  ;<
?@
	
 =
" 

$*+F$G
	
 
" %&AB	   :;	  /0
:;
	
 1
" 

$*+F$G
	
 
" %&AB	   :;	  56
:;
	
 7
"  &'= >	   &'= >	  

$*+I$J
	
 
" %&DE	   =>	  34
=>
	
 5
" 

$*+I$J
	
 
" %&DE	   =>	  9:
=>
	
 ;
"W,X6 Wr
 & & #F+rC   r.   N)Nstripe._createable_api_resourcer   stripe._deletable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   stripe._test_helpersr	   stripe._updateable_api_resourcer
   stripe._utilr   r   typingr   r   r   r   r   r   typing_extensionsr   r   r   r   stripe._charger   stripe._payment_intentr   stripe._payment_methodr   stripe._refundr   stripe._setup_intentr   3stripe.params.terminal._reader_cancel_action_paramsr   4stripe.params.terminal._reader_collect_inputs_paramsr   <stripe.params.terminal._reader_collect_payment_method_paramsr   <stripe.params.terminal._reader_confirm_payment_intent_paramsr   ,stripe.params.terminal._reader_create_paramsr    ,stripe.params.terminal._reader_delete_paramsr!   *stripe.params.terminal._reader_list_paramsr"   ,stripe.params.terminal._reader_modify_paramsr#   <stripe.params.terminal._reader_present_payment_method_paramsr$   <stripe.params.terminal._reader_process_payment_intent_paramsr%   :stripe.params.terminal._reader_process_setup_intent_paramsr&   4stripe.params.terminal._reader_refund_payment_paramsr'   .stripe.params.terminal._reader_retrieve_paramsr(   8stripe.params.terminal._reader_set_reader_display_paramsr)   >stripe.params.terminal._reader_succeed_input_collection_paramsr*   >stripe.params.terminal._reader_timeout_input_collection_paramsr+   stripe.terminal._locationr,   r.   r  r  rB   rC   rD   <module>r     s    B ? 4 * = . 7 A : A A B B%44%0 POKO 3o,(#"!(#	o,d= $*    rC   