Files
social-app/backend/src/schemas/domain/memory.py
T

44 lines
920 B
Python

from __future__ import annotations
from datetime import datetime
from typing import ClassVar, Literal
from uuid import UUID
from pydantic import BaseModel, ConfigDict
from schemas.domain.memory_content import (
TeamMember,
UserMemoryContent,
UserPreferences,
WorkHabit,
WorkProfileContent,
WorkProject,
)
from schemas.enums import MemoryStatus, MemoryType
class MemoryModel(BaseModel):
model_config: ClassVar[ConfigDict] = ConfigDict(
extra="forbid", from_attributes=True
)
id: UUID
owner_id: UUID
memory_type: Literal["user", "work"]
content: UserMemoryContent | WorkProfileContent
status: MemoryStatus
created_at: datetime
updated_at: datetime
__all__ = [
"MemoryModel",
"MemoryStatus",
"MemoryType",
"TeamMember",
"UserMemoryContent",
"UserPreferences",
"WorkHabit",
"WorkProfileContent",
"WorkProject",
]