import type { CompositionContextValue, CompositionRegistry } from './types'; import type { NativeStackNavigationOptions } from '../../../react-navigation/native-stack'; /** @internal */ export declare const CompositionContext: import("react").Context; type RegistryAction = { type: 'set'; routeKey: string; options: Partial; } | { type: 'unset'; routeKey: string; options: Partial; }; /** @internal */ export declare function registryReducer(state: CompositionRegistry, action: RegistryAction): CompositionRegistry; /** * Provides the composition registry to descendant composition components. * * Uses useReducer with immutable object updates for React Compiler compatibility. * Each set/unset call produces a new object reference, which the compiler can * track as a reactive dependency. */ export declare function useCompositionRegistry(): { registry: CompositionRegistry; contextValue: { set: (routeKey: string, options: Partial) => void; unset: (routeKey: string, options: Partial) => void; }; }; /** * Hook used by composition components to register their options in the composition registry. * * Registers options on mount/update via useSafeLayoutEffect, and unregisters on unmount. * Callers should memoize the options object to avoid unnecessary re-registrations. */ export declare function useCompositionOption(options: Partial): void; export {}; //# sourceMappingURL=CompositionOptionsContext.d.ts.map