type Statistics = { cpuUsage: number; ramUsage: number; storageUsage: number; }; type StaticData = { totalStorage: number; cpuModel: string; totalMemoryGB: number; }; type View = 'CPU' | 'RAM' | 'STORAGE'; type FrameWindowAction = 'CLOSE' | 'MAXIMIZE' | 'MINIMIZE'; type EventPayloadMapping = { statistics: Statistics; getStaticData: StaticData; changeView: View; sendFrameAction: FrameWindowAction; }; type UnsubscribeFunction = () => void; interface Window { electron: { login: (credentials: { email: string; password: string }) => Promise; logout: () => Promise; getToken: (tokenKey: "ACCESS_TOKEN" | "REFRESH_TOKEN") => Promise; uploadScreenshot: () => {}; getActiveAppDetails: () => {}; toggleCloseBtn: (shouldEnable: boolean) => {}, resizeWindow: (width: number, height: number) => {}, getRunningApps: () => {}, captureAppScreenShot: (appTitle: string) => Promise, onWindowUpdate: (callback: (data: any) => void) => void; }; }