from pydantic import BaseModel, EmailStr from datetime import datetime import uuid from typing import Optional class RegisterRequest(BaseModel): email: EmailStr password: str class LoginRequest(BaseModel): email: EmailStr password: str class NoteRequest(BaseModel): text: str class QueryRequest(BaseModel): query: str class DeleteNoteRequest(BaseModel): note_id: str class EditNoteRequest(BaseModel): note_id: str new_text: str class NoteMetadata: def __init__(self, text: str): self.id = str(uuid.uuid4()) self.text = text self.timestamp = datetime.now().isoformat() def dict(self): return { "id": self.id, "text": self.text, "timestamp": self.timestamp }