import { ChangeEvent, KeyboardEvent, FocusEvent } from 'react';
import { PureComponent } from '../component';
import { OriginTextareaProps } from './Props';
interface TextareaState {
    height: number;
}
declare class Textarea extends PureComponent<OriginTextareaProps, TextareaState> {
    shadow: HTMLTextAreaElement;
    static defaultProps: {
        rows: number;
        resize: boolean;
    };
    constructor(props: OriginTextareaProps);
    componentDidMount(): void;
    componentDidUpdate(prevProps: OriginTextareaProps): void;
    getTrim(): boolean;
    defaultInfo: (value?: string | undefined) => string | Error | null;
    bindShadow(el: HTMLTextAreaElement): void;
    resize(value?: string): void;
    handleChange(e: ChangeEvent<HTMLTextAreaElement>): void;
    handleKeyUp(e: KeyboardEvent<HTMLTextAreaElement>): void;
    handleBlur(e: FocusEvent<HTMLTextAreaElement>): void;
    renderFooter(): JSX.Element | null;
    renderInfo(): JSX.Element | null;
    render(): JSX.Element;
}
export default Textarea;
