o
    "ÆiQ  ã                   @   st   d Z ddlmZ ddlmZmZmZ ddlmZ G dd„ deƒZG dd„ deƒZ	G d	d
„ d
eƒZ
G dd„ deƒZdS )z
Tool schemas
é    )Ú	BaseModel)ÚOptionalÚDictÚAny)Údatetimec                   @   sb   e Zd ZU dZeed< dZee ed< dZee ed< dZ	ee
eef  ed< dZee ed< dS )ÚToolBasezBase tool schemaÚnameNÚdescriptionÚcategoryÚ
parametersÚcode)Ú__name__Ú
__module__Ú__qualname__Ú__doc__ÚstrÚ__annotations__r	   r   r
   r   r   r   r   © r   r   úB/lsinfo/ai/hellotax_ai/training_center/backend/app/schemas/tool.pyr   	   s   
 r   c                   @   ó   e Zd ZdZdS )Ú
ToolCreatezSchema for creating a toolN)r   r   r   r   r   r   r   r   r      s    r   c                   @   sj   e Zd ZU dZdZee ed< dZee ed< dZ	ee ed< dZ
eeeef  ed< dZee ed< dS )Ú
ToolUpdatezSchema for updating a toolNr   r	   r
   r   r   )r   r   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r   r      s   
 r   c                   @   s8   e Zd ZU dZeed< eed< eed< G dd„ dƒZdS )ÚToolResponsezSchema for tool responseÚidÚ
created_atÚ
updated_atc                   @   r   )zToolResponse.ConfigTN)r   r   r   Úfrom_attributesr   r   r   r   ÚConfig&   s    r   N)r   r   r   r   Úintr   r   r   r   r   r   r   r       s   
 r   N)r   Úpydanticr   Útypingr   r   r   r   r   r   r   r   r   r   r   r   Ú<module>   s    		