summaryrefslogtreecommitdiff
path: root/lsfg_vk/types.py
diff options
context:
space:
mode:
authorxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-13 13:24:30 -0400
committerxXJSONDeruloXx <danielhimebauch@gmail.com>2025-07-13 13:24:30 -0400
commit83a528be3a23bd43beb6a002c023a3673cad03ae (patch)
tree48864efe2d74271e2e3688cb31ecf7742f1a8844 /lsfg_vk/types.py
parent7866a9a77d2a0922883637576f6cdac122c56d42 (diff)
downloaddecky-lsfg-vk-83a528be3a23bd43beb6a002c023a3673cad03ae.tar.gz
decky-lsfg-vk-83a528be3a23bd43beb6a002c023a3673cad03ae.zip
update readme w manual install instructions
Diffstat (limited to 'lsfg_vk/types.py')
-rw-r--r--lsfg_vk/types.py71
1 files changed, 71 insertions, 0 deletions
diff --git a/lsfg_vk/types.py b/lsfg_vk/types.py
new file mode 100644
index 0000000..f0ec892
--- /dev/null
+++ b/lsfg_vk/types.py
@@ -0,0 +1,71 @@
+"""
+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]