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