
    ,:j+
                     X   d dl mZmZmZmZmZm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mZmZmZ g dZ ede	      Ze G d
 de	             Z G d dee   ee   ee         Z G d dee   ee   ee         Z G d dee   ee   ee         Z G d dee   ee   ee         Zy)    )AnyListGenericTypeVarOptionalcast)LiteralProtocoloverrideruntime_checkable   )ModelT)	BaseModel)BasePagePageInfoBaseSyncPageBaseAsyncPage)SyncPage	AsyncPageSyncCursorPageAsyncCursorPage_BaseModelT)boundc                       e Zd ZU eed<   y)CursorPageItemidN)__name__
__module____qualname__str__annotations__     S/var/www/html/tokenscope/api/venv/lib/python3.12/site-packages/openai/pagination.pyr   r      s    Gr#   r   c                   `    e Zd ZU dZee   ed<   ed   ed<   edee   fd       Z	ed	d       Z
y)
r   LNote: no pagination actually occurs yet, this is for forwards-compatibility.datalistobjectreturnc                     | j                   S Nr'   selfs    r$   _get_page_itemszSyncPage._get_page_items       yyr#   Nc                      yz
        This page represents a response that isn't actually paginated at the API level
        so there will never be a next page.
        Nr"   r.   s    r$   next_page_infozSyncPage.next_page_info        r#   r*   Nr   r   r   __doc__r   r   r!   r	   r   r0   r4   r"   r#   r$   r   r      J    V
v,FOf    r#   r   c                   `    e Zd ZU dZee   ed<   ed   ed<   edee   fd       Z	ed	d       Z
y)
r   r&   r'   r(   r)   r*   c                     | j                   S r,   r-   r.   s    r$   r0   zAsyncPage._get_page_items-   r1   r#   Nc                      yr3   r"   r.   s    r$   r4   zAsyncPage.next_page_info1   r5   r#   r6   r7   r"   r#   r$   r   r   '   r9   r#   r   c                   V    e Zd ZU ee   ed<   edee   fd       Zedee	   fd       Z
y)r   r'   r*   c                     | j                   S r,   r-   r.   s    r$   r0   zSyncCursorPage._get_page_items=   r1   r#   c                     | j                   sy t        t        | j                   d         }t        |t              sy t        d|j                  i      S Nafter)paramsr'   r   r   
isinstancer   r   r   r/   items     r$   r4   zSyncCursorPage.next_page_infoA   A    yyC2'$/122r#   Nr   r   r   r   r   r!   r   r0   r   r   r4   r"   r#   r$   r   r   :   I    
v,f   	3 2 	3 	3r#   r   c                   V    e Zd ZU ee   ed<   edee   fd       Zedee	   fd       Z
y)r   r'   r*   c                     | j                   S r,   r-   r.   s    r$   r0   zAsyncCursorPage._get_page_itemsQ   r1   r#   c                     | j                   sy t        t        | j                   d         }t        |t              sy t        d|j                  i      S r@   rD   rF   s     r$   r4   zAsyncCursorPage.next_page_infoU   rH   r#   NrI   r"   r#   r$   r   r   N   rJ   r#   r   N)typingr   r   r   r   r   r   typing_extensionsr	   r
   r   r   _typesr   _modelsr   _base_clientr   r   r   r   __all__r   r   r   r   r   r   r"   r#   r$   <module>rT      s    ? > L L   I I
Hm95 X  |F#Xf%5wv &f%x'7 &3\&)8F+;WV_ 3(3mF+Xf-=wv 3r#   