from typing import Literal
from pydantic import BaseModel


class ProjectConfig(BaseModel):
    """Minimal configuration for a FastAPI project.

    This config is generated by the LLM from
    a natural language request.
    """

    project_name: str
    db: Literal["postgres", "sqlite"] = "postgres"
    auth_enabled: bool = True
    docker: bool = True
    ci: Literal["gitlab", "github", "none"] = "github"
