import uuid
from datetime import datetime

from pydantic import BaseModel, ConfigDict


class ProjectCreate(BaseModel):
    name: str
    description: str | None = None
    domain: str = "general"
    taxonomy: list[str] | None = None


class ProjectOut(BaseModel):
    model_config = ConfigDict(from_attributes=True)

    id: uuid.UUID
    org_id: uuid.UUID
    owner_id: uuid.UUID
    name: str
    slug: str
    description: str | None
    domain: str
    taxonomy: list[str]
    created_at: datetime
    updated_at: datetime
