o
    BiG                     @   sp   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 G dd	 d	eZd
S )    )
ListObject)RequestOptions)Review)StripeService)sanitize_id)Listcast)NotRequired	TypedDictc                	   @   s  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i i fd	d
dede	e
 fddZi i fd	d
dede	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ddZdS )ReviewServicec                   @      e Zd ZU eee  ed< dS )ReviewService.ApproveParamsexpandN__name__
__module____qualname__r	   r   str__annotations__ r   r   V/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/_review_service.pyApproveParams      
 r   c                   @   sV   e Zd ZU ed ed< 	 ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< dS )ReviewService.ListParamsz#ReviewService.ListParamsCreated|intcreatedending_beforer   limitstarting_afterN)r   r   r   r	   r   r   r   intr   r   r   r   
ListParams   s   
 r   c                   @   sD   e Zd ZU ee ed< 	 ee ed< 	 ee ed< 	 ee ed< dS )zReviewService.ListParamsCreatedgtgteltlteN)r   r   r   r	   r   r   r   r   r   r   ListParamsCreated)   s   
 r$   c                   @   r   )ReviewService.RetrieveParamsr   Nr   r   r   r   r   RetrieveParams;   r   r&   paramsr   optionsreturnc              	   C   s   t tt | jddd||dS )
        Returns a list of Review objects that have open set to true. The objects are sorted in descending order by creation date, with the most recently created object appearing first.
        get/v1/reviewsapibase_addressr'   r(   )r   r   r   _requestselfr'   r(   r   r   r   listA   s   zReviewService.listc              	      s&   t tt | jddd||dI dH S )r*   r+   r,   r-   r.   N)r   r   r   _request_asyncr1   r   r   r   
list_asyncT   s   
zReviewService.list_asyncreviewr%   c              	   C   &   t t| jddjt|dd||dS ),
        Retrieves a Review object.
        r+   /v1/reviews/{review}r6   r-   r.   r   r   r0   formatr   r2   r6   r'   r(   r   r   r   retrieveg   s   	zReviewService.retrievec              	      .   t t| jddjt|dd||dI dH S )r8   r+   r9   r:   r-   r.   Nr   r   r4   r<   r   r=   r   r   r   retrieve_async{   s   	
zReviewService.retrieve_asyncr   c              	   C   r7   )`
        Approves a Review object, closing it and removing it from the list of reviews.
        post/v1/reviews/{review}/approver:   r-   r.   r;   r=   r   r   r   approve   s   	zReviewService.approvec              	      r?   )rB   rC   rD   r:   r-   r.   Nr@   r=   r   r   r   approve_async   s   	
zReviewService.approve_asyncN)r   r   r   r
   r   r   r$   r&   r   r   r   r3   r5   r   r>   rA   rE   rF   r   r   r   r   r      s    




r   N)stripe._list_objectr   stripe._request_optionsr   stripe._reviewr   stripe._stripe_servicer   stripe._utilr   typingr   r   typing_extensionsr	   r
   r   r   r   r   r   <module>   s   