import * as i0 from '@angular/core'; import { ElementRef, OnChanges, OnInit, ChangeDetectorRef, EventEmitter, Renderer2, SimpleChanges } from '@angular/core'; import { NgControl, NgForm, FormGroupDirective } from '@angular/forms'; import * as i1 from '@usitsdasdesign/dds-ng/core/focus-handler'; import { DestroyCtor, I18nCtor, FormAccessorCtor, ErrorStateCtor } from '@usitsdasdesign/dds-ng/core/common-behaviors'; import { ThemeClassesMap } from '@usitsdasdesign/dds-ng/core/theme'; import { LabelPosition, Size, MaxLengthPositions, ErrorState } from '@usitsdasdesign/dds-ng/shared'; import { DdsConfigService } from '@usitsdasdesign/dds-ng/shared/dds-config'; import { I18nService, ITranslation } from '@usitsdasdesign/dds-ng/shared/i18n'; declare class TextAreaFieldDirective { ngControl: NgControl; parentForm: NgForm; parentFormGroup: FormGroupDirective; elementRef: ElementRef; textareaField: boolean; constructor(ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, elementRef: ElementRef); static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare const TextareaBase: DestroyCtor & I18nCtor & FormAccessorCtor & ErrorStateCtor; declare class TextareaComponent extends TextareaBase implements OnChanges, OnInit { ngControl: NgControl; parentForm: NgForm; parentFormGroup: FormGroupDirective; cdr: ChangeDetectorRef; i18n: I18nService; private ddsConfig; private renderer; disabled: boolean | undefined; isFocused: boolean | undefined; isEmptyValue: boolean; textareaField: ElementRef; textAreaFieldExternal: TextAreaFieldDirective; label: string | undefined; description: string | undefined; errorMessage: string | undefined; customClass: string | undefined; labelPosition: LabelPosition | string | undefined; size: Size | string | undefined; maxLengthPosition: MaxLengthPositions | string | undefined; minHeight: number | undefined; maxLength: number | undefined; errorState: string | ErrorState | undefined; placeholder: string | undefined; ariaLabel: string | undefined; isError: boolean | undefined; isInverse: boolean | undefined; isRequired: boolean | undefined; readonly: boolean | undefined; set value(value: string | undefined); get value(): string | undefined; valueChanged: EventEmitter; onBlur: EventEmitter; onFocus: EventEmitter; themeConfig: ThemeClassesMap; maxLengthText: string; isExternalLabel: boolean; characterLimitText: string[]; maxLimitText: string; id: string; private _value; get isHeaderShown(): boolean; get isErrorMessageShown(): boolean; get maxLengthError(): boolean; get isMaxLengthRight(): boolean; get isMaxLengthTopRight(): boolean; get isMaxLengthTopLeft(): boolean; get isMaxLengthBottom(): boolean; get isMaxLengthBottomRight(): boolean; get isFooterMaxLengthShown(): boolean; get fieldHasScroll(): boolean; get ariaDescription(): string; constructor(ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, cdr: ChangeDetectorRef, i18n: I18nService, ddsConfig: DdsConfigService, renderer: Renderer2); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngDoCheck(): void; ngAfterContentInit(): void; changeHandle(e: Event): void; writeValue(value: string): void; setDisabledState(disabled: boolean): void; reset(): void; blur(): void; focus(): void; getAriaLabel(): string; private genMaxLengthText; private externalTextareaSetAttr; private checkIsEmpty; private checkLabelPosition; protected setI18nTexts(translation: ITranslation): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class TextareaModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } interface TextareaOptions { label?: string; labelPosition?: LabelPosition | string; placeholder?: string; description?: string; customClass?: string; minHeight?: number; disabled?: boolean; isInverse?: boolean; isError?: boolean; errorMessage?: string; errorState?: string | ErrorState; maxLength?: number; maxLengthPosition?: MaxLengthPositions | string; size?: Size | string; ariaLabel?: string; isRequired?: boolean; readonly?: boolean; } export { TextAreaFieldDirective, TextareaComponent, TextareaModule }; export type { TextareaOptions };