
    h              	       V   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 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 m!Z!m"Z" e"r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ed   ed   e	d   ed         Z-e-e-j\                  _/        y)    )CreateableAPIResource)DeletableAPIResource)ExpandableField)
ListObject)ListableAPIResource)RequestOptions)StripeObject)APIResourceTestHelpers)UpdateableAPIResource)class_method_variantsanitize_id)ClassVarDictListOptionalcastoverload)LiteralNotRequiredType	TypedDictUnpackTYPE_CHECKING)Charge)PaymentIntent)Refund)SetupIntent)Locationc                      e Zd ZU dZdZeed      ed<    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 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 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d.   ed/<   	 e ed0<   	 ee    ed1<   	 e ed2<   	 e!ed3<   	 ee"d4      ed5<   	 e#e e f   ed6<   	 ed   ed7<   	 e ed8<   	 eed9      ed:<   	 eed;      ed<<   	 e$d=e d>e%d?   d@d fdA       Z&e'e(d=e d>e%d?   d@d fdB              Z)e'd>e%d?   d@d fdC       Z) e*dD      d>e%d?   d@d fdE       Z)e$d=e d>e%d?   d@d fdF       Z+e'e(d=e d>e%d?   d@d fdG              Z,e'd>e%d?   d@d fdH       Z, e*dI      d>e%d?   d@d fdJ       Z,e$d>e%dK   d@d fdL       Z-e$d>e%dK   d@d fdM       Z.e$dNe d>e%dO   d@d fdP       Z/e'e(dNe d>e%dO   d@d fdQ              Z0e'd>e%dO   d@d fdR       Z0 e*dS      d>e%dO   d@d fdT       Z0e$dNe d>e%dO   d@d fdU       Z1e'e(dNe d>e%dO   d@d fdV              Z2e'd>e%dO   d@d fdW       Z2 e*dX      d>e%dO   d@d fdY       Z2e$d>e%dZ   d@e3d    fd[       Z4e$d>e%dZ   d@e3d    fd\       Z5e$d0e d>e%d]   d@d fd^       Z6e$d0e d>e%d]   d@d fd_       Z7e$d=e d>e%d`   d@d fda       Z8e'e(d=e d>e%d`   d@d fdb              Z9e'd>e%d`   d@d fdc       Z9 e*dd      d>e%d`   d@d fde       Z9e$d=e d>e%d`   d@d fdf       Z:e'e(d=e d>e%d`   d@d fdg              Z;e'd>e%d`   d@d fdh       Z; e*di      d>e%d`   d@d fdj       Z;e$d=e d>e%dk   d@d fdl       Z<e'e(d=e 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$d=e d>e%dk   d@d fdq       Z>e'e(d=e 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 d>e%dv   d@d fdw       Z@e'e(d=e d>e%dv   d@d fdx              ZAe'd>e%dv   d@d fdy       ZA e*dz      d>e%dv   d@d fd{       ZAe$d=e d>e%dv   d@d fd|       ZBe'e(d=e d>e%dv   d@d fd}              ZCe'd>e%dv   d@d fd~       ZC e*d      d>e%dv   d@d fd       ZCe$d0e d>e%d   d@d fd       ZDe$d0e d>e%d   d@d fd       ZEe$d=e d>e%d   d@d fd       ZFe'e(d=e d>e%d   d@d fd              ZGe'd>e%d   d@d fd       ZG e*d      d>e%d   d@d fd       ZGe$d=e d>e%d   d@d fd       ZHe'e(d=e d>e%d   d@d fd              ZIe'd>e%d   d@d fd       ZI e*d      d>e%d   d@d fd       ZI G d deJd          ZKeLd        ZMd,e	iZNy)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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dZy)Reader.Actionc                   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                   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.ProcessPaymentIntent.ProcessConfigc                       e Zd ZU ee   ed<   y)8Reader.Action.ProcessPaymentIntent.ProcessConfig.Tippingamount_eligibleN)__name__
__module____qualname__r   int__annotations__     W/var/www/api/v1/venv_getwork_v1/lib/python3.12/site-packages/stripe/terminal/_reader.pyTippingr)   0   s    %-c]2r1   r3   enable_customer_cancellationskip_tippingtippingN)	r+   r,   r-   r	   r3   r   boolr/   _inner_class_typesr0   r1   r2   ProcessConfigr'   /   sO    l  /7tn< 'tn, "'** '0%9"r1   r9   r   payment_intentprocess_configN)	r+   r,   r-   r	   r9   r   r/   r   r8   r0   r1   r2   ProcessPaymentIntentr%   .   s?    : :* ,O<< %]33 #3M!Br1   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.ProcessConfigr4   Nr+   r,   r-   r   r7   r/   r0   r1   r2   r9   r@   O       .6tn<r1   r9   generated_cardr;   r   setup_intentN)
r+   r,   r-   r	   r9   r   strr/   r   r8   r0   r1   r2   ProcessSetupIntentr>   N   sP      %SM) %]33 *-88 #3M!Br1   rF   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.RefundPaymentConfigr4   NrA   r0   r1   r2   RefundPaymentConfigrJ   d   rB   r1   rK   amountr   chargemetadatar   r:   )	duplicate
fraudulentrequested_by_customerreasonr   refundrefund_application_feerefund_payment_configreverse_transferN)r+   r,   r-   r	   rK   r   r.   r/   r   r   rE   r   r7   r8   r0   r1   r2   RefundPaymentrH   c   s    l  SM! _X677 tCH~.. %__%EFF JK  _X677 %-TN2 $,,?#@@ 'tn, #:;N!Or1   rW   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.LineItemrL   descriptionquantityNr+   r,   r-   r.   r/   rE   r0   r1   r2   LineItemr]      s%    K "%$ "Mr1   ra   currency
line_itemstaxtotalN)r+   r,   r-   r	   ra   rE   r/   r   r   r.   r8   r0   r1   r2   Cartr[      sU    |   !N* c]" 
 '3H%="r1   rf   carttypeN)	r+   r,   r-   r	   rf   r   r/   r   r8   r0   r1   r2   SetReaderDisplayrY      s=    >| >B 4.  &/! #)$r1   ri   failure_codefailure_messageprocess_payment_intentprocess_setup_intentrefund_paymentset_reader_display)failedin_progress	succeededstatus)rl   rm   rn   ro   rh   N)r+   r,   r-   r	   r<   rF   rW   ri   r   rE   r/   r   r8   r0   r1   r2   Actionr#   -   s    	C< 	C@	C 	C*-	PL -	P^*	0| *	0X sm#	 "#&	 !))= >>	 ''9::	 !//	 %%566	 <==	 "
 	
	 ';$6+"2	
