o
    Biv                     @   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	m
Z
mZ d dlmZmZmZ G dd ded Zd	S )
    )
ListObject)ListableAPIResource)RequestOptions)StripeObject)ClassVarListOptional)LiteralNotRequiredUnpackc                   @   s(  e Zd ZU dZdZeed  ed< G dd deZ	G dd de
ZG dd	 d	e
Zeed
< 	 eed< 	 eed< 	 ee	 ed< 	 eed< 	 ed ed< 	 ed ed< 	 eded ded  fddZeded ded  fddZed
eded dd fddZed
eded dd fddZde	iZdS )Supplierz'
    A supplier of carbon removal.
    zclimate.supplierOBJECT_NAMEc                   @   sN   e Zd ZU ee ed< 	 eed< 	 ee ed< 	 ee ed< 	 ee ed< dS )zSupplier.Locationcitycountrylatitude	longituderegionN)__name__
__module____qualname__r   str__annotations__float r   r   X/var/www/html/Trade-python/venv/lib/python3.10/site-packages/stripe/climate/_supplier.pyLocation   s   
 r   c                   @   sH   e Zd ZU ee ed< 	 eee  ed< 	 ee ed< 	 ee ed< dS )Supplier.ListParamsending_beforeexpandlimitstarting_afterN)r   r   r   r
   r   r   r   intr   r   r   r   
ListParams(   s   
 r"   c                   @   s   e Zd ZU eee  ed< dS )Supplier.RetrieveParamsr   N)r   r   r   r
   r   r   r   r   r   r   r   RetrieveParams:   s   
 r$   idinfo_urllivemode	locationsnameobject)"biomass_carbon_removal_and_storagedirect_air_captureenhanced_weatheringremoval_pathwayparamsr   returnc                 K   s4   | j d|  |d}t|tstdt|j |S )?
        Lists all available Climate supplier objects.
        getr/   %Expected list object from API, got %s)_static_request	class_url
isinstancer   	TypeErrortyper   clsr/   resultr   r   r   lista   s   
zSupplier.listc                    s<   | j d|  |dI dH }t|tstdt|j |S )r1   r2   r3   Nr4   )_static_request_asyncr6   r7   r   r8   r9   r   r:   r   r   r   
list_asyncu   s   
zSupplier.list_asyncr#   c                 K   s   | |fi |}|   |S )6
        Retrieves a Climate supplier object.
        )refreshr;   r%   r/   instancer   r   r   retrieve   s   zSupplier.retrievec                    s$   | |fi |}|  I dH  |S )r@   N)refresh_asyncrB   r   r   r   retrieve_async   s   zSupplier.retrieve_asyncN)r   r   r   __doc__r   r   r	   r   r   r   r   r"   r$   r   boolr   classmethodr   r   r=   r?   rD   rF   _inner_class_typesr   r   r   r   r      sf   
 

r   N)stripe._list_objectr   stripe._listable_api_resourcer   stripe._request_optionsr   stripe._stripe_objectr   typingr   r   r   typing_extensionsr	   r
   r   r   r   r   r   r   <module>   s   