
    g@0                         S r SSKJr  SSKJrJrJrJrJrJrJ	r	  SSK
JrJr  SSKJr  SSKJr  SSKJr  SSKJr   " S	 S
\5      r " S S\5      r " S S\5      rg)a  
 This code was generated by
___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
 |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
 |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

 Twilio - Supersim
 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.
    )datetime)AnyDictListOptionalUnionIteratorAsyncIterator)deserializevalues)InstanceResource)ListResource)Version)Pagec                   h   ^  \ rS rSr " S S\5      r S\S\\\	4   S\4U 4S jjr
S\4S	 jrS
rU =r$ )BillingPeriodInstance   c                       \ rS rSrSrSrSrg)BillingPeriodInstance.BpType   readyactive N)__name__
__module____qualname____firstlineno__READYACTIVE__static_attributes__r       r/Users/Alptekin/Desktop/izin_takip/venv/lib/python3.13/site-packages/twilio/rest/supersim/v1/sim/billing_period.pyBpTyper      s    r!   r#   versionpayloadsim_sidc                 6  > [         TU ]  U5        UR                  S5      U l        UR                  S5      U l        UR                  S5      U l        [        R                  " UR                  S5      5      U l        [        R                  " UR                  S5      5      U l	        UR                  S5      U l
        [        R                  " UR                  S5      5      U l        [        R                  " UR                  S5      5      U l        SU0U l        g )	Nsidaccount_sidr&   
start_timeend_timeperiod_typedate_createddate_updated)super__init__getr(   r)   r&   r   iso8601_datetimer*   r+   r,   r-   r.   	_solution)selfr$   r%   r&   	__class__s       r"   r0   BillingPeriodInstance.__init__*   s    !")++e"4*1++m*D&-kk)&<.9.J.JKK%/
 -8,H,HKK
#-
 FM[[F
 1<0L0LKK'1
 1<0L0LKK'1

 w
r!   returnc                     SR                  S U R                  R                  5        5       5      nSR                  U5      $ )N
Provide a friendly representation

:returns: Machine friendly representation
 c              3   H   #    U  H  u  pS R                  X5      v   M     g7f)z{}={}N)format).0kvs      r"   	<genexpr>1BillingPeriodInstance.__repr__.<locals>.<genexpr>J   s      S<RDA7>>!//<Rs    "z-<Twilio.Supersim.V1.BillingPeriodInstance {}>)joinr3   itemsr<   )r4   contexts     r"   __repr__BillingPeriodInstance.__repr__D   s6     ((SDNN<P<P<RSS>EEgNNr!   )	r3   r)   r-   r.   r+   r,   r(   r&   r*   )r   r   r   r   objectr#   r   r   strr   r0   rE   r    __classcell__r5   s   @r"   r   r      sJ     	
 
$sCx. 
3 
4O# O Or!   r   c                   >    \ rS rSrS\\\4   S\4S jrS\4S jr	Sr
g)BillingPeriodPageN   r%   r7   c                 D    [        U R                  XR                  S   S9$ )z[
Build an instance of BillingPeriodInstance

:param payload: Payload response from the API
r&   )r&   )r   _versionr3   )r4   r%   s     r"   get_instanceBillingPeriodPage.get_instanceP   s#     %MM7NN9,E
 	
r!   c                     g)r9   z&<Twilio.Supersim.V1.BillingPeriodPage>r   r4   s    r"   rE   BillingPeriodPage.__repr__Z        8r!   r   N)r   r   r   r   r   rH   r   r   rP   rE   r    r   r!   r"   rL   rL   N   s*    
DcN 
7L 
8# 8r!   rL   c            	       "  ^  \ rS rSrS\S\4U 4S jjr  SS\\   S\\   S\	\
   4S jjr  SS\\   S\\   S\\
   4S	 jjr  SS\\   S\\   S\\
   4S
 jjr  SS\\   S\\   S\\
   4S jjr\R$                  \R$                  \R$                  4S\\\4   S\\\4   S\\\4   S\4S jjr\R$                  \R$                  \R$                  4S\\\4   S\\\4   S\\\4   S\4S jjrS\S\4S jrS\S\4S jrS\4S jrSrU =r$ )BillingPeriodListc   r$   r&   c                 x   > [         TU ]  U5        SU0U l        SR                  " S0 U R                  D6U l        g)z
