
    h                    ^    d dl mZ d dlmZmZ d dlmZmZ d dlm	Z	 d dl
mZ  G d de	      Zy)	    )annotations)AnyOptional)AsyncCallbackManagerForToolRunCallbackManagerForToolRun)BaseToolMojeekSearchAPIWrapperc                      e Zd ZU dZded<   dZded<   ded<   e	 d	 	 	 	 	 	 	 dd	       Z	 d	 	 	 	 	 dd
Z	 d	 	 	 	 	 ddZ	y)MojeekSearchmojeek_searchstrnamezoA wrapper around Mojeek Search. Useful for when you need to web search results. Input should be a search query.descriptionr
   api_wrapperNc                8    t        ||xs i       } | dd|i|S )N)api_keysearch_kwargsr    r	   )clsr   r   kwargswrappers        j/var/www/html/eduruby.in/venv/lib/python3.12/site-packages/langchain_community/tools/mojeek_search/tool.pyconfigzMojeekSearch.config   s-     )=+>B
 1w1&11    c                8    | j                   j                  |      S N)r   runselfqueryrun_managers      r   _runzMojeekSearch._run    s    
 ##E**r   c                    K   t        d      w)zUse the tool asynchronously.z#MojeekSearch does not support async)NotImplementedErrorr   s      r   _arunzMojeekSearch._arun'   s      ""GHHs   r   )r   r   r   zOptional[dict]r   r   returnr   )r!   r   r"   z#Optional[CallbackManagerForToolRun]r'   r   )r!   r   r"   z(Optional[AsyncCallbackManagerForToolRun]r'   r   )
__name__
__module____qualname__r   __annotations__r   classmethodr   r#   r&   r   r   r   r   r      s    D#	*  
 (';?22*82KN2	2 2 <@++ 9+ 
	+ AEII >I 
	Ir   r   N)
__future__r   typingr   r   langchain_core.callbacksr   r   langchain_core.toolsr   +langchain_community.utilities.mojeek_searchr
   r   r   r   r   <module>r2      s&    "   * NI8 Ir   