diff --git a/src/electron-api.d.ts b/src/electron-api.d.ts new file mode 100644 index 0000000..3643216 --- /dev/null +++ b/src/electron-api.d.ts @@ -0,0 +1,48 @@ +interface DeviceEntry { + vendorId: number; + productId: number; + displayName: string; + manufacturer: string; + product: string; + serialNumber: string; +} + +interface CpuTempResult { + main: number; + cores: number[]; + max: number; + error?: string; +} + +interface RamResult { + total: number; + free: number; + used: number; + usedPercent: string; + error?: string; +} + +interface GpuController { + vendor: string; + model: string; + temperatureGpu: number | null; + memoryUsed: number | null; + memoryTotal: number | null; +} + +interface ElectronAPI { + systemCpuTemp: () => Promise; + systemRam: () => Promise; + systemGpu: () => Promise; + usbListDevices: () => Promise; + usbConnect: (vendorId: number, productId: number) => Promise<{ success: boolean } | { error: string }>; + prefsGet: (key?: string) => Promise; + prefsSet: (key: string, value: unknown) => Promise; + prefsDelete: (key: string) => Promise; + dialogOpenFile: (options?: unknown) => Promise<{ canceled: boolean; filePaths: string[] }>; + dialogSaveFile: (options?: unknown) => Promise<{ canceled: boolean; filePath: string }>; +} + +interface Window { + electronAPI: ElectronAPI; +}