/** * This file will be imported by desktop, so we make sure imports are carrying * as little extra code as possible with them. */ import { Environment } from '@standardnotes/snjs'; export interface ElectronDesktopCallbacks { desktop_updateAvailable(): void; desktop_windowGainedFocus(): void; desktop_windowLostFocus(): void; desktop_onComponentInstallationComplete( componentData: any, error: any ): Promise; desktop_requestBackupFile(): Promise; desktop_didBeginBackup(): void; desktop_didFinishBackup(success: boolean): void; } /** Platform-specific (i-e Electron/browser) behavior is handled by a Bridge object. */ export interface Bridge { readonly appVersion: string; environment: Environment; getKeychainValue(): Promise; setKeychainValue(value: unknown): Promise; clearKeychainValue(): Promise; localBackupsCount(): Promise; viewlocalBackups(): void; deleteLocalBackups(): Promise; extensionsServerHost?: string; syncComponents(payloads: unknown[]): void; onMajorDataChange(): void; onInitialDataLoad(): void; onSignOut(): void; onSearch(text?: string): void; downloadBackup(): void | Promise; }