30 lines
602 B
Python
30 lines
602 B
Python
from typing import Any
|
|
from uuid import UUID
|
|
|
|
from app.schemas.base import OrmBase
|
|
|
|
|
|
class ToolDefinitionBase(OrmBase):
|
|
key: str
|
|
name: str
|
|
version: str = "1.0.0"
|
|
description: str | None = None
|
|
image: str
|
|
manifest_data: dict[str, Any] | None = None
|
|
|
|
|
|
class ToolDefinitionCreate(ToolDefinitionBase):
|
|
pass
|
|
|
|
|
|
class ToolDefinitionRead(ToolDefinitionBase):
|
|
id: UUID
|
|
|
|
|
|
class ToolDefinitionUpdate(OrmBase):
|
|
name: str | None = None
|
|
version: str | None = None
|
|
description: str | None = None
|
|
image: str | None = None
|
|
manifest_data: dict[str, Any] | None = None
|