/** * @format * @flow strict-local */ 'use strict'; import type { TurboModule } from 'react-native/Libraries/TurboModule/RCTExport'; import { TurboModuleRegistry } from 'react-native'; export interface Spec extends TurboModule { getConstants: () => { downloadRootDir: string, packageVersion: string, currentVersion: string, isFirstTime: boolean, rolledBackVersion: string, buildTime: string, blockUpdate: Object, uuid: string, isUsingBundleUrl: boolean, }; setLocalHashInfo(hash: string, info: string): Promise; getLocalHashInfo(hash: string): Promise; setUuid(uuid: string): Promise; setBlockUpdate(options: { reason: string, until: number }): Promise; reloadUpdate(options: { hash: string }): Promise; setNeedUpdate(options: { hash: string }): Promise; markSuccess(): Promise; downloadPatchFromPpk(options: { updateUrl: string, hash: string, originHash: string, }): Promise; downloadPatchFromPackage(options: { updateUrl: string, hash: string, }): Promise; downloadFullUpdate(options: { updateUrl: string, hash: string, }): Promise; downloadAndInstallApk(options: { url: string, target: string, hash: string, }): Promise; addListener(eventName: string): void; removeListeners(count: number): void; } export default (TurboModuleRegistry.get('Pushy'): ?Spec);