UNPKG

792 BPlain TextView Raw
1import Constants from 'expo-constants';
2
3export enum UpdateEventType {
4 UPDATE_AVAILABLE = 'updateAvailable',
5 NO_UPDATE_AVAILABLE = 'noUpdateAvailable',
6 ERROR = 'error',
7}
8
9// TODO(eric): move source of truth for manifest type to this module
10export type Manifest = typeof Constants.manifest;
11
12export type UpdateCheckResult = { isAvailable: false } | { isAvailable: true; manifest: Manifest };
13
14export type UpdateFetchResult = { isNew: false } | { isNew: true; manifest: Manifest };
15
16export type Listener<E> = (event: E) => void;
17
18export type UpdateEvent =
19 | { type: UpdateEventType.NO_UPDATE_AVAILABLE }
20 | { type: UpdateEventType.UPDATE_AVAILABLE; manifest: Manifest }
21 | { type: UpdateEventType.ERROR; message: string };
22
23export type LocalAssets = { [remoteUrl: string]: string };