expo-router
Version:
Expo Router is a file-based router for React Native and web applications.
25 lines (24 loc) • 945 B
TypeScript
import type { NativeStackNavigationOptions } from '../../../react-navigation/native-stack';
/**
* Registry mapping route keys to composition component options.
*
* Structure: Record<routeKey, options[]>
*
* Each composition component (Title, BackButton, Header, Toolbar) registers
* its memoized options object. Array order reflects registration order,
* so later registrations override earlier ones during merge.
*
* @internal
*/
export type CompositionRegistry = Record<string, Partial<NativeStackNavigationOptions>[]>;
/** @internal */
export interface CompositionContextValue {
/**
* Register or update options for a composition component.
*/
set(routeKey: string, options: Partial<NativeStackNavigationOptions>): void;
/**
* Remove a composition component's options by reference (should be called on unmount).
*/
unset(routeKey: string, options: Partial<NativeStackNavigationOptions>): void;
}