UNPKG

@uimkit/uikit-react

Version:

<img style="width:64px" src="https://mgmt.uimkit.chat/media/img/avatar.png"/>

40 lines (37 loc) 1.86 kB
import React__default, { PropsWithChildren } from 'react'; import { SuggestionCommand, SuggestionUser } from '../UIChatAutoComplete/UIChatAutoComplete.js'; import { UICommandItemProps } from '../UICommandItem/UICommandItem.js'; import { EmoticonItemProps } from '../EmoticonItem/EmoticonItem.js'; import { UIUserItemProps } from '../UIUserItem/UIUserItem.js'; import { UnknownType, CustomTrigger } from '../../types/index.js'; import { Emoji } from '../../context/EmojiContext.js'; type AutocompleteMinimalData = { id?: string; name?: string; } & ({ id: string; } | { name: string; }); type CommandTriggerSetting = TriggerSetting<UICommandItemProps, SuggestionCommand>; type EmojiTriggerSetting = TriggerSetting<EmoticonItemProps, Emoji & any>; type UserTriggerSetting = TriggerSetting<UIUserItemProps, SuggestionUser>; type TriggerSetting<T extends UnknownType = UnknownType, U = UnknownType> = { component: string | React__default.ComponentType<T>; dataProvider: (query: string, text: string, onReady: (data: (U & AutocompleteMinimalData)[], token: string) => void) => U[] | Promise<void> | void; output: (entity: U) => { caretPosition: 'start' | 'end' | 'next' | number; text: string; key?: string; } | string | null; callback?: (item: U) => void; }; type TriggerSettings<V extends CustomTrigger = CustomTrigger> = { [key in keyof V]: TriggerSetting<V[key]['componentProps'], V[key]['data']>; } | { '/': CommandTriggerSetting; ':': EmojiTriggerSetting; }; declare const DefaultTriggerProvider: ({ children, }: PropsWithChildren<Record<string, unknown>>) => JSX.Element; export { AutocompleteMinimalData, CommandTriggerSetting, DefaultTriggerProvider, EmojiTriggerSetting, TriggerSetting, TriggerSettings, UserTriggerSetting }; //# sourceMappingURL=DefaultTriggerProvider.d.ts.map