25 lines
665 B
Python
25 lines
665 B
Python
from pydantic import BaseModel
|
|
from typing import Any, Optional
|
|
from datetime import datetime
|
|
|
|
class SettingCreate(BaseModel):
|
|
setting_key: str
|
|
setting_value: Any # Decoded JSON (can be dict, list, string, int, float, bool)
|
|
description: Optional[str] = None
|
|
is_public: Optional[bool] = False
|
|
|
|
class SettingUpdate(BaseModel):
|
|
setting_value: Any
|
|
description: Optional[str] = None
|
|
is_public: Optional[bool] = None
|
|
|
|
class SettingResponse(BaseModel):
|
|
setting_id: str
|
|
setting_key: str
|
|
setting_value: Any
|
|
description: Optional[str]
|
|
is_public: bool
|
|
updated_at: datetime
|
|
|
|
class Config:
|
|
from_attributes = True
|