import React from 'react'; import { SvgProps } from 'react-native-svg'; import type { AccessibilityPropsType } from '../../../utils/accessibility-helper'; import type ColorData from '../../styles/color/interface'; export declare type SelectSubItemActionType = 'navigate' | 'select' | 'custom' | 'none'; export interface SelectSubItemOption { key?: string | number; title: string; value?: string; actionType?: SelectSubItemActionType; customRender?: React.ReactElement; badge?: boolean; disabled?: boolean; onPress?: () => void; } export interface SelectItemOption { value: string | number; title: string; subtitle?: string; leadingIcon?: React.ReactElement; disabled?: boolean; subItems?: SelectSubItemOption[]; } export interface SelectListProps extends AccessibilityPropsType { options: SelectItemOption[]; value?: string | number; onChange?: (value: string | number) => void; onSelect?: (item: SelectItemOption) => void; selectedAlign?: 'left' | 'right'; isGroup?: boolean; } interface SelectItemRightProps { item: SelectItemOption; selected: boolean; onPress: () => void; colorToken: ColorData; } interface SelectItemLeftProps { item: SelectItemOption; selected: boolean; onPress: () => void; colorToken: ColorData; } interface SelectSubItemProps { subItem: SelectSubItemOption; colorToken: ColorData; disabled?: boolean; } export type { SelectItemRightProps, SelectItemLeftProps, SelectSubItemProps };