Initialize the BillingPeriodList

:param version: Version that contains the resource
:param sim_sid: The SID of the Super SIM to list Billing Periods for.

r&   z/Sims/{sim_sid}/BillingPeriodsNr   )r/   r0   r3   r<   _uri)r4   r$   r&   r5   s      r"   r0   BillingPeriodList.__init__e   s=     	! w
 5;;MdnnM	r!   limit	page_sizer7   c                     U R                   R                  X5      nU R                  US   S9nU R                   R                  XCS   5      $ )a  
Streams BillingPeriodInstance records from the API as a generator stream.
This operation lazily loads records as efficiently as possible until the limit
is reached.
The results are returned as a generator, so this operation is memory efficient.

:param limit: Upper limit for the number of records to return. stream()
              guarantees to never return more than limit.  Default is no limit
:param page_size: Number of records to fetch per request, when not set will use
                  the default value of 50 records.  If no page_size is defined
                  but a limit is defined, stream() will attempt to read the
                  limit with the most efficient page size, i.e. min(limit, 1000)

:returns: Generator that will yield up to limit results
r]   r]   r\   )rO   read_limitspagestreamr4   r\   r]   limitsra   s        r"   rb   BillingPeriodList.streamu   sF    ( **5<yy6+#6y7}}##D/::r!   c                    #    U R                   R                  X5      nU R                  US   S9I Sh  vN nU R                   R                  XCS   5      $  N"7f)a  
Asynchronously streams BillingPeriodInstance records from the API as a generator stream.
This operation lazily loads records as efficiently as possible until the limit
is reached.
The results are returned as a generator, so this operation is memory efficient.

:param limit: Upper limit for the number of records to return. stream()
              guarantees to never return more than limit.  Default is no limit
:param page_size: Number of records to fetch per request, when not set will use
                  the default value of 50 records.  If no page_size is defined
                  but a limit is defined, stream() will attempt to read the
                  limit with the most efficient page size, i.e. min(limit, 1000)

:returns: Generator that will yield up to limit results
r]   r_   Nr\   )rO   r`   
page_asyncstream_asyncrc   s        r"   rh   BillingPeriodList.stream_async   sR     ( **5<__vk/B_CC}}))$w@@ Ds   1AA#Ac                 4    [        U R                  UUS95      $ )a  
Lists BillingPeriodInstance records from the API as a list.
Unlike stream(), this operation is eager and will load `limit` records into
memory before returning.

:param limit: Upper limit for the number of records to return. list() guarantees
              never to return more than limit.  Default is no limit
:param page_size: Number of records to fetch per request, when not set will use
                  the default value of 50 records.  If no page_size is defined
                  but a limit is defined, list() will attempt to read the limit
                  with the most efficient page size, i.e. min(limit, 1000)

:returns: list that will contain up to limit results
r\   r]   )listrb   )r4   r\   r]   s      r"   rl   BillingPeriodList.list   s(    & KK#  
 	
r!   c                 v   #    U R                  UUS9I Sh  vN  Vs/ s Sh  vN nUPM   N N

 sn$ s  snf 7f)a  
Asynchronously lists BillingPeriodInstance records from the API as a list.
Unlike stream(), this operation is eager and will load `limit` records into
memory before returning.

:param limit: Upper limit for the number of records to return. list() guarantees
              never to return more than limit.  Default is no limit
:param page_size: Number of records to fetch per request, when not set will use
                  the default value of 50 records.  If no page_size is defined
                  but a limit is defined, list() will attempt to read the limit
                  with the most efficient page size, i.e. min(limit, 1000)

:returns: list that will contain up to limit results
rk   N)rh   )r4   r\   r]   records       r"   
list_asyncBillingPeriodList.list_async   sQ     * '+&7&7# '8 ' ! !
 
 !
 	
 
s0   9,940.
049049
page_tokenpage_numberc                     [         R                  " UUUS.5      n[         R                  " SS05      nSUS'   U R                  R                  SU R                  XES9n[        U R                  X`R                  5      $ )aG  
Retrieve a single page of BillingPeriodInstance records from the API.
Request is executed immediately

