
    d{i&                         d Z ddlmZ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 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 - Preview
    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Union)values)ApiResponse)InstanceContext)InstanceResource)ListResource)Versionc                       e Zd ZdZdedeeef   def fdZe	dd       Z
ej                  ej                  fdeeef   d	eeef   dd fd
Zej                  ej                  fdeeef   d	eeef   dd fdZej                  ej                  fdeeef   d	eeef   defdZej                  ej                  fdeeef   d	eeef   defdZdefdZ xZS )UsageInstancez
    :ivar sim_sid:
    :ivar sim_unique_name:
    :ivar account_sid:
    :ivar period:
    :ivar commands_usage:
    :ivar commands_costs:
    :ivar data_usage:
    :ivar data_costs:
    :ivar url:
    versionpayloadsim_sidc                    t         |   |       |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _	        |j                  d      | _
        |j                  d	      | _        d|i| _        d | _        y )
Nr   sim_unique_nameaccount_sidperiodcommands_usagecommands_costs
data_usage
data_costsurl)super__init__getr   r   r   r   r   r   r   r   r   	_solution_context)selfr   r   r   	__class__s       d/home/sas/my/fyp/ringai/.venv/lib/python3.12/site-packages/twilio/rest/preview/wireless/sim/usage.pyr   zUsageInstance.__init__%   s    !&-kk)&<.5kk:K.L*1++m*D3:;;x3H;B;;GW;X;B;;GW;X7>{{<7P7>{{<7P")++e"4 w
 15    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: UsageContext for this UsageInstance
        r   r   )r   UsageContext_versionr   r    s    r"   _proxyzUsageInstance._proxy7   s9     == (y1DM }}r#   endstartc                 <    | j                   j                  ||      S )
        Fetch the UsageInstance

        :param end:
        :param start:

        :returns: The fetched UsageInstance
        r+   r,   )r*   fetchr    r+   r,   s      r"   r0   zUsageInstance.fetchF   s&     {{   ! 
 	
r#   c                 X   K   | j                   j                  ||       d{   S 7 w)
        Asynchronous coroutine to fetch the UsageInstance

        :param end:
        :param start:

        :returns: The fetched UsageInstance
        r/   N)r*   fetch_asyncr1   s      r"   r4   zUsageInstance.fetch_asyncX   s4      [[,, - 
 
 	
 
   !*(*c                 <    | j                   j                  ||      S )z
        Fetch the UsageInstance with HTTP info

        :param end:
        :param start:

        :returns: ApiResponse with instance, status code, and headers
        r/   )r*   fetch_with_http_infor1   s      r"   r7   z"UsageInstance.fetch_with_http_infoj   s&     {{// 0 
 	
r#   c                 X   K   | j                   j                  ||       d{   S 7 w)z
        Asynchronous coroutine to fetch the UsageInstance with HTTP info

        :param end:
        :param start:

        :returns: ApiResponse with instance, status code, and headers
        r/   N)r*   fetch_with_http_info_asyncr1   s      r"   r9   z(UsageInstance.fetch_with_http_info_async|   s4      [[;; < 
 
 	
 
r5   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)UsageInstance.__repr__.<locals>.<genexpr>        SDAq7>>!Q/S   !z*<Twilio.Preview.Wireless.UsageInstance {}>joinr   itemsr@   r    contexts     r"   __repr__zUsageInstance.__repr__   s6     ((SDNN<P<P<RSS;BB7KKr#   )r$   r'   )__name__
__module____qualname____doc__r   r   strr   r   propertyr*   r   unsetr   objectr0   r4   r   r7   r9   rM   __classcell__r!   s   @r"   r   r      sX   
5 5$sCx. 53 5$    #),,$*LL
3;
 S&[!
 
	
( #),,$*LL
3;
 S&[!
 
	
( #),,$*LL
3;
 S&[!
 
	
( #),,$*LL
3;
 S&[!
 
	
$L# Lr#   r   c                   8    e Zd Zdedef fdZej                  ej                  fdeee	f   deee	f   de
fdZej                  ej                  fdeee	f   deee	f   defdZej                  ej                  fdeee	f   deee	f   defd	Zej                  ej                  fdeee	f   deee	f   de
fd
Zej                  ej                  fdeee	f   deee	f   defdZej                  ej                  fdeee	f   deee	f   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 UsageContext

        :param version: Version that contains the resource
        :param sim_sid:
        r   z/Sims/{sim_sid}/UsageN )r   r   r   r@   _urir    r   r   r!   s      r"   r   zUsageContext.__init__   s@     	! w
 3+22DT^^D	r#   r+   r,   r$   c                     t        j                  ||d      }t        j                  i       }d|d<   | j                  j                  d| j                  ||      S )zz
        Internal helper for fetch operation

        Returns:
            tuple: (payload, status_code, headers)
        EndStartapplication/jsonAcceptGETmethoduriparamsheaders)r   ofr(   fetch_with_response_infor[   r    r+   r,   rg   rh   s        r"   _fetchzUsageContext._fetch   s_     
 ))B-.}}55dii 6 
 	
r#   c                 z    | j                  ||      \  }}}t        | j                  || j                  d         S )r.   r/   r   r&   )rl   r   r(   r   r    r+   r,   r   _s        r"   r0   zUsageContext.fetch   s?     59AMMNN9-
 	
r#   c                     | j                  ||      \  }}}t        | j                  || j                  d         }t	        |||      S )z
        Fetch the UsageInstance and return response metadata

        :param end:
        :param start:

        :returns: ApiResponse with instance, status code, and headers
        r/   r   r&   datastatus_coderh   )rl   r   r(   r   r   r    r+   r,   r   rs   rh   instances          r"   r7   z!UsageContext.fetch_with_http_info   sN     )-5(I%g MMNN9-

 k7SSr#   c                    K   t        j                  ||d      }t        j                  i       }d|d<   | j                  j                  d| j                  ||       d{   S 7 w)z
        Internal async helper for fetch operation

        Returns:
            tuple: (payload, status_code, headers)
        r^   ra   rb   rc   rd   N)r   ri   r(   fetch_with_response_info_asyncr[   rk   s        r"   _fetch_asynczUsageContext._fetch_async   sn      
 ))B-.]]AAdii B 
 
 	
 
