import { default as React } from 'react'; import { Control } from 'react-hook-form'; interface IOption { id: string | number; value: string | number; label: string | React.ReactNode; disabled?: boolean; isGroup?: boolean; options?: IOption[]; searchLabel?: string; } interface CustomFetchApiParams { search?: string; filters?: any; limit: number; skip: number; select?: string; order?: string; } interface CustomFetchApiResponse { data: IOption[]; pagination?: { totalCount: number; }; } interface IDynamicSearchSelectProps { name: string; placeholder: string; label: string; size?: 'small' | 'medium'; options: IOption[]; formControl: Control; defaultValue?: string | string[]; fieldArrayName: string; id?: string; required?: boolean; is_multiselect?: boolean; position?: number; formType?: string; typeOfField?: string; disabled?: boolean; onChipRemove?: (value: string) => void; enable_footer?: boolean; footer_action?: string; onFooterClick?: () => void; is_loading?: boolean; selectedLabel?: string; isInternal?: boolean; disabledIds?: (string | number)[]; getSelectedData?: (data: IOption | IOption[] | null, name: string) => void; attributes?: string[]; handleChange?: (value: string | string[]) => void; hasParent?: boolean; sortOrder?: string; apiType?: string; handleOptions?: (value: any) => void; filterKey?: string; customeFilter?: Record; refresh?: boolean; addType?: string; showCancelButton?: boolean; /** Custom API function to fetch options from parent component */ customFetchApi?: (params: CustomFetchApiParams) => Promise; isMergeOptions?: boolean; showItemTooltip?: boolean; modalComponentProps?: any; } declare const DynamicSearchSelect: React.FC; export default DynamicSearchSelect;