import type { ReactNode } from 'react'; import type { StyleProp, ViewStyle, TextStyle } from 'react-native'; export type OrderBarLayout = 'fixed' | 'scroll'; export interface OrderBarItem { id: string | number; title: string; icon?: ReactNode; iconName?: string; iconFamily?: 'Ionicons' | 'FontAwesome' | 'MaterialIcons' | 'Entypo' | 'AntDesign'; iconColor?: string; iconSize?: number; badge?: string | number; badgeColor?: string; disabled?: boolean; onPress?: () => void; } export interface DbOrderBarProps { data: OrderBarItem[]; layout?: OrderBarLayout; title?: string; titleStyle?: StyleProp; showTitle?: boolean; rightText?: string; rightIcon?: ReactNode; rightIconName?: string; rightIconFamily?: 'Ionicons' | 'FontAwesome' | 'MaterialIcons' | 'Entypo' | 'AntDesign'; onRightPress?: () => void; style?: StyleProp; /** 标题区域样式 */ headerStyle?: StyleProp; itemStyle?: StyleProp; itemTextStyle?: StyleProp; gap?: number; padding?: number; showDivider?: boolean; backgroundColor?: string; onItemPress?: (item: OrderBarItem) => void; }