o
    ùT·j¶†  ã                   @  sä  d dl mZ d dlmZmZmZ d dlmZ d dlZddl	m
Z
 ddlmZ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 dd
lmZmZ ddlmZmZ ddlm Z m!Z! ddl"m#Z#m$Z$m%Z% ddl&m'Z'm(Z(m)Z)m*Z*m+Z+m,Z, ddl-m.Z.m/Z/ ddl0m1Z1m2Z2m3Z3m4Z4m5Z5m6Z6 ddl7m8Z8 ddl9m:Z:m;Z;m<Z<m=Z=m>Z>m?Z? ddl@mAZA ddlBmCZC ddlDmEZE ddlFmGZG ddlHmIZI ddgZJG dd„ deƒZKG dd„ deƒZLG dd„ dƒZMG dd „ d ƒZNG d!d"„ d"ƒZOG d#d$„ d$ƒZPdS )%é    )Úannotations)ÚDictÚIterableÚOptional)ÚLiteralNé   )Ú_legacy_response)ÚBodyÚOmitÚQueryÚHeadersÚNotGivenÚomitÚ	not_given)Úpath_templateÚmaybe_transformÚasync_maybe_transform)Úcached_property)ÚSyncAPIResourceÚAsyncAPIResource)Úto_streamed_response_wrapperÚ"async_to_streamed_response_wrapper)ÚSyncCursorPageÚAsyncCursorPage)Úagent_list_paramsÚagent_create_paramsÚagent_update_paramsé   )ÚVaultsÚAsyncVaultsÚVaultsWithRawResponseÚAsyncVaultsWithRawResponseÚVaultsWithStreamingResponseÚ AsyncVaultsWithStreamingResponse)ÚAsyncPaginatorÚmake_request_options)ÚSessionsÚAsyncSessionsÚSessionsWithRawResponseÚAsyncSessionsWithRawResponseÚSessionsWithStreamingResponseÚ"AsyncSessionsWithStreamingResponse)ÚAgent)ÚEnvironmentsÚAsyncEnvironmentsÚEnvironmentsWithRawResponseÚ AsyncEnvironmentsWithRawResponseÚ!EnvironmentsWithStreamingResponseÚ&AsyncEnvironmentsWithStreamingResponse)ÚAgentDeleted)ÚAgentTextParam)ÚAgentReasoningParam)ÚMultiAgentConfigParam)ÚPersistedAgentToolParamÚAgentsÚAsyncAgentsc                   @  óè   e Zd ZedCdd„ƒZedDdd„ƒZedEd	d
„ƒZedFdd„ƒZedGdd„ƒZe	e	e	e	e	e	e	e	ddde
dœdHd-d.„Zddde
d/œdId1d2„Ze	e	e	e	e	e	e	e	e	ddde
d3œdJd5d6„Ze	e	e	ddde
d7œdKd>d?„Zddde
d/œdLdAdB„ZdS )Mr8   Úreturnr-   c                 C  ó
   t | jƒS ©N)r-   Ú_client©Úself© rA   úf/home/dinkstrade/pdmp-scanner/venv/lib/python3.10/site-packages/openai/resources/beta/agents/agents.pyÚenvironments6   ó   
zAgents.environmentsr   c                 C  r<   r=   )r   r>   r?   rA   rA   rB   Úvaults:   rD   zAgents.vaultsr&   c                 C  r<   r=   )r&   r>   r?   rA   rA   rB   Úsessions>   rD   zAgents.sessionsÚAgentsWithRawResponsec                 C  ó   t | ƒS ©a  
        This property can be used as a prefix for any HTTP method call to return
        the raw response object instead of the parsed content.

        For more information, see https://www.github.com/openai/openai-python#accessing-raw-response-data-eg-headers
        )rG   r?   rA   rA   rB   Úwith_raw_responseB   ó   zAgents.with_raw_responseÚAgentsWithStreamingResponsec                 C  rH   ©zÌ
        An alternative to `.with_raw_response` that doesn't eagerly read the response body.

        For more information, see https://www.github.com/openai/openai-python#with_streaming_response
        )rL   r?   rA   rA   rB   Úwith_streaming_responseL   ó   zAgents.with_streaming_responseN©ÚinstructionsÚmetadataÚmulti_agentÚnameÚ	reasoningÚservice_tierÚtextÚtoolsÚextra_headersÚextra_queryÚ
