import BaseFoundation, { DefaultAdapter, noopFunction } from '../base/foundation'; export interface TextAreaDefaultAdapter { notifyChange: noopFunction; setValue: noopFunction; toggleFocusing: noopFunction; notifyFocus: noopFunction; notifyBlur: noopFunction; notifyKeyDown: noopFunction; notifyEnterPress: noopFunction; toggleHovering(hovering: boolean): void; notifyClear(e: any): void; } export interface TextAreaAdapter extends Partial, Partial { setMinLength(length: number): void; notifyPressEnter(e: any): void; getRef(): HTMLInputElement; notifyHeightUpdate(e: any): void; } export default class TextAreaFoundation extends BaseFoundation { static get textAreaDefaultAdapter(): { notifyChange: (...args: any[]) => void; setValue: (...args: any[]) => void; toggleFocusing: (...args: any[]) => void; toggleHovering: (...args: any[]) => void; notifyFocus: (...args: any[]) => void; notifyBlur: (...args: any[]) => void; notifyKeyDown: (...args: any[]) => void; notifyEnterPress: (...args: any[]) => void; }; compositionEnter: boolean; constructor(adapter: TextAreaAdapter); destroy(): void; handleValueChange(v: string): void; handleChange(value: string, e: any): void; _changeValue: (value: any, e: any) => void; getNextValue: (value: any) => any; handleCompositionStart: () => void; handleCompositionEnd: (e: any) => void; /** * Modify minLength to trigger browser check for minimum length * Controlled mode is not checked * @param {String} value */ handleVisibleMinLength(value: string): void; /** * Handle input emoji characters beyond maxLength * Controlled mode is not checked * @param {String} value */ handleVisibleMaxLength(value: string): string; /** * Truncate textarea values based on maximum length * @param {String} value * @param {Number} maxLength * @returns {String} */ handleTruncateValue(value: string, maxLength: number): string; handleFocus(e: any): void; handleBlur(e: any): void; handleKeyDown(e: any): void; resizeTextarea: () => void; handleMouseEnter(e: any): void; handleMouseLeave(e: any): void; isAllowClear(): boolean; handleClear(e: any): void; }