from typing import Optional from uuid import UUID from pydantic import BaseModel class GeoServerConfigResponse(BaseModel): gs_base_url: Optional[str] = None gs_admin_user: Optional[str] = None gs_datastore_name: str default_extent: Optional[dict] = None srid: int class ProjectMetaResponse(BaseModel): project_id: UUID name: str code: str description: Optional[str] = None gs_workspace: str map_extent: Optional[dict] = None status: str project_role: str geoserver: Optional[GeoServerConfigResponse] = None class ProjectSummaryResponse(BaseModel): project_id: UUID name: str code: str description: Optional[str] = None gs_workspace: str status: str project_role: str