"""Configuration schemas""" from pydantic import BaseModel from datetime import datetime from typing import Optional, List, Dict, Any from app.models.configuration import ConfigStatus class ValidationResult(BaseModel): """Validation result""" is_valid: bool errors: List[str] warnings: List[str] class ConfigurationBase(BaseModel): """Base configuration schema""" name: str config_data: Optional[Dict[str, Any]] = None status: ConfigStatus = ConfigStatus.DRAFT class ConfigurationCreate(ConfigurationBase): """Configuration creation schema""" project_id: int device_id: int class ConfigurationUpdate(ConfigurationBase): """Configuration update schema""" pass class ConfigurationResponse(ConfigurationBase): """Configuration response schema""" id: int project_id: int device_id: int generated_cli: Optional[str] = None validation_errors: Optional[List[str]] = None validation_warnings: Optional[List[str]] = None created_at: datetime updated_at: datetime class Config: from_attributes = True