# app/schemas/group.py from pydantic import BaseModel, ConfigDict from datetime import datetime from typing import Optional, List from .user import UserPublic # Import UserPublic to represent members # Properties to receive via API on creation class GroupCreate(BaseModel): name: str # Properties to return to client class GroupPublic(BaseModel): id: int name: str created_by_id: int created_at: datetime members: Optional[List[UserPublic]] = None # Include members only in detailed view model_config = ConfigDict(from_attributes=True) # Properties stored in DB (if needed, often GroupPublic is sufficient) # class GroupInDB(GroupPublic): # pass