///
import type { StyleProp, TextStyle, ViewStyle, TextProps, ImageStyle, FlatListProps } from 'react-native';
export type IDropdownRef = {
open: () => void;
close: () => void;
};
export interface DropdownProps {
ref?: React.RefObject | React.MutableRefObject | null | undefined;
testID?: string;
itemTestIDField?: string;
style?: StyleProp;
containerStyle?: StyleProp;
placeholderStyle?: StyleProp;
selectedTextStyle?: StyleProp;
selectedTextProps?: TextProps;
itemContainerStyle?: StyleProp;
itemTextStyle?: StyleProp;
inputSearchStyle?: StyleProp;
iconStyle?: StyleProp;
maxHeight?: number;
dropdownHeight?: number;
minHeight?: number;
fontFamily?: string;
iconColor?: string;
activeColor?: string;
data: T[];
value?: T | string | null | undefined;
placeholder?: string;
labelField: keyof T;
valueField: keyof T;
searchField?: keyof T;
search?: boolean;
searchPlaceholder?: string;
disable?: boolean;
autoScroll?: boolean;
showsVerticalScrollIndicator?: boolean;
dropdownPosition?: 'auto' | 'top' | 'bottom';
flatListProps?: Omit, 'renderItem' | 'data'>;
keyboardAvoiding?: boolean;
backgroundColor?: string;
confirmSelectItem?: boolean;
accessibilityLabel?: string;
itemAccessibilityLabelField?: string;
inverted?: boolean;
mode?: 'default' | 'modal' | 'auto';
closeModalWhenSelectedItem?: boolean;
excludeItems?: T[];
excludeSearchItems?: T[];
onChange: (item: T) => void;
renderLeftIcon?: (visible?: boolean) => JSX.Element | null | undefined;
renderRightIcon?: (visible?: boolean) => JSX.Element | null | undefined;
renderItem?: (item: T, selected?: boolean) => JSX.Element | null | undefined;
renderInputSearch?: (onSearch: (text: string) => void) => JSX.Element | null | undefined;
onFocus?: () => void;
onBlur?: () => void;
searchQuery?: (keyword: string, labelValue: string) => boolean;
onChangeText?: (search: string) => void;
onConfirmSelectItem?: (item: T) => void;
}
//# sourceMappingURL=model.d.ts.map