o
    ùT·jƒ  ã                   @   s´  d dl mZmZmZmZmZmZ d dlmZm	Z	m
Z
 ddlmZmZmZmZ g d¢ZedƒZe
G dd„ deƒƒZG d	d
„ d
ee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZG dd„ dee ee ee ƒZdS )é    )ÚAnyÚListÚGenericÚTypeVarÚOptionalÚcast)ÚProtocolÚoverrideÚruntime_checkableé   )ÚBasePageÚPageInfoÚBaseSyncPageÚBaseAsyncPage)
ÚSyncPageÚ	AsyncPageÚSyncCursorPageÚAsyncCursorPageÚSyncConversationCursorPageÚAsyncConversationCursorPageÚSyncNextCursorPageÚAsyncNextCursorPageÚSyncTokenPageÚAsyncTokenPageÚ_Tc                   @   s   e Zd ZU ee ed< dS )ÚCursorPageItemÚidN)Ú__name__Ú
__module__Ú__qualname__r   ÚstrÚ__annotations__© r"   r"   úT/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/openai/pagination.pyr      s   
 r   c                   @   óJ   e Zd ZU dZee ed< eed< edee fdd„ƒZ	ed
dd	„ƒZ
dS )r   úLNote: no pagination actually occurs yet, this is for forwards-compatibility.ÚdataÚobjectÚreturnc                 C   ó   | j }|sg S |S ©N©r&   ©Úselfr&   r"   r"   r#   Ú_get_page_items!   ó   zSyncPage._get_page_itemsNc                 C   ó   dS ©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-   r"   r"   r#   Únext_page_info(   ó   zSyncPage.next_page_info©r(   N©r   r   r   Ú__doc__r   r   r!   r    r	   r.   r3   r"   r"   r"   r#   r      ó   
 r   c                   @   r$   )r   r%   r&   r'   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   7   r/   zAsyncPage._get_page_itemsNc                 C   r0   r1   r"   r2   r"   r"   r#   r3   >   r4   zAsyncPage.next_page_infor5   r6   r"   r"   r"   r#   r   1   r8   r   c                       óp   e Zd ZU ee ed< dZee ed< e	dee fdd„ƒZ
e	def‡ fdd„ƒZe	dee fd	d
„ƒZ‡  ZS )r   r&   NÚhas_morer(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   K   r/   zSyncCursorPage._get_page_itemsc                    ó$   | j }|d ur|du rdS tƒ  ¡ S ©NF©r:   ÚsuperÚhas_next_page©r-   r:   ©Ú	__class__r"   r#   r?   R   ó   
zSyncCursorPage.has_next_pagec                 C   óD   | j }|sd S tt|d ƒ}t|tƒr|jd u rd S td|jid�S ©NéÿÿÿÿÚafter©Úparams©r&   r   r   Ú
isinstancer   r   r   ©r-   r&   Úitemr"   r"   r#   r3   Z   ó   zSyncCursorPage.next_page_info©r   r   r   r   r   r!   r:   r   Úboolr	   r.   r?   r   r3   Ú__classcell__r"   r"   rA   r#   r   G   ó   
 r   c                       r9   )r   r&   Nr:   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   l   r/   zAsyncCursorPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   s   rC   zAsyncCursorPage.has_next_pagec                 C   rD   rE   rJ   rL   r"   r"   r#   r3   {   rN   zAsyncCursorPage.next_page_inforO   r"   r"   rA   r#   r   h   rR   r   c                       ó€   e Zd ZU ee ed< dZee ed< dZ	ee
 ed< edee fdd„ƒZedef‡ fdd	„ƒZedee fd
d„ƒZ‡  ZS )r   r&   Nr:   Úlast_idr(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   Ž   r/   z*SyncConversationCursorPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   •   rC   z(SyncConversationCursorPage.has_next_pagec                 C   ó   | j }|sd S td|id�S ©NrG   rH   ©rT   r   ©r-   rT   r"   r"   r#   r3   �   ó   z)SyncConversationCursorPage.next_page_info©r   r   r   r   r   r!   r:   r   rP   rT   r    r	   r.   r?   r   r3   rQ   r"   r"   rA   r#   r   ‰   ó   
 r   c                       rS   )r   r&   Nr:   rT   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   «   r/   z+AsyncConversationCursorPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   ²   rC   z)AsyncConversationCursorPage.has_next_pagec                 C   rU   rV   rW   rX   r"   r"   r#   r3   º   rY   z*AsyncConversationCursorPage.next_page_inforZ   r"   r"   rA   r#   r   ¦   r[   r   c                       rS   )r   r&   Nr:   Únextr(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   È   r/   z"SyncNextCursorPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   Ï   rC   z SyncNextCursorPage.has_next_pagec                 C   rU   rV   ©r\   r   ©r-   r\   r"   r"   r#   r3   ×   rY   z!SyncNextCursorPage.next_page_info©r   r   r   r   r   r!   r:   r   rP   r\   r    r	   r.   r?   r   r3   rQ   r"   r"   rA   r#   r   Ã   r[   r   c                       rS   )r   r&   Nr:   r\   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.   å   r/   z#AsyncNextCursorPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   ì   rC   z!AsyncNextCursorPage.has_next_pagec                 C   rU   rV   r]   r^   r"   r"   r#   r3   ô   rY   z"AsyncNextCursorPage.next_page_infor_   r"   r"   rA   r#   r   à   r[   r   c                       rS   )r   r&   Nr:   r\   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.     r/   zSyncTokenPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   	  rC   zSyncTokenPage.has_next_pagec                 C   rU   ©NÚpagerH   r]   r^   r"   r"   r#   r3     rY   zSyncTokenPage.next_page_infor_   r"   r"   rA   r#   r   ý   r[   r   c                       rS   )r   r&   Nr:   r\   r(   c                 C   r)   r*   r+   r,   r"   r"   r#   r.     r/   zAsyncTokenPage._get_page_itemsc                    r;   r<   r=   r@   rA   r"   r#   r?   &  rC   zAsyncTokenPage.has_next_pagec                 C   rU   r`   r]   r^   r"   r"   r#   r3   .  rY   zAsyncTokenPage.next_page_infor_   r"   r"   rA   r#   r     r[   r   N)Útypingr   r   r   r   r   r   Útyping_extensionsr   r	   r
   Ú_base_clientr   r   r   r   Ú__all__r   r   r   r   r   r   r   r   r   r   r   r   r"   r"   r"   r#   Ú<module>   s"         ! !    $