import uuid from datetime import datetime from pydantic import BaseModel, ConfigDict class NameCreate(BaseModel): # Open vocabulary: birth/maiden, married, alias, religious, nickname, ... name_type: str = "birth" given: str | None = None surname: str | None = None prefix: str | None = None suffix: str | None = None nickname: str | None = None is_primary: bool = False class NameUpdate(BaseModel): name_type: str | None = None given: str | None = None surname: str | None = None prefix: str | None = None suffix: str | None = None nickname: str | None = None is_primary: bool | None = None class NameRead(BaseModel): model_config = ConfigDict(from_attributes=True) id: uuid.UUID tree_id: uuid.UUID person_id: uuid.UUID name_type: str given: str | None surname: str | None prefix: str | None suffix: str | None nickname: str | None is_primary: bool sort_order: int created_at: datetime