s   AA(!A&"A(c                    K   | j                  ||       d{   \  }}}t        | j                  || j                  d         S 7 -w)r3   r/   Nr   r&   )rx   r   r(   r   rn   s        r"   r4   zUsageContext.fetch_async  sO      #//Cu/EEAMMNN9-
 	
 Fs   A	A.A	c                    K   | j                  ||       d{   \  }}}t        | j                  || j                  d         }t	        |||      S 7 ;w)z
        Asynchronous coroutine to fetch the UsageInstance and return response metadata

        :param end:
        :param start:

        :returns: ApiResponse with instance, status code, and headers
        r/   Nr   r&   rq   )rx   r   r(   r   r   rt   s          r"   r9   z'UsageContext.fetch_with_http_info_async  s^      /3.?.?Cu.?.U(U%g MMNN9-

 k7SS )Vs   AA<Ac                     dj                  d | j                  j                         D              }dj                  |      S )r;   r<   c              3   F   K   | ]  \  }}d j                  ||        ywr>   r?   rA   s      r"   rE   z(UsageContext.__repr__.<locals>.<genexpr>7  rF   rG   z)<Twilio.Preview.Wireless.UsageContext {}>rH   rK   s     r"   rM   zUsageContext.__repr__1  s6     ((SDNN<P<P<RSS:AA'JJr#   )rN   rO   rP   r   rR   r   r   rT   r   rU   tuplerl   r   r0   r   r7   rx   r4   r9   rM   rV   rW   s   @r"   r'   r'      s   E E# E" #),,$*LL
3;
 S&[!
 
	
: #),,$*LL
3;
 S&[!
 
	
, #),,$*LLT3;T S&[!T 
	T. #),,$*LL
3;
 S&[!
 
	
: #),,$*LL
3;
 S&[!
 
	
, #),,$*LLT3;T S&[!T 
	T*K# K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 )	UsageListr   r   c                 6    t         |   |       d|i| _        y)z
        Initialize the UsageList

        :param version: Version that contains the resource
        :param sim_sid:

        r   N)r   r   r   r\   s      r"   r   zUsageList.__init__=  s"     	! w
r#   r$   c                 J    t        | j                  | j                  d         S z,
        Constructs a UsageContext

        r   r&   r'   r(   r   r)   s    r"   r   zUsageList.getL      
 DMM4>>)3LMMr#   c                 J    t        | j                  | j                  d         S r   r   r)   s    r"   __call__zUsageList.__call__S  r   r#   c                      y)r;   z#<Twilio.Preview.Wireless.UsageList>rZ   r)   s    r"   rM   zUsageList.__repr__Z  s     5r#   )rN   rO   rP   r   rR   r   r'   r   r   rM   rV   rW   s   @r"   r   r   ;  s>    
 
# 
N\ NN, N5# 5r#   r   N)rQ   typingr   r   r   r   twilio.baser   twilio.base.api_responser   twilio.base.instance_contextr	   twilio.base.instance_resourcer
   twilio.base.list_resourcer   twilio.base.versionr   r   r'   r   rZ   r#   r"   <module>r      sS    . -  0 8 : 2 '}L$ }L@`K? `KF%5 %5r#   