UNPKG

@douyinfe/semi-ui

Version:

A modern, comprehensive, flexible design system and UI library. Connect DesignOps & DevOps. Quickly build beautiful React apps. Maintained by Douyin-fe team.

68 lines (67 loc) 3.49 kB
import * as React from 'react'; import BaseComponent from '../_base/baseComponent'; import PropTypes from 'prop-types'; import type { ChatProps, ChatState } from './interface'; import '@douyinfe/semi-foundation/lib/cjs/chat/chat.css'; import ChatFoundation, { ChatAdapter } from '@douyinfe/semi-foundation/lib/cjs/chat/foundation'; import type { FileItem } from '../upload'; import { Upload } from '../index'; declare class Chat extends BaseComponent<ChatProps, ChatState> { static __SemiComponentName__: string; dragStatus: boolean; containerRef: React.RefObject<HTMLDivElement>; animation: any; wheelEventHandler: any; foundation: ChatFoundation; uploadRef: React.RefObject<Upload>; dropAreaRef: React.RefObject<HTMLDivElement>; scrollTargetRef: React.RefObject<HTMLElement>; static propTypes: { className: PropTypes.Requireable<string>; style: PropTypes.Requireable<object>; roleConfig: PropTypes.Requireable<object>; chats: PropTypes.Requireable<any[]>; hints: PropTypes.Requireable<any[]>; renderHintBox: PropTypes.Requireable<(...args: any[]) => any>; onChatsChange: PropTypes.Requireable<(...args: any[]) => any>; align: PropTypes.Requireable<string>; chatBoxRenderConfig: PropTypes.Requireable<object>; customMarkDownComponents: PropTypes.Requireable<object>; onClear: PropTypes.Requireable<(...args: any[]) => any>; onMessageDelete: PropTypes.Requireable<(...args: any[]) => any>; onMessageReset: PropTypes.Requireable<(...args: any[]) => any>; onMessageCopy: PropTypes.Requireable<(...args: any[]) => any>; onMessageGoodFeedback: PropTypes.Requireable<(...args: any[]) => any>; onMessageBadFeedback: PropTypes.Requireable<(...args: any[]) => any>; inputContentConvert: PropTypes.Requireable<(...args: any[]) => any>; onMessageSend: PropTypes.Requireable<(...args: any[]) => any>; InputBoxStyle: PropTypes.Requireable<object>; inputBoxCls: PropTypes.Requireable<string>; renderFullInputBox: PropTypes.Requireable<(...args: any[]) => any>; placeholder: PropTypes.Requireable<string>; topSlot: PropTypes.Requireable<PropTypes.ReactNodeLike> | PropTypes.Requireable<any[]>; bottomSlot: PropTypes.Requireable<PropTypes.ReactNodeLike> | PropTypes.Requireable<any[]>; showStopGenerate: PropTypes.Requireable<boolean>; showClearContext: PropTypes.Requireable<boolean>; hintStyle: PropTypes.Requireable<object>; hintCls: PropTypes.Requireable<string>; uploadProps: PropTypes.Requireable<object>; uploadTipProps: PropTypes.Requireable<object>; mode: PropTypes.Requireable<string>; markdownRenderProps: PropTypes.Requireable<object>; }; static defaultProps: any; constructor(props: ChatProps); get adapter(): ChatAdapter; static getDerivedStateFromProps(nextProps: ChatProps, prevState: ChatState): any; componentDidMount(): void; componentDidUpdate(prevProps: Readonly<ChatProps>, prevState: Readonly<ChatState>, snapshot?: any): void; componentWillUnmount(): void; resetMessage: () => void; clearContext: () => void; scrollToBottom: (animation: boolean) => void; sendMessage: (content: string, attachment: FileItem[]) => void; containerScroll: (e: React.UIEvent<HTMLDivElement>) => void; render(): React.JSX.Element; } export default Chat;