r1   rt   c                   $    e Zd ZU eee      ed<   y)Reader.CancelActionParamsexpandNr+   r,   r-   r   r   rE   r/   r0   r1   r2   CancelActionParamsrv          DI&&	r1   ry   c                   f    e Zd ZU eee      ed<   	 ee   ed<   	 ee   ed<   	 ed   ed<   	 eed<   y)Reader.CreateParamsrw   labellocationLiteral['']|Dict[str, str]rN   registration_codeNrx   r0   r1   r2   CreateParamsr|      sZ    DI&&	 3	 c""	 :;;	 	r1   r   c                       e Zd Zy)Reader.DeleteParamsN)r+   r,   r-   r0   r1   r2   DeleteParamsr     s    r1   r   c                       e Zd ZU eed      ed<   	 ee   ed<   	 eee      ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   	 ee   ed<   	 eed	      ed
<   y)Reader.ListParamsbbpos_chipper2xbbpos_wisepad3bbpos_wisepos_emobile_phone_readersimulated_wisepos_e	stripe_m2stripe_s700verifone_P400device_typeending_beforerw   limitr~   serial_numberstarting_afterofflineonliners   N)	r+   r,   r-   r   r   r/   rE   r   r.   r0   r1   r2   
ListParamsr   	  s     !	
 	
	 #3''	 DI&&	 3	 c""	 #3''	 $C((	 G$7899	r1   r   c                   H    e Zd ZU eee      ed<   	 ed   ed<   	 ed   ed<   y)Reader.ModifyParamsrw   zLiteral['']|strr}   r   rN   Nrx   r0   r1   r2   ModifyParamsr   6  s<    DI&&	 ,--	 :;;	r1   r   c                   r    e Zd ZU ee   ed<   	 ed   ed<   	 eee      ed<   	 ed   ed<   	 eed      ed<   y	)
