""" Type definitions for the lsfg-vk plugin responses. """ from typing import TypedDict, Optional, List class BaseResponse(TypedDict): """Base response structure""" success: bool class ErrorResponse(BaseResponse): """Response structure for errors""" error: str class MessageResponse(BaseResponse): """Response structure with message""" message: str class InstallationResponse(BaseResponse): """Response for installation operations""" message: str error: Optional[str] class UninstallationResponse(BaseResponse): """Response for uninstallation operations""" message: str removed_files: Optional[List[str]] error: Optional[str] class InstallationCheckResponse(TypedDict): """Response for installation check""" installed: bool lib_exists: bool json_exists: bool script_exists: bool lib_path: str json_path: str script_path: str error: Optional[str] class DllDetectionResponse(TypedDict): """Response for DLL detection""" detected: bool path: Optional[str] source: Optional[str] message: Optional[str] error: Optional[str] class ConfigurationData(TypedDict): """Configuration data structure""" enable_lsfg: bool multiplier: int flow_scale: float hdr: bool perf_mode: bool immediate_mode: bool class ConfigurationResponse(BaseResponse): """Response for configuration operations""" config: Optional[ConfigurationData] message: Optional[str] error: Optional[str]