
    Dh                         S SK Jr  S SKJr  S SKJr  S SKJr  S SKJ	r	J
r
JrJr  S SKJrJrJrJr  \(       a  S SKJr   " S S	\S	   5      rg
)    )
ListObject)ListableAPIResource)RequestOptions)StripeObject)ClassVarDictListOptional)LiteralNotRequiredUnpackTYPE_CHECKING)Supplierc                      \ rS rSr% SrSr\\S      \S'    " S S\	5      r
 " S S\5      r " S	 S
\5      r\\S'    \\\
4   \S'    \\   \S'    \\S'    \\S'    \\S'    \\S'    \S   \S'    \S   \S'    \S\S   S\S    4S j5       r\S\S   S\S    4S j5       r\S\S\S   SS 4S j5       r\S\S\S   SS 4S j5       rS\
0rSrg)Product   z
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                   8    \ rS rSr% \\S'    \\S'    \\S'   Srg)!Product.CurrentPricesPerMetricTon   amount_feesamount_subtotalamount_total N)__name__
__module____qualname____firstlineno__int__annotations____static_attributes__r       Z/home/kali/devsecops-assessor/venv/lib/python3.13/site-packages/stripe/climate/_product.pyCurrentPricesPerMetricTonr      s'    	 	 	r"   r$   c                   b    \ rS rSr% \\   \S'    \\\      \S'    \\   \S'    \\   \S'   Sr	g)Product.ListParams$   ending_beforeexpandlimitstarting_afterr   N)
r   r   r   r   r   strr    r	   r   r!   r   r"   r#   
ListParamsr&   $   sL    "3''	 DI&&	 3	 $C((	r"   r-   c                   ,    \ rS rSr% \\\      \S'   Srg)Product.RetrieveParams6   r)   r   N)	r   r   r   r   r   r	   r,   r    r!   r   r"   r#   RetrieveParamsr/   6   s    DI&&	r"   r1   createdcurrent_prices_per_metric_tondelivery_yearidlivemodemetric_tons_availablenameobjectr   	suppliersparamsr&   returnc                     U R                  SU R                  5       US9n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$ ).
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#   listProduct.listc   s`     $$MMO % 

 &*--7<((* 
 r"   c                    #    U R                  SU R                  5       US9I Sh  vN n[        U[        5      (       d!  [	        S[        U5      R                  -  5      eU$  N<7f)r>   r?   r@   NrA   )_static_request_asyncrC   rD   r   rE   rF   r   rG   s      r#   
list_asyncProduct.list_asyncw   sm      00MMO 1 
 

 &*--7<((* 
 
s   #A$A"=A$r/   c                 8    U " U40 UD6nUR                  5         U$ )?
Retrieves the details of a Climate product with the given ID.
)refreshrH   r5   r;   instances       r#   retrieveProduct.retrieve   s$     r$V$r"   c                 T   #    U " U40 UD6nUR                  5       I Sh  vN   U$  N7f)rQ   N)refresh_asyncrS   s       r#   retrieve_asyncProduct.retrieve_async   s2      r$V$$$&&& 	's   (&(r   N)r   r   r   r   __doc__r   r   r   r    r   r$   r   r-   r1   r   r   r,   r
   boolr	   classmethodr   r   rJ   rN   rU   rY   _inner_class_typesr!   r   r"   r#   r   r      s   
 9JK'"345IL ^ $  L $(-F(F#GG C=  	G
 N  I %&& J 23	I	 & 23	I	 &  &'? @	   &'? @	  	()Br"   r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr   typingr   r   r	   r
   typing_extensionsr   r   r   r   stripe.climate._supplierr   r   r   r"   r#   <module>rf      s9    + = 2 . 1 1 I I1U!), Ur"   