o
    Bi
T                     @   sx   d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 d dl
mZmZmZ d dlmZmZmZ G dd	 d	eZd
S )    )
ListObject)RequestOptions)StripeService)sanitize_id)Reader)DictListcast)LiteralNotRequired	TypedDictc                	   @   st  e Zd ZG dd deZG dd deZG dd deZG dd deZ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i i fd!ed"d#d$ed%efd&d'Zi i fd!ed"d#d$ed%efd(d)Zi i fd!ed"d*d$ed%efd+d,Zi i fd!ed"d*d$ed%efd-d.Zi i fd!ed"d/d$ed%efd0d1Zi i fd!ed"d/d$ed%efd2d3Zi i fd"d4d$ed%ee fd5d6Zi i fd"d4d$ed%ee fd7d8Zi fd"d9d$ed%efd:d;Z i fd"d9d$ed%efd<d=Z!i i fd!ed"d>d$ed%efd?d@Z"i i fd!ed"d>d$ed%efdAdBZ#i fd!ed"dCd$ed%efdDdEZ$i fd!ed"dCd$ed%efdFdGZ%i fd!ed"dHd$ed%efdIdJZ&i fd!ed"dHd$ed%efdKdLZ'i i fd!ed"dMd$ed%efdNdOZ(i i fd!ed"dMd$ed%efdPdQZ)i fd!ed"dRd$ed%efdSdTZ*i fd!ed"dRd$ed%efdUdVZ+dWS )XReaderServicec                   @      e Zd ZU eee  ed< dS ) ReaderService.CancelActionParamsexpandN__name__
__module____qualname__r   r   str__annotations__ r   r   _/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/terminal/_reader_service.pyCancelActionParams      
 r   c                   @   sR   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< dS )ReaderService.CreateParamsr   labellocationLiteral['']|Dict[str, str]metadataregistration_codeNr   r   r   r   r   CreateParams   s   
 r!   c                   @   s   e Zd ZdS )ReaderService.DeleteParamsN)r   r   r   r   r   r   r   DeleteParams)   s    r#   c                   @   s   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
< dS )ReaderService.ListParams)bbpos_chipper2xbbpos_wisepad3bbpos_wisepos_emobile_phone_readersimulated_wisepos_e	stripe_m2stripe_s700verifone_P400device_typeending_beforer   limitr   serial_numberstarting_after)offlineonlinestatusN)	r   r   r   r   r
   r   r   r   intr   r   r   r   
ListParams,   s*   
 r6   c                   @   s6   e Zd ZU eee  ed< 	 eed< 	 ed ed< dS )(ReaderService.ProcessPaymentIntentParamsr   payment_intent5ReaderService.ProcessPaymentIntentParamsProcessConfigprocess_configNr   r   r   r   r   ProcessPaymentIntentParamsY   s   
 r;   c                   @   s6   e Zd ZU ee ed< 	 ee ed< 	 ed ed< dS )r9   enable_customer_cancellationskip_tipping<ReaderService.ProcessPaymentIntentParamsProcessConfigTippingtippingNr   r   r   r   boolr   r   r   r   r   'ProcessPaymentIntentParamsProcessConfigi   s   
 rB   c                   @      e Zd ZU ee ed< dS )r>   amount_eligibleN)r   r   r   r   r5   r   r   r   r   r   .ProcessPaymentIntentParamsProcessConfigTippingy      
 rE   c                   @   sD   e Zd ZU ee ed< 	 eee  ed< 	 ed ed< 	 eed< dS )&ReaderService.ProcessSetupIntentParamscustomer_consent_collectedr   3ReaderService.ProcessSetupIntentParamsProcessConfigr:   setup_intentN)r   r   r   r   rA   r   r   r   r   r   r   r   ProcessSetupIntentParams   s   
 rK   c                   @   rC   )rI   r<   Nr@   r   r   r   r   %ProcessSetupIntentParamsProcessConfig   rF   rL   c                   @   s   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	< d
S )!ReaderService.RefundPaymentParamsamountcharger   r   r8   refund_application_fee4ReaderService.RefundPaymentParamsRefundPaymentConfigrefund_payment_configreverse_transferN)
r   r   r   r   r5   r   r   r   r   rA   r   r   r   r   RefundPaymentParams   s&   
 rT   c                   @   rC   )rQ   r<   Nr@   r   r   r   r   &RefundPaymentParamsRefundPaymentConfig   rF   rU   c                   @   r   )ReaderService.RetrieveParamsr   Nr   r   r   r   r   RetrieveParams   r   rW   c                   @   s:   e Zd ZU ed ed< 	 eee  ed< 	 ed ed< dS )$ReaderService.SetReaderDisplayParams(ReaderService.SetReaderDisplayParamsCartcartr   typeN)r   r   r   r   r   r   r   r
   r   r   r   r   SetReaderDisplayParams   s   
 r\   c                   @   s<   e Zd ZU eed< 	 ed ed< 	 ee ed< 	 eed< dS )rY   currency0ReaderService.SetReaderDisplayParamsCartLineItem
