U
    h                     @  s   d Z ddlmZ ddlmZ ddlmZ ddlmZ ddl	m
Z
 erRddlmZ n&zddlmZ W n ek
rv   Y nX G dd	 d	eZd
S )Base class for Gmail tools.    )annotations)TYPE_CHECKING)Field)BaseTool)build_resource_service)Resourcec                   @  s8   e Zd ZU dZeedZded< edddddZ	d	S )
GmailBaseToolr   )default_factoryr   api_resourcez'GmailBaseTool')r   returnc                 C  s
   | |dS )zCreate a tool from an api resource.

        Args:
            api_resource: The api resource to use.

        Returns:
            A tool.
        )Zservice )clsr   r   r   H/tmp/pip-unpacked-wheel-9gdii04g/langchain_community/tools/gmail/base.pyfrom_api_resource   s    
zGmailBaseTool.from_api_resourceN)
__name__
__module____qualname____doc__r   r   r   __annotations__classmethodr   r   r   r   r   r	      s   
r	   N)r   
__future__r   typingr   Zlangchain_core.pydantic_v1r   Zlangchain_core.toolsr   Z%langchain_community.tools.gmail.utilsr   Zgoogleapiclient.discoveryr   ImportErrorr	   r   r   r   r   <module>   s   