:param page_token: PageToken provided by the API
:param page_number: Page Number, this value is simply for client state
:param page_size: Number of records to return, defaults to 50

:returns: Page of BillingPeriodInstance
	PageTokenr   PageSizeContent-Type!application/x-www-form-urlencodedapplication/jsonAcceptGETmethoduriparamsheaders)r   ofrO   ra   rZ   rL   r3   r4   rr   rs   r]   datar   responses          r"   ra   BillingPeriodList.page   s{      yy'#%
 ))^-PQR.==%%dii & 
 !..IIr!   c                   #    [         R                  " UUUS.5      n[         R                  " SS05      nSUS'   U R                  R                  SU R                  XES9I Sh  vN n[        U R                  X`R                  5      $  N$7f)	aV  
Asynchronously retrieve a single page of BillingPeriodInstance records from the API.
Request is executed immediately

:param page_token: PageToken provided by the API
:param page_number: Page Number, this value is simply for client state
:param page_size: Number of records to return, defaults to 50

:returns: Page of BillingPeriodInstance
ru   rx   ry   rz   r{   r|   r}   N)r   r   rO   rg   rZ   rL   r3   r   s          r"   rg   BillingPeriodList.page_async   s       yy'#%
 ))^-PQR.11dii 2 
 
 !..II
s   A B	"B#%B	
target_urlc                     U R                   R                  R                  R                  SU5      n[	        U R                   X R
                  5      $ )z
Retrieve a specific page of BillingPeriodInstance records from the API.
Request is executed immediately

:param target_url: API-generated URL for the requested results page

:returns: Page of BillingPeriodInstance
r|   )rO   domaintwiliorequestrL   r3   r4   r   r   s      r"   get_pageBillingPeriodList.get_page  s;     ==''..66ujI ..IIr!   c                    #    U R                   R                  R                  R                  SU5      I Sh  vN n[	        U R                   X R
                  5      $  N$7f)z
Asynchronously retrieve a specific page of BillingPeriodInstance records from the API.
Request is executed immediately

:param target_url: API-generated URL for the requested results page

:returns: Page of BillingPeriodInstance
r|   N)rO   r   r   request_asyncrL   r3   r   s      r"   get_page_async BillingPeriodList.get_page_async*  sG      --44BB5*UU ..II Vs   4AA%Ac                     g)r9   z&<Twilio.Supersim.V1.BillingPeriodList>r   rS   s    r"   rE   BillingPeriodList.__repr__6  rU   r!   )r3   rZ   )NN)r   r   r   r   r   rH   r0   r   intr	   r   rb   r
   rh   r   rl   rp   r   unsetr   rG   rL   ra   rg   r   r   rE   r    rI   rJ   s   @r"   rW   rW   c   s   N N# N$  $#';}; C=; 
'	(	;6  $#'A}A C=A 
,	-	A6  $#'
}
 C=
 
#	$	
8  $#'
}
 C=
 
#	$	
: *0*0,,(.	J#v+&J 3;'J f%	J
 
JF *0*0,,(.	J#v+&J 3;'J f%	J
 
JB
J3 
J+< 
J
Js 
J7H 
J8# 8 8r!   rW   N)__doc__r   typingr   r   r   r   r   r	   r
   twilio.baser   r   twilio.base.instance_resourcer   twilio.base.list_resourcer   twilio.base.versionr   twilio.base.pager   r   rL   rW   r   r!   r"   <module>r      sQ     L L L + : 2 ' !2O, 2Oj8 8*Y8 Y8r!   