/** * 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 }