UNPKG

@sendbird/uikit-react

Version:

Sendbird UIKit for React: A feature-rich and customizable chat UI kit with messaging, channel management, and user authentication.

35 lines (34 loc) 1.49 kB
import React, { ReactNode, MutableRefObject, MouseEvent } from 'react'; import { SendableMessageType } from '../../utils'; interface CommonMessageMenuContextProps { message: SendableMessageType; hideMenu: () => void; setQuoteMessage: (message: SendableMessageType) => void; onReplyInThread: (props: { message: SendableMessageType; }) => void; onMoveToParentMessage: () => void; showEdit: (bool: boolean) => void; showRemove: (bool: boolean) => void; deleteMessage: (message: SendableMessageType) => void; resendMessage: (message: SendableMessageType) => void; markAsUnread?: (message: SendableMessageType, source?: 'manual' | 'internal') => void; isOnline: boolean; disableDeleteMessage: boolean | null; triggerRef: MutableRefObject<null>; containerRef: MutableRefObject<null>; } export interface MessageMenuContextProps extends CommonMessageMenuContextProps { showMenu: () => void; toggleMenu: () => void; } export interface MobileMessageMenuContextProps extends CommonMessageMenuContextProps { onDownloadClick?: (e: MouseEvent) => Promise<void>; } interface MessageMenuProviderProps { children: ReactNode; value: MessageMenuContextProps | MobileMessageMenuContextProps; } export declare const MessageMenuProvider: ({ children, value }: MessageMenuProviderProps) => React.JSX.Element; export declare const useMessageMenuContext: () => MessageMenuContextProps | MobileMessageMenuContextProps; export {};