o
    Zh	                     @  s   d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
m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 d dlmZ d dlmZ d dlmZ er[d dlmZ nzd dlmZ W n	 eyl   Y nw dgZG dd deZ dS )    )annotations)TYPE_CHECKINGList)BaseTool)BaseToolkit)
ConfigDictField)CalendarCreateEvent)GetCurrentDatetime)CalendarDeleteEvent)GetCalendarsInfo)CalendarMoveEvent)CalendarSearchEvents)CalendarUpdateEvent)build_resource_service)Resourcez(https://www.googleapis.com/auth/calendarc                   @  s8   e Zd ZU dZeedZded< eddZ	dd	d
Z
dS )CalendarToolkita  Toolkit for interacting with Google Calendar.

    *Security Note*: This toolkit contains tools that can read and modify
        the state of a service; e.g., by reading, creating, updating, deleting
        data associated with this service.

        For example, this toolkit can be used to create events on behalf of the
        associated account.

        See https://python.langchain.com/docs/security for more information.
    )default_factoryr   api_resourceT)Zarbitrary_types_allowedreturnList[BaseTool]c              	   C  sJ   t | jdt| jdt| jdt| jdt| jdt| jdt| jdgS )zGet the tools in the toolkit.)r   )r	   r   r   r   r   r   r   r
   )self r   b/var/www/html/lang_env/lib/python3.10/site-packages/langchain_google_community/calendar/toolkit.py	get_tools3   s   






zCalendarToolkit.get_toolsN)r   r   )__name__
__module____qualname____doc__r   r   r   __annotations__r   Zmodel_configr   r   r   r   r   r       s   
 r   N)!
__future__r   typingr   r   Zlangchain_core.toolsr   Zlangchain_core.tools.baser   Zpydanticr   r   Z0langchain_google_community.calendar.create_eventr	   Z4langchain_google_community.calendar.current_datetimer
   Z0langchain_google_community.calendar.delete_eventr   Z6langchain_google_community.calendar.get_calendars_infor   Z.langchain_google_community.calendar.move_eventr   Z1langchain_google_community.calendar.search_eventsr   Z0langchain_google_community.calendar.update_eventr   Z)langchain_google_community.calendar.utilsr   Zgoogleapiclient.discoveryr   ImportErrorZSCOPESr   r   r   r   r   <module>   s,    