import React, { Component } from 'react'; import { FormFieldContext } from '../FormField'; export declare type TextAreaElement = Pick; /** * TextArea properties */ export interface TextAreaPropsStrict { /** Auto height mode on typing */ autoHeight?: boolean; /** Additional classes */ className?: string; /** A TextArea can show that it is disabled. */ disabled?: boolean; /** Visual error state for the Textarea */ error?: boolean; /** *autoHeight={true} required* Maximum rows limit for Textarea */ maxRows?: number; /** * Called on value change. * @param {ChangeEvent} event - React's original SyntheticEvent. * @param {object} data - All props and a proposed value. */ onChange?: (event: React.ChangeEvent, data: TextAreaOnChangeData) => void; /** * Called on input. * @param {SyntheticEvent} event - The React SyntheticEvent object * @param {object} data - All props and the event value. */ onInput?: (event: React.SyntheticEvent, data: TextAreaOnChangeData) => void; /** Indicates row count for a TextArea. */ rows?: number; /** The value of the textarea. */ value?: string; } export interface TextAreaProps extends TextAreaPropsStrict { /** Unstrict Props */ [propName: string]: any; } export interface TextAreaOnChangeData extends TextAreaProps { value: string; } export declare class TextArea extends Component { private textAreaRef; static displayName: string; static contextType: React.Context; context: React.ContextType; focus: (options?: FocusOptions) => void; select: () => void; handleChange: (e: React.ChangeEvent) => void; handleInput: (e: React.SyntheticEvent) => void; render(): JSX.Element; }