extra_bodyÚtimeoutÚmodelÚstrrQ   úOptional[str] | OmitrR   úOptional[Dict[str, str]] | OmitrS   ú&Optional[MultiAgentConfigParam] | OmitrT   rU   ú$Optional[AgentReasoningParam] | OmitrV   úGOptional[Literal['auto', 'default', 'flex', 'priority', 'fast']] | OmitrW   úOptional[AgentTextParam] | OmitrX   ú2Optional[Iterable[PersistedAgentToolParam]] | OmitrY   úHeaders | NonerZ   úQuery | Noner[   úBody | Noner\   ú(float | httpx2.Timeout | None | NotGivenr,   c                C  sP   ddi|
pi ¥}
| j dt|||||||||	dœ	tjƒt|
|||ddid�td�S )	áù  Creates a reusable agent without storing credentials.

        See
        [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).

        Args:
          model: The model to use for the agent. The requested model name is preserved.

          instructions: Additional instructions appended to the agent's default base instructions. Omit
              or set to null to add no custom instructions.

          metadata: Up to 16 string key-value pairs, with keys up to 64 and values up to 512
              characters. Omission or null defaults to an empty map.

          multi_agent: Configuration for creating and coordinating subagents. Subagent tools are
              disabled by default.

          name: A human-readable name for the agent. Omission or null leaves the agent unnamed.

          reasoning: Configuration for model reasoning. Omission uses the model's default effort.

          service_tier: The service tier used for model requests. Defaults to `auto`.

              - `auto` - Selects the service tier automatically.
              - `default` - Uses the default service tier.
              - `flex` - Uses the flex service tier.
              - `priority` - Uses the priority service tier.
              - `fast` - Uses the fast service tier.

          text: Configuration for generated text. Defaults to the `text` format and medium
              verbosity.

          tools: Tools available to the agent. Defaults to an empty list.

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        úOpenAI-Betaú	agents=v1ú/agents©	r]   rQ   rR   rS   rT   rU   rV   rW   rX   Úbearer_authT©rY   rZ   r[   r\   Úsecurity©ÚbodyÚoptionsÚcast_to)Ú_postr   r   ÚAgentCreateParamsr%   r,   ©r@   r]   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   rA   rA   rB   ÚcreateU   s2   =÷ôûézAgents.create©rY   rZ   r[   r\   Úagent_idc             	   C  óL   |s	t d|›�ƒ‚ddi|pi ¥}| jtd|d�t||||ddid�td	�S )
áÀ  Retrieves a reusable agent by ID.

        See
        [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).

        Args:
          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        ú7Expected a non-empty value for `agent_id` but received rk   rl   ú/agents/{agent_id}©r{   ro   Trp   ©rt   ru   ©Ú
ValueErrorÚ_getr   r%   r,   ©r@   r{   rY   rZ   r[   r\   rA   rA   rB   Úretrieve­   ó   
û÷zAgents.retrieve©rQ   rR   r]   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   ú
str | Omitc                C  sj   |s	t d|›�ƒ‚ddi|pi ¥}| jtd|d�t||||||||	|
dœ	tjƒt||||ddid	�td
�S )áŽ  Updates a reusable agent.

        See
        [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).

        Args:
          instructions: Additional instructions appended to the agent's default base instructions. Omit
              to leave unchanged.

          metadata: Replaces all metadata. Omit to leave unchanged, or pass null or {} to clear it.
              Up to 16 string key-value pairs, with keys up to 64 and values up to 512
              characters.

          model: The model to use for the agent. The requested model name is preserved.

          multi_agent: Configuration for creating and coordinating subagents.

          name: A replacement name. Omit to leave unchanged, or pass null to clear it.

          reasoning: Configuration for model reasoning. Omit to keep the current settings; pass
              `null` to reset to the model's default effort.

          service_tier: The service tier used for model requests.

              - `auto` - Selects the service tier automatically.
              - `default` - Uses the default service tier.
              - `flex` - Uses the flex service tier.
              - `priority` - Uses the priority service tier.
              - `fast` - Uses the fast service tier.

          text: Configuration for text generated by the agent.

          tools: Tools available to the agent.

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        r~   rk   rl   r   r€   ©	rQ   rR   r]   rS   rT   rU   rV   rW   rX   ro   Trp   rr   )rƒ   rv   r   r   r   ÚAgentUpdateParamsr%   r,   ©r@   r{   rQ   rR   r]   rS   rT   rU   rV   rW   rX   rY   rZ   r[   r\   rA   rA   rB   ÚupdateÕ   s6   >
÷ôûézAgents.update©ÚafterÚlimitÚorderrY   rZ   r[   r\   r�   r‘   úOptional[int] | Omitr’   úLiteral['asc', 'desc'] | OmitúSyncCursorPage[Agent]c                C  óJ   ddi|pi ¥}| j dtt t||||t|||dœtjƒddid�td�S ©	a*  Lists reusable agents in the current project.

        See
        [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).

        Args:
          after: Return resources after this resource ID in the selected order.

          limit: The maximum number of resources to return.

          order: The order in which resources are returned. Defaults to `desc`.

              - `asc` - Returns resources in ascending order.
              - `desc` - Returns resources in descending order.

          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        rk   rl   rm   )r�   r‘   r’   ro   T)rY   rZ   r[   r\   Úqueryrq   )Úpagert   r]   )Ú_get_api_listr   r,   r%   r   r   ÚAgentListParams©r@   r�   r‘   r’   rY   rZ   r[   r\   rA   rA   rB   Úlist0  ó(   $ýúóîzAgents.listr3   c             	   C  r|   )
á¸  Deletes a reusable agent.

        See
        [agent configuration](https://developers.openai.com/api/docs/guides/agents-api/configuration).

        Args:
          extra_headers: Send extra headers

          extra_query: Add additional query parameters to the request

          extra_body: Add additional JSON properties to the request

          timeout: Override the client-level default timeout for this request, in seconds
        r~   rk   rl   r   r€   ro   Trp   r�   ©rƒ   Ú_deleter   r%   r3   r…   rA   rA   rB   Údeletej  r‡   zAgents.delete)r;   r-   )r;   r   )r;   r&   )r;   rG   )r;   rL   ©r]   r^   rQ   r_   rR   r`   rS   ra   rT   r_   rU   rb   rV   rc   rW   rd   rX   re   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r,   ©r{   r^   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r,   ©r{   r^   rQ   r_   rR   r`   r]   r‰   rS   ra   rT   r_   rU   rb   rV   rc   rW   rd   rX   re   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r,   )r�   r‰   r‘   r“   r’   r”   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r•   ©r{   r^   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r3   ©Ú__name__Ú
__module__Ú__qualname__r   rC   rE   rF   rJ   rN   r   r   ry   r†   rŽ   r�   r¢   rA   rA   rA   rB   r8   5   óp    	ï^÷,î^õ@÷c                   @  r:   )Mr9   r;   r.   c                 C  r<   r=   )r.   r>   r?   rA   rA   rB   rC   ”  rD   zAsyncAgents.environmentsr   c                 C  r<   r=   )r   r>   r?   rA   rA   rB   rE   ˜  rD   zAsyncAgents.vaultsr'   c                 C  r<   r=   )r'   r>   r?   rA   rA   rB   rF   œ  rD   zAsyncAgents.sessionsÚAsyncAgentsWithRawResponsec                 C  rH   rI   )r¬   r?   rA   rA   rB   rJ      rK   zAsyncAgents.with_raw_responseÚ AsyncAgentsWithStreamingResponsec                 C  rH   rM   )r­   r?   rA   rA   rB   rN   ª  rO   z#AsyncAgents.with_streaming_responseNrP   r]   r^   rQ   r_   rR   r`   rS   ra   rT   rU   rb   rV   rc   rW   rd   rX   re   rY   rf   rZ   rg   r[   rh   r\   ri   r,   c                Ã  s^   �ddi|
pi ¥}
| j dt|||||||||	dœ	tjƒI dH t|
|||ddid�td	�I dH S )
rj   rk   rl   rm   rn   Nro   Trp   rr   )rv   r   r   rw   r%   r,   rx   rA   rA   rB   ry   ³  s4   €=÷ôûézAsyncAgents.createrz   r{   c             	   Ã  óT   �|s
t d|›�ƒ‚ddi|pi ¥}| jtd|d�t||||ddid�td	�I d
H S )r}   r~   rk   rl   r   r€   ro   Trp   r�   Nr‚   r…   rA   rA   rB   r†     ó   €
û÷zAsyncAgents.retrieverˆ   r‰   c                Ã  sx   �|s
t d|›�ƒ‚ddi|pi ¥}| jtd|d�t||||||||	|
dœ	tjƒI dH t||||dd	id
�td�I dH S )rŠ   r~   rk   rl   r   r€   r‹   Nro   Trp   rr   )rƒ   rv   r   r   r   rŒ   r%   r,   r�   rA   rA   rB   rŽ   3  s8   €>
÷ôûézAsyncAgents.updater�   r�   r‘   r“   r’   r”   ú-AsyncPaginator[Agent, AsyncCursorPage[Agent]]c                C  r–   r—   )rš   r   r,   r%   r   r   r›   rœ   rA   rA   rB   r�   Ž  rž   zAsyncAgents.listr3   c             	   Ã  r®   )rŸ   r~   rk   rl   r   r€   ro   Trp   r�   Nr    r…   rA   rA   rB   r¢   È  r¯   zAsyncAgents.delete)r;   r.   )r;   r   )r;   r'   )r;   r¬   )r;   r­   r£   r¤   r¥   )r�   r‰   r‘   r“   r’   r”   rY   rf   rZ   rg   r[   rh   r\   ri   r;   r°   r¦   r§   rA   rA   rA   rB   r9   “  r«   c                   @  ó@   e Zd Zddd„Zeddd	„ƒZeddd„ƒZeddd„ƒZdS )rG   Úagentsr8   r;   ÚNonec                 C  óP   || _ t |j¡| _t |j¡| _t |j¡| _t |j¡| _t |j¡| _d S r=   )Ú_agentsr   Úto_raw_response_wrapperry   r†   rŽ   r�   r¢   ©r@   r²   rA   rA   rB   Ú__init__ò  ó    ÿÿÿÿ
ÿzAgentsWithRawResponse.__init__r/   c                 C  ó   t | jjƒS r=   )r/   rµ   rC   r?   rA   rA   rB   rC     ó   z"AgentsWithRawResponse.environmentsr    c                 C  rº   r=   )r    rµ   rE   r?   rA   rA   rB   rE   	  r»   zAgentsWithRawResponse.vaultsr(   c                 C  rº   r=   )r(   rµ   rF   r?   rA   rA   rB   rF     r»   zAgentsWithRawResponse.sessionsN©r²   r8   r;   r³   )r;   r/   )r;   r    )r;   r(   ©r¨   r©   rª   r¸   r   rC   rE   rF   rA   rA   rA   rB   rG   ñ  ó    
rG   c                   @  r±   )r¬   r²   r9   r;   r³   c                 C  r´   r=   )rµ   r   Úasync_to_raw_response_wrapperry   r†   rŽ   r�   r¢   r·   rA   rA   rB   r¸     r¹   z#AsyncAgentsWithRawResponse.__init__r0   c                 C  rº   r=   )r0   rµ   rC   r?   rA   rA   rB   rC   &  r»   z'AsyncAgentsWithRawResponse.environmentsr!   c                 C  rº   r=   )r!   rµ   rE   r?   rA   rA   rB   rE   *  r»   z!AsyncAgentsWithRawResponse.vaultsr)   c                 C  rº   r=   )r)   rµ   rF   r?   rA   rA   rB   rF   .  r»   z#AsyncAgentsWithRawResponse.sessionsN©r²   r9   r;   r³   )r;   r0   )r;   r!   )r;   r)   r½   rA   rA   rA   rB   r¬     r¾   r¬   c                   @  r±   )rL   r²   r8   r;   r³   c                 C  óF   || _ t|jƒ| _t|jƒ| _t|jƒ| _t|jƒ| _t|jƒ| _d S r=   )rµ   r   ry   r†   rŽ   r�   r¢   r·   rA   rA   rB   r¸   4  ó    ÿÿÿÿ
ÿz$AgentsWithStreamingResponse.__init__r1   c                 C  rº   r=   )r1   rµ   rC   r?   rA   rA   rB   rC   G  r»   z(AgentsWithStreamingResponse.environmentsr"   c                 C  rº   r=   )r"   rµ   rE   r?   rA   rA   rB   rE   K  r»   z"AgentsWithStreamingResponse.vaultsr*   c                 C  rº   r=   )r*   rµ   rF   r?   rA   rA   rB   rF   O  r»   z$AgentsWithStreamingResponse.sessionsNr¼   )r;   r1   )r;   r"   )r;   r*   r½   rA   rA   rA   rB   rL   3  r¾   rL   c                   @  r±   )r­   r²   r9   r;   r³   c                 C  rÁ   r=   )rµ   r   ry   r†   rŽ   r�   r¢   r·   rA   rA   rB   r¸   U  rÂ   z)AsyncAgentsWithStreamingResponse.__init__r2   c                 C  rº   r=   )r2   rµ   rC   r?   rA   rA   rB   rC   h  r»   z-AsyncAgentsWithStreamingResponse.environmentsr#   c                 C  rº   r=   )r#   rµ   rE   r?   rA   rA   rB   rE   l  r»   z'AsyncAgentsWithStreamingResponse.vaultsr+   c                 C  rº   r=   )r+   rµ   rF   r?   rA   rA   rB   rF   p  r»   z)AsyncAgentsWithStreamingResponse.sessionsNrÀ   )r;   r2   )r;   r#   )r;   r+   r½   rA   rA   rA   rB   r­   T  r¾   r­   )QÚ
__future__r   Útypingr   r   r   Útyping_extensionsr   Úhttpx2Ú r   Ú_typesr	   r
   r   r   r   r   r   Ú_utilsr   r   r   Ú_compatr   Ú	_resourcer   r   Ú	_responser   r   Ú
paginationr   r   Ú
types.betar   r   r   Úvaults.vaultsr   r   r    r!   r"   r#   Ú_base_clientr$   r%   Úsessions.sessionsr&   r'   r(   r)   r*   r+   Útypes.beta.agentr,   Úenvironments.environmentsr-   r.   r/   r0   r1   r2   Útypes.beta.agent_deletedr3   Útypes.beta.agent_text_paramr4   Ú types.beta.agent_reasoning_paramr5   Ú#types.beta.multi_agent_config_paramr6   Ú%types.beta.persisted_agent_tool_paramr7   Ú__all__r8   r9   rG   r¬   rL   r­   rA   rA   rA   rB   Ú<module>   sB   $     `  `!!!