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;
}
