curb-virtualized-chat
Version:
A virtualized chat component for React applications.
25 lines (24 loc) • 1.48 kB
TypeScript
/// <reference types="react" />
import { AccountData, CurbMessage } from './types/curbTypes';
interface MessageRendererProps {
accountId: string;
isThread: boolean;
handleReaction: (message: CurbMessage, reaction: string) => void;
setThread?: (message: CurbMessage) => void;
getIconFromCache: (accountId: string) => Promise<string | null>;
toggleEmojiSelector: (message: CurbMessage) => void;
openMobileReactions: string;
setOpenMobileReactions: (messageId: string) => void;
editable: (message: CurbMessage) => boolean;
deleteable: (message: CurbMessage) => boolean;
onEditModeRequested: (message: CurbMessage, isThread: boolean) => void;
onEditModeCancelled: (message: CurbMessage) => void;
onMessageUpdated: (message: CurbMessage) => void;
onDeleteMessageRequested: (message: CurbMessage) => void;
fetchAccounts: (prefix: string) => void;
autocompleteAccounts: AccountData[];
authToken: string | undefined;
privateIpfsEndpoint: string;
}
declare const messageRender: ({ accountId, isThread, handleReaction, setThread, getIconFromCache, openMobileReactions, setOpenMobileReactions, toggleEmojiSelector, editable, onEditModeRequested, onEditModeCancelled, onMessageUpdated, deleteable, onDeleteMessageRequested, fetchAccounts, autocompleteAccounts, authToken, privateIpfsEndpoint, }: MessageRendererProps) => (message: CurbMessage, prevMessage?: CurbMessage) => JSX.Element;
export default messageRender;