!Reader.PresentPaymentMethodParams
amount_tip,Reader.PresentPaymentMethodParamsCardPresentcard_presentrw   /Reader.PresentPaymentMethodParamsInteracPresentinterac_present)r   r   rh   N)	r+   r,   r-   r   r.   r/   r   rE   r   r0   r1   r2   PresentPaymentMethodParamsr   D  sn    $$	 ":
 	
	 DI&&	 %=
 	
	 '"CDEE	r1   r   c                       e Zd ZU ee   ed<   y)r   numberNr+   r,   r-   r   rE   r/   r0   r1   r2   %PresentPaymentMethodParamsCardPresentz,Reader.PresentPaymentMethodParamsCardPresent^      C  	r1   r   c                       e Zd ZU ee   ed<   y)r   r   Nr   r0   r1   r2   (PresentPaymentMethodParamsInteracPresentz/Reader.PresentPaymentMethodParamsInteracPresentd  r   r1   r   c                   B    e Zd ZU eee      ed<   	 eed<   	 ed   ed<   y)!Reader.ProcessPaymentIntentParamsrw   r:   .Reader.ProcessPaymentIntentParamsProcessConfigr;   Nrx   r0   r1   r2   ProcessPaymentIntentParamsr   j  s:    DI&&	 	 $<
 	
	r1   r   c                   Z    e Zd ZU eed      ed<   	 ee   ed<   	 ee   ed<   	 ed   ed<   y)r   alwayslimitedunspecifiedallow_redisplayr4   r5   5Reader.ProcessPaymentIntentParamsProcessConfigTippingr6   N)r+   r,   r-   r   r   r/   r7   r0   r1   r2   'ProcessPaymentIntentParamsProcessConfigz.Reader.ProcessPaymentIntentParamsProcessConfigz  sX    $67
 	
	 '2$&77	 "$''	 C
 	
	r1   r   c                       e Zd ZU ee   ed<   y)r   r*   N)r+   r,   r-   r   r.   r/   r0   r1   r2   .ProcessPaymentIntentParamsProcessConfigTippingz5Reader.ProcessPaymentIntentParamsProcessConfigTipping  s    $S))	r1   r   c                   T    e Zd ZU ed   ed<   	 eee      ed<   	 ed   ed<   	 eed<   y)Reader.ProcessSetupIntentParamsr   r   rw   ,Reader.ProcessSetupIntentParamsProcessConfigr;   rD   N)r+   r,   r-   r   r/   r   r   rE   r0   r1   r2   ProcessSetupIntentParamsr     sM     !CDD	 DI&&	 $:
 	
	 	r1   r   c                       e Zd ZU ee   ed<   y)r   r4   Nr+   r,   r-   r   r7   r/   r0   r1   r2   %ProcessSetupIntentParamsProcessConfigz,Reader.ProcessSetupIntentParamsProcessConfig      &1$&77	r1   r   c                       e Zd ZU ee   ed<   	 ee   ed<   	 eee      ed<   	 eeeef      ed<   	 ee   ed<   	 ee	   ed<   	 ed   ed<   	 ee	   ed	<   y
)Reader.RefundPaymentParamsrL   rM   rw   rN   r:   rT   -Reader.RefundPaymentParamsRefundPaymentConfigrU   rV   N)
r+   r,   r-   r   r.   r/   rE   r   r   r7   r0   r1   r2   RefundPaymentParamsr     s    C  	 C  	 DI&&	 d38n--	 $C((	 !,D 11	  +; 
 	
	 &d++	r1   r   c                       e Zd ZU ee   ed<   y)r   r4   Nr   r0   r1   r2   &RefundPaymentParamsRefundPaymentConfigz-Reader.RefundPaymentParamsRefundPaymentConfig  r   r1   r   c                   $    e Zd ZU eee      ed<   y)Reader.RetrieveParamsrw   Nrx   r0   r1   r2   RetrieveParamsr     rz   r1   r   c                   H    e Zd ZU ed   ed<   	 eee      ed<   	 ed   ed<   y)Reader.SetReaderDisplayParams!Reader.SetReaderDisplayParamsCartrg   rw   rh   N)r+   r,   r-   r   r/   r   rE   r   r0   r1   r2   SetReaderDisplayParamsr     s:    =>>	 DI&&	 fo	r1   r   c                   H    e Zd ZU eed<   	 ed   ed<   	 ee   ed<   	 eed<   y)r   rb   )Reader.SetReaderDisplayParamsCartLineItemrc   rd   re   N)r+   r,   r-   rE   r/   r   r   r.   r0   r1   r2   SetReaderDisplayParamsCartz!Reader.SetReaderDisplayParamsCart  s=    	 DEE	 	 
	r1   r   c                   0    e Zd ZU eed<   	 eed<   	 eed<   y)r   rL   r^   r_   Nr`   r0   r1   r2   "SetReaderDisplayParamsCartLineItemz)Reader.SetReaderDisplayParamsCartLineItem   s%    	 	 	r1   r   actiondevice_sw_versionr   r   id
ip_addressr}   livemoder   r~   rN   objectr   r   rs   Tdeletedreaderparamsrv   returnc                 p    t        d| j                  ddj                  t        |            |            S )4
        Cancels the current reader action.
        r    post+/v1/terminal/readers/{reader}/cancel_actionr   r   r   _static_requestformatr   clsr   r   s      r2   _cls_cancel_actionzReader._cls_cancel_actionL  sK     =DD&v. E     	
 		
r1   c                      yr   Nr0   r   r   s     r2   cancel_actionzReader.cancel_action^       	r1   c                      yr   r0   selfr   s     r2   r   zReader.cancel_actionh       	r1   r   c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r   r    r   r   r   r   r   r   _requestr   r   getr   s     r2   r   zReader.cancel_actionq  sQ     MM=DD&txx~6 E    	
 		
r1   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      r2   _cls_cancel_action_asynczReader._cls_cancel_action_async  sY      ++=DD&v. E   ,  	
 		
   7AA
	Ac                    K   ywr   r0   r   s     r2   cancel_action_asynczReader.cancel_action_async        	   c                    K   ywr   r0   r   s     r2   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   r   r   r   Nr   _request_asyncr   r   r   r   s     r2   r   zReader.cancel_action_async  sa      %%=DD&txx~6 E   &  	
 		
   AAA
		Ar|   c                 Z    t        d| j                  d| j                         |            S ).
        Creates a new Reader object.
        r    r   r   )r   r   	class_urlr   r   s     r2   createzReader.create  s6    
    
 	
r1   c                 v   K   t        d| j                  d| j                         |       d{         S 7 w)r  r    r   r   N)r   r   r  r  s     r2   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   r  r   r   r   r   r  r   urls       r2   _cls_deletezReader._cls_delete  sE     +c*:;   
 	
r1   c                      yr  Nr0   r  r   s     r2   r  zReader.delete  s     	r1   c                      yr  r0   r   s     r2   r  zReader.delete  s    
 	r1   r  c                 F    | j                  d| j                         |      S )r  r  r   )_request_and_refreshinstance_urlr   s     r2   r  zReader.delete  s.     (( ) 
 	
r1   c                    K   | j                         dt        |      }t        d| j                  d||       d{         S 7 w)r  r  r    r  r   Nr  r   r   r   r  s       r2   _cls_delete_asynczReader._cls_delete_async  sS      +c*:;++ ,  
 	
   <A	A
	A	c                    K   ywr  r0   r  s     r2   delete_asynczReader.delete_async  r   r   c                    K   ywr  r0   r   s     r2   r!  zReader.delete_async   r   r   r  c                 b   K   | j                  d| j                         |       d{   S 7 w)r  r  r   N)_request_and_refresh_asyncr  r   s     r2   r!  zReader.delete_async)  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   r  
isinstancer   	TypeErrorrh   r+   r   r   results      r2   listzReader.list6  s]     $$MMO % 

 &*-7<((* 
 r1   c                    K   | j                  d| j                         |       d{   }t        |t              s!t	        dt        |      j                  z        |S 7 7w)r&  r   r   Nr'  )r   r  r(  r   r)  rh   r+   r*  s      r2   
list_asynczReader.list_asyncJ  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.
        r  r    r   r   r  r   r   r   r  s       r2   modifyzReader.modify^  sD     +b/:   
 	
r1   c                    K   | j                         dt        |      }t        d| j                  d||       d{         S 7 w)r0  r  r    r   r   Nr  r1  s       r2   modify_asynczReader.modify_asynco  sR      +b/:++ ,  
 	
r  r   c                 p    t        d| j                  ddj                  t        |            |            S )7
        Initiates a payment flow on a Reader.
        r    r   4/v1/terminal/readers/{reader}/process_payment_intentr   r   r   r   s      r2   _cls_process_payment_intentz"Reader._cls_process_payment_intent  sK     FMM&v. N     	
 		
r1   c                      yr6  Nr0   r   s     r2   rl   zReader.process_payment_intent  r   r1   c                      yr:  r0   r   s     r2   rl   zReader.process_payment_intent  r   r1   r8  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )r6  r    r   r7  r   r   r   r   r   s     r2   rl   zReader.process_payment_intent  sQ     MMFMM&txx~6 N    	
 		
r1   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)r6  r    r   r7  r   r   Nr   r   s      r2   !_cls_process_payment_intent_asyncz(Reader._cls_process_payment_intent_async  sY      ++FMM&v. N   ,  	
 		
r   c                    K   ywr:  r0   r   s     r2   process_payment_intent_asyncz#Reader.process_payment_intent_async  r   r   c                    K   ywr:  r0   r   s     r2   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)r6  r    r   r7  r   r   r   Nr  r   s     r2   r@  z#Reader.process_payment_intent_async  sa      %%FMM&txx~6 N   &  	
 		
r  r   c                 p    t        d| j                  ddj                  t        |            |            S )<
        Initiates a setup intent flow on a Reader.
        r    r   2/v1/terminal/readers/{reader}/process_setup_intentr   r   r   r   s      r2   _cls_process_setup_intentz Reader._cls_process_setup_intent  sK     DKK&v. L     	
 		
r1   c                      yrD  Nr0   r   s     r2   rm   zReader.process_setup_intent   r   r1   c                      yrH  r0   r   s     r2   rm   zReader.process_setup_intent
  r   r1   rF  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )rD  r    r   rE  r   r   r   r   r   s     r2   rm   zReader.process_setup_intent  sQ     MMDKK&txx~6 L    	
 		
r1   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)rD  r    r   rE  r   r   Nr   r   s      r2   _cls_process_setup_intent_asyncz&Reader._cls_process_setup_intent_async%  sY      ++DKK&v. L   ,  	
 		
r   c                    K   ywrH  r0   r   s     r2   process_setup_intent_asyncz!Reader.process_setup_intent_async7  r   r   c                    K   ywrH  r0   r   s     r2   rN  z!Reader.process_setup_intent_asyncA  r   r   rL  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)rD  r    r   rE  r   r   r   Nr  r   s     r2   rN  z!Reader.process_setup_intent_asyncJ  sa      %%DKK&txx~6 L   &  	
 		
r  r   c                 p    t        d| j                  ddj                  t        |            |            S )0
        Initiates a refund on a Reader
        r    r   ,/v1/terminal/readers/{reader}/refund_paymentr   r   r   r   s      r2   _cls_refund_paymentzReader._cls_refund_payment\  sK     >EE&v. F     	
 		
r1   c                      yrR  Nr0   r   s     r2   rn   zReader.refund_paymentn  r   r1   c                      yrV  r0   r   s     r2   rn   zReader.refund_paymentx  r   r1   rT  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )rR  r    r   rS  r   r   r   r   r   s     r2   rn   zReader.refund_payment  sQ     MM>EE&txx~6 F    	
 		
r1   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)rR  r    r   rS  r   r   Nr   r   s      r2   _cls_refund_payment_asyncz Reader._cls_refund_payment_async  sY      ++>EE&v. F   ,  	
 		
r   c                    K   ywrV  r0   r   s     r2   refund_payment_asynczReader.refund_payment_async  r   r   c                    K   ywrV  r0   r   s     r2   r\  zReader.refund_payment_async  r   r   rZ  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)rR  r    r   rS  r   r   r   Nr  r   s     r2   r\  zReader.refund_payment_async  sa      %%>EE&txx~6 F   &  	
 		
r  r   c                 8     | |fi |}|j                          |S ),
        Retrieves a Reader object.
        )refreshr   r   r   instances       r2   retrievezReader.retrieve  s$     r$V$r1   c                 T   K    | |fi |}|j                          d{    |S 7 w)r`  N)refresh_asyncrb  s       r2   retrieve_asynczReader.retrieve_async  s3      r$V$$$&&& 	's   (&(r   c                 p    t        d| j                  ddj                  t        |            |            S );
        Sets reader display to show cart details.
        r    r   0/v1/terminal/readers/{reader}/set_reader_displayr   r   r   r   s      r2   _cls_set_reader_displayzReader._cls_set_reader_display  sK     BII&v. J     	
 		