line_itemstaxtotalN)r   r   r   r   r   r   r   r5   r   r   r   r   SetReaderDisplayParamsCart   s   
 rb   c                   @   s*   e Zd ZU eed< 	 eed< 	 eed< dS )r^   rN   descriptionquantityN)r   r   r   r5   r   r   r   r   r   r   "SetReaderDisplayParamsCartLineItem   s   
 re   c                   @   s:   e Zd ZU eee  ed< 	 ed ed< 	 ed ed< dS )ReaderService.UpdateParamsr   zLiteral['']|strr   r   r   Nr   r   r   r   r   UpdateParams   s   
 rg   readerparamsr"   optionsreturnc              	   C   &   t t| jddjt|dd||dS )*
        Deletes a Reader object.
        delete/v1/terminal/readers/{reader}rh   apibase_addressri   rj   r	   r   _requestformatr   selfrh   ri   rj   r   r   r   rn        	zReaderService.deletec              	      .   t t| jddjt|dd||dI dH S )rm   rn   ro   rp   rq   rr   Nr	   r   _request_asyncrv   r   rw   r   r   r   delete_async     	
zReaderService.delete_asyncrV   c              	   C   rl   ),
        Retrieves a Reader object.
        getro   rp   rq   rr   rt   rw   r   r   r   retrieve1  ry   zReaderService.retrievec              	      rz   )r   r   ro   rp   rq   rr   Nr{   rw   r   r   r   retrieve_asyncG  r~   zReaderService.retrieve_asyncrf   c              	   C   rl   )
        Updates a Reader object by setting the values of the parameters passed. Any parameters not provided will be left unchanged.
        postro   rp   rq   rr   rt   rw   r   r   r   update]  ry   zReaderService.updatec              	      rz   )r   r   ro   rp   rq   rr   Nr{   rw   r   r   r   update_asyncs  r~   zReaderService.update_asyncr$   c              	   C   s   t tt | jddd||dS )3
        Returns a list of Reader objects.
        r   /v1/terminal/readersrq   rr   )r	   r   r   ru   rx   ri   rj   r   r   r   list  s   zReaderService.listc              	      s&   t tt | jddd||dI dH S )r   r   r   rq   rr   N)r	   r   r   r|   r   r   r   r   
list_async  s   
zReaderService.list_asyncr   c              	   C   s   t t| jddd||dS ).
        Creates a new Reader object.
        r   r   rq   rr   )r	   r   ru   r   r   r   r   create  s   zReaderService.createc              	      s"   t t| jddd||dI dH S )r   r   r   rq   rr   N)r	   r   r|   r   r   r   r   create_async  s   
zReaderService.create_asyncr   c              	   C   rl   )4
        Cancels the current reader action.
        r   +/v1/terminal/readers/{reader}/cancel_actionrp   rq   rr   rt   rw   r   r   r   cancel_action  ry   zReaderService.cancel_actionc              	      rz   )r   r   r   rp   rq   rr   Nr{   rw   r   r   r   cancel_action_async  r~   z!ReaderService.cancel_action_asyncr7   c              	   C   rl   )7
        Initiates a payment flow on a Reader.
        r   4/v1/terminal/readers/{reader}/process_payment_intentrp   rq   rr   rt   rw   r   r   r   process_payment_intent  ry   z$ReaderService.process_payment_intentc              	      rz   )r   r   r   rp   rq   rr   Nr{   rw   r   r   r   process_payment_intent_async  r~   z*ReaderService.process_payment_intent_asyncrG   c              	   C   rl   )<
        Initiates a setup intent flow on a Reader.
        r   2/v1/terminal/readers/{reader}/process_setup_intentrp   rq   rr   rt   rw   r   r   r   process_setup_intent-  ry   z"ReaderService.process_setup_intentc              	      rz   )r   r   r   rp   rq   rr   Nr{   rw   r   r   r   process_setup_intent_asyncC  r~   z(ReaderService.process_setup_intent_asyncrM   c              	   C   rl   )0
        Initiates a refund on a Reader
        r   ,/v1/terminal/readers/{reader}/refund_paymentrp   rq   rr   rt   rw   r   r   r   refund_paymentY  ry   zReaderService.refund_paymentc              	      rz   )r   r   r   rp   rq   rr   Nr{   rw   r   r   r   refund_payment_asynco  r~   z"ReaderService.refund_payment_asyncrX   c              	   C   rl   );
        Sets reader display to show cart details.
        r   0/v1/terminal/readers/{reader}/set_reader_displayrp   rq   rr   rt   rw   r   r   r   set_reader_display  ry   z ReaderService.set_reader_displayc              	      rz   )r   r   r   rp   rq   rr   Nr{   rw   r   r   r   set_reader_display_async  r~   z&ReaderService.set_reader_display_asyncN),r   r   r   r   r   r!   r#   r6   r;   rB   rE   rK   rL   rT   rU   rW   r\   rb   re   rg   r   r   r   rn   r}   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r      s   -$


















r   N)stripe._list_objectr   stripe._request_optionsr   stripe._stripe_servicer   stripe._utilr   stripe.terminal._readerr   typingr   r   r	   typing_extensionsr
   r   r   r   r   r   r   r   <module>   s   