|
| 1 | +import type { NavigatorScreenParams } from '@react-navigation/native'; |
| 2 | +import type { AssetViewParams } from '../../../Views/Asset/Asset.types'; |
| 3 | +import type { TokenDetailsRouteParams } from '../../../UI/TokenDetails/constants/constants'; |
| 4 | +import type { |
| 5 | + CreatePriceAlertRouteParams, |
| 6 | + PriceAlertRouteParams, |
| 7 | +} from '../../../UI/Assets/PriceAlerts/constants'; |
| 8 | +import type { RevealPrivateCredentialParams } from '../../../Views/RevealPrivateCredential/RevealPrivateCredential.types'; |
| 9 | +import type { NetworkDetailsViewParams } from '../../../Views/NetworksManagement/NetworkDetailsView/NetworkDetailsView.types'; |
| 10 | +import type { ContactFormParams } from '../../../Views/Settings/Contacts/ContactForm.types'; |
| 11 | +import type { NotificationSettingsSectionProps } from '../../../Views/Settings/NotificationsSettings/NotificationSettingsSection'; |
| 12 | +import type { RegionSelectorParams } from '../../../Views/Modals/Modals.types'; |
| 13 | +import type { |
| 14 | + ManualBackupStep1Params, |
| 15 | + ManualBackupStep2Params, |
| 16 | +} from '../../../Views/ManualBackupStep1/ManualBackupStep1.types'; |
| 17 | +import type { |
| 18 | + AccountBackupParams, |
| 19 | + ManualBackupStep3Params, |
| 20 | +} from '../../../Views/AccountBackup/AccountBackup.types'; |
| 21 | + |
| 22 | +/** |
| 23 | + * Param list for screens inside `AssetStackFlow` (token details + alerts). |
| 24 | + */ |
| 25 | +// ParamListBase requires `type`; `interface` cannot satisfy it. |
| 26 | +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions |
| 27 | +export type AssetStackParamList = { |
| 28 | + Asset: AssetViewParams | undefined; |
| 29 | + SecurityTrust: TokenDetailsRouteParams & { |
| 30 | + isPricePositive?: boolean; |
| 31 | + useAmbientColor?: boolean; |
| 32 | + }; |
| 33 | + CreatePriceAlert: CreatePriceAlertRouteParams; |
| 34 | + ManagePriceAlerts: PriceAlertRouteParams; |
| 35 | +}; |
| 36 | + |
| 37 | +/** |
| 38 | + * Param list for screens inside `WalletTabStackFlow`. |
| 39 | + */ |
| 40 | +// ParamListBase requires `type`; `interface` cannot satisfy it. |
| 41 | +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions |
| 42 | +export type WalletTabStackParamList = { |
| 43 | + WalletView: undefined; |
| 44 | + RevealPrivateCredential: RevealPrivateCredentialParams | undefined; |
| 45 | +}; |
| 46 | + |
| 47 | +/** |
| 48 | + * `WalletTabHome` is registered with component `WalletTabStackFlow`, but many |
| 49 | + * call sites still navigate with an intermediate `WalletTabStackFlow` screen. |
| 50 | + * Include both the real stack screens and that nested form. |
| 51 | + */ |
| 52 | +// ParamListBase requires `type`; `interface` cannot satisfy it. |
| 53 | +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions |
| 54 | +export type WalletTabHomeParamList = WalletTabStackParamList & { |
| 55 | + WalletTabStackFlow: |
| 56 | + | NavigatorScreenParams<WalletTabStackParamList> |
| 57 | + | undefined; |
| 58 | +}; |
| 59 | + |
| 60 | +/** |
| 61 | + * Param list for screens inside `SettingsFlow` (`SettingsView`). |
| 62 | + */ |
| 63 | +// ParamListBase requires `type`; `interface` cannot satisfy it. |
| 64 | +// eslint-disable-next-line @typescript-eslint/consistent-type-definitions |
| 65 | +export type SettingsStackParamList = { |
| 66 | + AccountsMenuView: undefined; |
| 67 | + Settings: undefined; |
| 68 | + GeneralSettings: undefined; |
| 69 | + AdvancedSettings: { scrollToBottom?: boolean } | undefined; |
| 70 | + NetworksManagement: undefined; |
| 71 | + NetworkDetails: NetworkDetailsViewParams | undefined; |
| 72 | + SDKSessionsManager: undefined; |
| 73 | + SecuritySettings: undefined; |
| 74 | + RampSettings: undefined; |
| 75 | + RampActivationKeyForm: undefined; |
| 76 | + RampHeadlessPlayground: undefined; |
| 77 | + AesCryptoTestForm: undefined; |
| 78 | + ExperimentalSettings: undefined; |
| 79 | + CompanySettings: undefined; |
| 80 | + DeveloperOptions: undefined; |
| 81 | + ContactsSettings: undefined; |
| 82 | + ContactForm: ContactFormParams | undefined; |
| 83 | + RevealPrivateCredentialView: RevealPrivateCredentialParams | undefined; |
| 84 | + WalletConnectSessionsView: undefined; |
| 85 | + ResetPassword: undefined; |
| 86 | + WalletRecovery: undefined; |
| 87 | + AccountBackupStep1B: AccountBackupParams | undefined; |
| 88 | + ManualBackupStep1: ManualBackupStep1Params | undefined; |
| 89 | + ManualBackupStep2: ManualBackupStep2Params | undefined; |
| 90 | + ManualBackupStep3: ManualBackupStep3Params; |
| 91 | + EnterPasswordSimple: undefined; |
| 92 | + NotificationsSettings: undefined; |
| 93 | + NotificationSettingsSection: NotificationSettingsSectionProps['route']['params']; |
| 94 | + BackupAndSyncSettings: undefined; |
| 95 | + SettingsRegionSelector: RegionSelectorParams | undefined; |
| 96 | + SnapsSettingsList: undefined; |
| 97 | +}; |
0 commit comments