r1   c                      yri  Nr0   r   s     r2   ro   zReader.set_reader_display  r   r1   c                      yrm  r0   r   s     r2   ro   zReader.set_reader_display  r   r1   rk  c                     t        d| j                  ddj                  t        | j	                  d                  |            S )ri  r    r   rj  r   r   r   r   r   s     r2   ro   zReader.set_reader_display  sQ     MMBII&txx~6 J    	
 		
r1   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)ri  r    r   rj  r   r   Nr   r   s      r2   _cls_set_reader_display_asyncz$Reader._cls_set_reader_display_async  sY      ++BII&v. J   ,  	
 		
r   c                    K   ywrm  r0   r   s     r2   set_reader_display_asynczReader.set_reader_display_async)  r   r   c                    K   ywrm  r0   r   s     r2   rs  zReader.set_reader_display_async3  r   r   rq  c                    K   t        d| j                  ddj                  t        | j	                  d                  |       d{         S 7 w)ri  r    r   rj  r   r   r   Nr  r   s     r2   rs  zReader.set_reader_display_async<  sa      %%BII&txx~6 J   &  	
 		
r  c                   Z   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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      r2   _cls_present_payment_methodz.Reader.TestHelpers._cls_present_payment_methodQ  sK     ##W^^*62 _  " $ 	 	r1   c                      yrz  Nr0   r   s     r2   present_payment_methodz)Reader.TestHelpers.present_payment_methode  s     r1   c                      yr~  r0   r   s     r2   r  z)Reader.TestHelpers.present_payment_methodo  s     r1   r|  c                     t        d| j                  j                  ddj                  t	        | j                  j                  d                  |            S )rz  r    r   r{  r   r   r   )r   resourcer   r   r   r   r   s     r2   r  z)Reader.TestHelpers.present_payment_methodx  s^     &&W^^*4==+<+<T+BC _  " ' 	 	r1   c                    K   t        d| j                  ddj                  t        |            |       d{         S 7 w)rz  r    r   r{  r   r   Nr   r   s      r2   !_cls_present_payment_method_asyncz4Reader.TestHelpers._cls_present_payment_method_async  sY      //W^^*62 _  " 0  	 	r   c                    K   ywr~  r0   r   s     r2   present_payment_method_asyncz/Reader.TestHelpers.present_payment_method_async  s      r   c                    K   ywr~  r0   r   s     r2   r  z/Reader.TestHelpers.present_payment_method_async  s      r   r  c                    K   t        d| j                  j                  ddj                  t	        | j                  j                  d                  |       d{         S 7 w)rz  r    r   r{  r   r   r   N)r   r  r  r   r   r   r   s     r2   r  z/Reader.TestHelpers.present_payment_method_async  sl      mm22W^^*4==+<+<T+BC _  " 3  	 	s   AA'A%
	A'N)r+   r,   r-   r   r/   classmethodrE   r   r|  r   staticmethodr  r   r  r  r0   r1   r2   TestHelpersrw  N  s   H~%			 @A	 		 
	& 
			#)*M#N		 
 
	 
	"#FG		 
	 
