55 lines
1.5 KiB
TypeScript
55 lines
1.5 KiB
TypeScript
// navigation/types.ts
|
|
|
|
import { StackScreenProps } from '@react-navigation/stack';
|
|
|
|
// Type for the parameters passed to each screen in the Bottom Tab Navigator
|
|
export type RootTabParamList = {
|
|
Home: undefined;
|
|
Profile: undefined;
|
|
Group: undefined;
|
|
Management: { actionTab?: "My Groups" | "Joined Groups" | "Requests" | "Your Requests" };
|
|
};
|
|
|
|
// Type for the parameters passed to each screen in the main Stack Navigator
|
|
|
|
export type RootStackParamList = {
|
|
Splash: undefined;
|
|
Login: undefined;
|
|
OtpVarify: { mobile: string };
|
|
Home: undefined;
|
|
HomeTabs: undefined;
|
|
OrganizerRegister: undefined;
|
|
Profile: undefined;
|
|
GroupCreation: undefined;
|
|
GroupReview: undefined;
|
|
EditGroup: { groupId: string | number };
|
|
GroupDetails: { item:object };
|
|
BecomeOrg: undefined;
|
|
YourContacts: undefined;
|
|
Transaction: undefined;
|
|
EditBankDetails: { currentBankName: string | null; currentAccountNumber: string | null; currentBranchCode: string | null };
|
|
ManageJoinedGroup: { groupId: string | number };
|
|
Invite: { groupId: string | number; code: string | number };
|
|
ManagementTabs:any
|
|
PaymentMode: {
|
|
groupId?: string | number;
|
|
groupIds?: Array<string | number>;
|
|
amount?: number;
|
|
routeFrom?: string;
|
|
routeData?: any;
|
|
payableData?: any;
|
|
};
|
|
PaymentGatewayWebView: {
|
|
paymentUrl: string;
|
|
paymentData?: any;
|
|
};
|
|
NotificationRedirection: { data: any };
|
|
};
|
|
|
|
|
|
// Helper type for screens within the main stack navigator
|
|
export type AppStackScreenProps<T extends keyof RootStackParamList> = StackScreenProps<
|
|
RootStackParamList,
|
|
T
|
|
>;
|