import { RouteProp } from '@react-navigation/native'; import { NativeStackNavigationProp } from '@react-navigation/native-stack'; import { IMessage } from './store/messages/types'; import { IBubble } from './store/bubbles/types'; import { IContact } from './store/contacts/types'; import { ICallLog } from './store/callLogs/types'; import { ImageSourcePropType, ViewStyle } from 'react-native'; import { IWebRtcCallActionProps } from './components/callDialog/CallDialogContainer'; // types.ts export type RootStackParamList = { Login: undefined; ForgotPassword: undefined; EditBubble: {bubble: IBubble}; ForwardedView: { message: IMessage, customView?: React.ReactNode }; AddParticipants: {bubbleId: string} TelephonySettings: undefined; ContactInformation: { contact:IContact, makeCallButtonProps ?: { imageSource:ImageSourcePropType, webrtcActions:IWebRtcCallActionProps[], style?: ViewStyle }; } CallHistory: { callLog: ICallLog, dialogCallComponent?:React.ReactNode; } Telephony: undefined; // Other screens in 'react-native-rainbow-module' library... }; export type ForgotPasswordScreenNavigationProp = NativeStackNavigationProp; export type LoginScreenNavigationProp = NativeStackNavigationProp; export type EditBubbleRouteProp = RouteProp; export type EditBubbleNavigationProp = NativeStackNavigationProp; export type ForwardedViewRouteProp = RouteProp; export type ForwardedViewNavigationProp = NativeStackNavigationProp; export type AddParticipantsRouteProp = RouteProp; export type AddParticipantsNavigationProp = NativeStackNavigationProp; export type ContactInformationRouteProp = RouteProp; export type ContactInformationNavigationProp = NativeStackNavigationProp; export type CallHistoryRouteProp = RouteProp; export type CallHistoryNavigationProp = NativeStackNavigationProp;