;	<	"#FG		 
=	" 
		 @A	 		 
	& 
			#)*M#N		 
 
	 
	"#FG		 
	 
A	B	"#FG		 
C	r1   r  c                 $    | j                  |       S )N)r  )r   s    r2   test_helperszReader.test_helpers  s    %%r1   N)Or+   r,   r-   __doc__r!   r   r   r/   r	   rt   r   ry   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   rE   r7   r   r   r  r   r   r   r  r   r   r   r   r	  r  r  r  r  r!  r   r,  r.  r2  r4  r8  rl   r>  r@  rF  rm   rL  rN  rT  rn   rZ  r\  rd  rg  rk  ro   rq  rs  r
   r  propertyr  r8   r0   r1   r2   r    r       s    9JK'"345I{
 {
z^ ~ ,~ +^ +Z~ ^ 4	 9 ^  ) , > (	 "n "H   Y $Y  V  }$ 		 	 	G  J N z233 38n %&&  W0122 gdm$$ 

$*+F$G
	
 
" %&AB	   :;	  ./
:;
	
 0
" 

$*+F$G
	
 
" %&AB	   :;	  45
:;
	
 6
" 
f%:; 
 
 
 
34
	
 
 

!'(=!>
	
 
  C 6*?#@ X    v&;<    -(

