import type { History , Location , LocationDescriptor , TransitionPromptHook , UnregisterCallback } from 'history' ; import type { OptionsTopBarTitle } from 'react-native-navigation' ; import type { ActivatedRoute } from '../types' ; export type ResolverListener = ( route : ActivatedRoute ) => void ; export type LoadingListener = ( loading : boolean ) => void ; export type RequiredTitle = string | ( OptionsTopBarTitle & { text : string ; } ) ; export interface FSRouterHistory extends History { open ( path , state ? ) : void ; open ( location ) : void ; push ( path , state ? ) : void ; push ( location ) : void ; replace ( path , state ? ) : void ; replace ( location ) : void ; pop ( ) : void ; goBack ( ) : void ; goForward ( ) : void ; go ( n ) : void ; observeLoading ( listener ) : UnregisterCallback ; registerResolver ( id , listener ) : UnregisterCallback ; updateTitle ( title , componentId ? ) : void ; } export type Blocker = string | boolean | TransitionPromptHook ; export type StackedLocation = Readonly < Location > & { readonly stack : number ; } ; export interface Stack { readonly id : string ; readonly children : Readonly < Location > [ ] ; }