
    pi                         d Z ddlmZmZ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  G d d	e
      Z G d
 de      Z G d de      Zy)a  
    This code was generated by
   ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
    |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
    |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

    Twilio - Pricing
    This is the public Twilio REST API.

    NOTE: This class is auto generated by OpenAPI Generator.
    https://openapi-generator.tech
    Do not edit the class manually.
    )AnyDictOptional)values)InstanceContext)InstanceResource)ListResource)Versionc                   r     e Zd ZdZ	 ddedeeef   dee   f fdZ	e
dd       ZddZdd	Zdefd
Z xZS )NumberInstancea  
    :ivar number: The phone number.
    :ivar country: The name of the country.
    :ivar iso_country: The [ISO country code](http://en.wikipedia.org/wiki/ISO_3166-1_alpha-2).
    :ivar outbound_call_price:
    :ivar inbound_call_price:
    :ivar price_unit: The currency in which prices are measured, specified in [ISO 4127](http://www.iso.org/iso/home/standards/currency_codes.htm) format (e.g. `usd`, `eur`, `jpy`).
    :ivar url: The absolute URL of the resource.
    versionpayloadnumberc                    t         |   |       |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _	        d|xs | j                  i| _
        d | _        y )Nr   countryiso_countryoutbound_call_priceinbound_call_price
price_uniturl)super__init__getr   r   r   r   r   r   r   	_solution_context)selfr   r   r   	__class__s       e/opt/services/ai/voice_agent/venv/lib/python3.12/site-packages/twilio/rest/pricing/v1/voice/number.pyr   zNumberInstance.__init__"   s     	!%,[[%:&-kk)&<*1++m*D29++>S2T 18=Q1R)0\)B")++e"4 f+
 26    returnc                     | j                   )t        | j                  | j                  d         | _         | j                   S )z
        Generate an instance context for the instance, the context is capable of
        performing various actions. All instance actions are proxied to the context

        :returns: NumberContext for this NumberInstance
        r   r   )r   NumberContext_versionr   r   s    r   _proxyzNumberInstance._proxy4   s9     == )~~h/DM }}r   c                 6    | j                   j                         S )Y
        Fetch the NumberInstance


        :returns: The fetched NumberInstance
        )r&   fetchr%   s    r   r)   zNumberInstance.fetchC   s     {{  ""r   c                 R   K   | j                   j                          d{   S 7 w)s
        Asynchronous coroutine to fetch the NumberInstance


        :returns: The fetched NumberInstance
        N)r&   fetch_asyncr%   s    r   r,   zNumberInstance.fetch_asyncL   s!      [[,,....s   '%'c                     dj                  d | j                  j                         D              }dj                  |      S )f
        Provide a friendly representation

        :returns: Machine friendly representation
         c              3   F   K   | ]  \  }}d j                  ||        ywz{}={}Nformat.0kvs      r   	<genexpr>z*NumberInstance.__repr__.<locals>.<genexpr>[        SDAq7>>!Q/S   !z%<Twilio.Pricing.V1.NumberInstance {}>joinr   itemsr3   r   contexts     r   __repr__zNumberInstance.__repr__U   s6     ((SDNN<P<P<RSS6==gFFr   )N)r    r#   )r    r   )__name__
__module____qualname____doc__r
   r   strr   r   r   propertyr&   r)   r,   r@   __classcell__r   s   @r   r   r      sd     RV66)-c3h6AI#6$  #/G# Gr   r   c                   L     e Zd Zdedef fdZdefdZdefdZdefdZ	 xZ
S )r#   r   r   c                 x    t         |   |       d|i| _         dj                  di | j                  | _        y)z
        Initialize the NumberContext

        :param version: Version that contains the resource
        :param number: The phone number to fetch.
        r   z/Voice/Numbers/{number}N )r   r   r   r3   _uri)r   r   r   r   s      r   r   zNumberContext.__init__a   s@     	! f
 5-44Ft~~F	r   r    c                     t        j                  i       }d|d<   | j                  j                  d| j                  |      }t        | j                  || j                  d         S )r(   application/jsonAcceptGETmethoduriheadersr   r"   )r   ofr$   r)   rL   r   r   r   rT   r   s      r   r)   zNumberContext.fetchp   s]     ))B-.--%%U		7%SMM>>(+
 	
r   c                    K   t        j                  i       }d|d<   | j                  j                  d| j                  |       d{   }t        | j                  || j                  d         S 7 )w)r+   rN   rO   rP   rQ   Nr   r"   )r   rU   r$   r,   rL   r   r   rV   s      r   r,   zNumberContext.fetch_async   sr      ))B-.11dii 2 
 
 MM>>(+
 	
	
s   AA4A2	*A4c                     dj                  d | j                  j                         D              }dj                  |      S )r.   r/   c              3   F   K   | ]  \  }}d j                  ||        ywr1   r2   r4   s      r   r8   z)NumberContext.__repr__.<locals>.<genexpr>   r9   r:   z$<Twilio.Pricing.V1.NumberContext {}>r;   r>   s     r   r@   zNumberContext.__repr__   s6     ((SDNN<P<P<RSS5<<WEEr   )rA   rB   rC   r
   rE   r   r   r)   r,   r@   rG   rH   s   @r   r#   r#   _   s?    G G G
~ 
(
> 
,F# Fr   r#   c                   P     e Zd Zdef fdZdedefdZdedefdZdefdZ	 xZ
S )
NumberListr   c                 $    t         |   |       y)zh
        Initialize the NumberList

        :param version: Version that contains the resource

        N)r   r   )r   r   r   s     r   r   zNumberList.__init__   s     	!r   r   r    c                 0    t        | j                  |      S z_
        Constructs a NumberContext

        :param number: The phone number to fetch.
        r"   r#   r$   r   r   s     r   r   zNumberList.get        T]]6::r   c                 0    t        | j                  |      S r^   r_   r`   s     r   __call__zNumberList.__call__   ra   r   c                      y)r.   z<Twilio.Pricing.V1.NumberList>rK   r%   s    r   r@   zNumberList.__repr__   s     0r   )rA   rB   rC   r
   r   rE   r#   r   rc   r@   rG   rH   s   @r   r[   r[      sA    " ";# ;- ;;s ;} ;0# 0r   r[   N)rD   typingr   r   r   twilio.baser   twilio.base.instance_contextr   twilio.base.instance_resourcer   twilio.base.list_resourcer	   twilio.base.versionr
   r   r#   r[   rK   r   r   <module>rk      sP    ' &  8 : 2 'EG% EGPBFO BFJ!0 !0r   