45

	

 )

 

!'(=!>
	
 
  "#89	   45	  -.

45

	

 /

 12	H	 & 12	H	 & 

 &'< =
	
 
  

 &'< =
	
 
  

$*+N$O
	
 
" %&IJ	   BC	  78
BC
	
 9
" 

$*+N$O
	
 
" %&IJ	   BC	  =>
BC
	
 ?
" 

$*+L$M
	
 
" %&GH	   @A	  56
@A
	
 7
" 

$*+L$M
	
 
" %&GH	   @A	  ;<
@A
	
 =
" 

$*+G$H
	
 
" %&BC	   ;<	  /0
;<
	
 1
" 

$*+G$H
	
 
" %&BC	   ;<	  56
;<
	
 7
"  &'> ?	   &'> ?	  

$*+J$K
	
 
" %&EF	   >?	  34
>?
	
 5
" 

$*+J$K
	
 
" %&EF	   >?	  9:
>?
	
 ;
"s,X6 sj & & #F+r1   r    N)0stripe._createable_api_resourcer   stripe._deletable_api_resourcer   stripe._expandable_fieldr   stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr	   stripe._test_helpersr
   stripe._updateable_api_resourcer   stripe._utilr   r   typingr   r   r   r   r   r   typing_extensionsr   r   r   r   r   r   stripe._charger   stripe._payment_intentr   stripe._refundr   stripe._setup_intentr   stripe.terminal._locationr   r    r  rx  r0   r1   r2   <module>r     s    B ? 4 * = 2 . 7 A : A A  %4%02h,(#"!(#	h,V- $*    r1   