
    _j                         d dl mZ d dlmZ d dlmZ d dlmZmZm	Z	m
Z
 d dlmZmZmZ erd dlmZ d dlmZ d dlmZ  G d	 d
ed
                   ZdS )    )
ListObject)ListableAPIResource)StripeObject)ClassVarDictListOptional)LiteralUnpackTYPE_CHECKING)Supplier)ProductListParams)ProductRetrieveParamsc                      e Zd ZU dZdZeed                  ed<    G d de          Z	e
ed<   	 eee	f         ed<   	 ee
         ed<   	 eed	<   	 eed
<   	 eed<   	 eed<   	 ed         ed<   	 ed         ed<   	 eded         ded          fd            Zeded         de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de	iZdS )Productz
    A Climate product represents a type of carbon removal unit available for reservation.
    You can retrieve it to see the current price and availability.
    zclimate.productOBJECT_NAMEc                   2    e Zd ZU eed<   	 eed<   	 eed<   dS )!Product.CurrentPricesPerMetricTonamount_feesamount_subtotalamount_totalN)__name__
__module____qualname__int__annotations__     [/var/www/app.qaans.com/backend/venv/lib/python3.11/site-packages/stripe/climate/_product.pyCurrentPricesPerMetricTonr      sH         	 	 	 	r   r    createdcurrent_prices_per_metric_tondelivery_yearidlivemodemetric_tons_availablenameobjectr   	suppliersparamsr   returnc                     |                      d|                                 |          }t          |t                    s$t	          dt          |          j        z            |S )>
        Lists all available Climate product objects.
        getr*   %Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrortyper   clsr*   results      r   listzProduct.listN   sp     $$MMOO % 
 

 &*-- 	7<<(*  
 r   c                    K   |                      d|                                 |           d{V }t          |t                    s$t	          dt          |          j        z            |S )r-   r.   r/   Nr0   )_static_request_asyncr2   r3   r   r4   r5   r   r6   s      r   
list_asynczProduct.list_asyncb   s       00MMOO 1 
 
 
 
 
 
 
 

 &*-- 	7<<(*  
 r   r   c                 @     | |fi |}|                                  |S )O
        Retrieves the details of a Climate product with the given ID.
        )refreshr7   r$   r*   instances       r   retrievezProduct.retrievev   s2     3r$$V$$r   c                 P   K    | |fi |}|                                  d{V  |S )r>   N)refresh_asyncr@   s       r   retrieve_asynczProduct.retrieve_async   sH       3r$$V$$$$&&&&&&&&&r   N)r   r   r   __doc__r   r   r
   r   r   r    r   r   strr	   boolr   classmethodr   r   r9   r<   rB   rE   _inner_class_typesr   r   r   r   r      s         
 9JK'"345III    L    LLL $(-F(F#GGGG C=    	GGG
 NNN  III %&&&& J 12	I	   [& 12	I	   [&  &'> ?	   [  &'> ?	   [ 	()Br   r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._stripe_objectr   typingr   r   r   r	   typing_extensionsr
   r   r   stripe.climate._supplierr   *stripe.params.climate._product_list_paramsr   .stripe.params.climate._product_retrieve_paramsr   r   r   r   r   <module>rS      s   + * * * * * = = = = = = . . . . . . 1 1 1 1 1 1 1 1 1 1 1 1 < < < < < < < < < < 111111LLLLLL     
} } } } }!), } } } } }r   