import { FC, ReactNode, PropsWithChildren } from 'react'; import 'bloko/blocks/treeSelectorPopup/treeSelectorPopup.less'; export interface TreeSelectorPopupProps { /** Показывать ли TreeSelectorPopup */ visible?: boolean; /** Заголовок */ title?: ReactNode; /** Отображать ли строку поиска */ search?: boolean; /** Закрывать ли попап по кнопке подтверждения */ hideOnSubmitClick?: boolean; /** Переводы:
* `submit` - кнопка подтвержения
* `cancel` - кнопка отмены
* `searchPlaceholder` - плейсхолдер в строке поиска
* `notFound` - сообщение о том, что по поисковому запросу ничего не найдено */ trl: { submit: string; cancel: string; searchPlaceholder?: string; notFound?: string; }; /** Подсказка над TreeSelector */ hint?: ReactNode; /** Текст ошибки */ error?: string; /** Заблокирована ли кнопка подтверждения */ disabledSubmit?: boolean; /** Отображать ли иконку загрузки на кнопке подтверждения */ showLoadingOnSubmit?: boolean; /** Обработчик изменения набора выбранных ID. * В аргументах получает список выбранных элементов`{Array} selected`. */ onChange?: (selected: string[]) => void; /** Обработчик закрытия TreeSelectorPopup */ onClose: () => void; /** Кастомный обработчик нажатия кнопки подтверждения * В аргументах получает список выбранных элементов `{Array} selected`. */ onSubmit?: (selected: string[]) => void; /** Список выбранных id для контолируемого компонента */ selected?: string[]; /** Отображать ли крестик очистки строки поиска */ searchWithClear?: boolean; /** Очищать ли поле поиска после выбора элемента */ clearSearchOnChange?: boolean; /** Обработчик изменения строки contentFilterQuery * В аргументах получает список подходящих под запрос id и сам запрос*/ onChangeFilterQuery?: (ids: string[], query: string) => void; /** Блок между заголовком попапа и поисковым инпутом */ contentAfterTitle?: ReactNode; /** Дополнительный элемент в футере */ footerExtra?: ReactNode; /** DOM нода хоста в рамках которого нужно рендерить модальное окно, по дефолту рендер будет в body.*/ host?: HTMLElement; } declare const TreeSelectorPopup: FC; export default TreeSelectorPopup;