import React from 'react';
import { MessageItemType, SendProps, SendState } from '../interfaces';
declare class Send extends React.PureComponent<SendProps, SendState> {
    urlReg: RegExp;
    textMaxFreq: number;
    textTimeWindow: number;
    textSendRecord: Array<number>;
    chatMessage?: HTMLElement;
    currentType: string | undefined;
    constructor(props: SendProps);
    componentWillReceiveProps(nextProps: SendProps): void;
    componentDidUpdate(preProps: SendProps, preState: SendState): void;
    saveRef: (name: string) => (ref: React.ReactNode) => void;
    getMessage: () => MessageItemType[];
    analysisText: (text: string | null, message?: Array<MessageItemType>) => MessageItemType[];
    initColorIndex: (permission: boolean) => string | null;
    send: (message?: Array<MessageItemType>) => void;
    moveCursor: () => void;
    insetContent: (type: string, content: any) => void;
    handlePaste: (event: React.ClipboardEvent<HTMLDivElement>) => void;
    handleKeyDown: (event: React.KeyboardEvent<HTMLDivElement>) => void;
    handleKeyUp: (event: React.KeyboardEvent<HTMLDivElement>) => void;
    handleAddBlank: (event: React.KeyboardEvent<HTMLDivElement>) => void;
    handleSend: (event?: React.MouseEvent<HTMLDivElement, MouseEvent> | undefined) => void;
    handleOnClick: () => void;
    handleInput: (event: React.KeyboardEvent<HTMLDivElement>) => void;
    handleFocus: () => void;
    closeHistory: () => void;
    renderCover: (has: boolean) => JSX.Element | null;
    checkOften: (timestamp?: number) => boolean;
    renderInput: (has: boolean) => JSX.Element;
    renderTip: (has: boolean) => JSX.Element | null;
    render(): JSX.Element;
}
export default Send;
