expo-router
Version:
Expo Router is a file-based router for React Native and web applications.
42 lines (41 loc) • 1.42 kB
TypeScript
import { SharedRef } from 'expo';
import type { ColorValue, ImageSourcePropType } from 'react-native';
import type { SFSymbol } from 'sf-symbols-typescript';
import type { BasicTextStyle } from '../utils/font';
export interface RouterToolbarHostProps {
children?: React.ReactNode;
withImePadding?: boolean;
backgroundColor?: ColorValue;
}
export interface RouterToolbarItemProps {
children?: React.ReactNode;
identifier: string;
title?: string;
systemImageName?: SFSymbol;
xcassetName?: string;
image?: InstanceType<SharedRef<'image'>> | null;
imageRenderingMode?: 'template' | 'original';
type?: 'normal' | 'fixedSpacer' | 'fluidSpacer' | 'searchBar';
tintColor?: ColorValue;
hidesSharedBackground?: boolean;
sharesBackground?: boolean;
barButtonItemStyle?: 'plain' | 'prominent';
width?: number;
hidden?: boolean;
selected?: boolean;
possibleTitles?: string[];
badgeConfiguration?: {
value?: string;
backgroundColor?: ColorValue;
} & BasicTextStyle;
titleStyle?: BasicTextStyle;
accessibilityLabel?: string;
accessibilityHint?: string;
disabled?: boolean;
onSelected?: () => void;
/**
* Raw image source for Android toolbar rendering.
* On iOS this prop is ignored — icons are resolved via `systemImageName`, `xcassetName`, or `image`.
*/
source?: ImageSourcePropType;
}