48 lines
959 B
TypeScript
48 lines
959 B
TypeScript
import { DocumentPickerResponse } from 'react-native-document-picker';
|
|
|
|
enum ROUTE {
|
|
MAIN = 'Main',
|
|
MEMES = 'Memes',
|
|
TAGS = 'Tags',
|
|
SETTINGS = 'Settings',
|
|
MEME_VIEW = 'Meme View',
|
|
ADD_MEME = 'Add Meme',
|
|
EDIT_MEME = 'Edit Meme',
|
|
ADD_TAG = 'Add Tag',
|
|
EDIT_TAG = 'Edit Tag',
|
|
}
|
|
|
|
interface MemeViewRouteParams {
|
|
ids: string[];
|
|
index: number;
|
|
}
|
|
|
|
interface AddMemeRouteParams {
|
|
file: DocumentPickerResponse;
|
|
}
|
|
|
|
interface EditMemeRouteParams {
|
|
id: string;
|
|
}
|
|
|
|
interface EditTagRouteParams {
|
|
id: string;
|
|
}
|
|
|
|
interface RootStackParamList {
|
|
[key: string]:
|
|
| undefined
|
|
| MemeViewRouteParams
|
|
| AddMemeRouteParams
|
|
| EditMemeRouteParams
|
|
| EditTagRouteParams;
|
|
[ROUTE.MAIN]: undefined;
|
|
[ROUTE.MEME_VIEW]: MemeViewRouteParams;
|
|
[ROUTE.ADD_MEME]: AddMemeRouteParams;
|
|
[ROUTE.EDIT_MEME]: EditMemeRouteParams;
|
|
[ROUTE.ADD_TAG]: undefined;
|
|
[ROUTE.EDIT_TAG]: EditTagRouteParams;
|
|
}
|
|
|
|
export { ROUTE, type RootStackParamList };
|