import { EventEmitter, OnInit } from '@angular/core';
import { ControlValueAccessor } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class TextareaComponent implements ControlValueAccessor, OnInit {
    label: string;
    labelPosition: 'top' | 'left';
    placeholder: string;
    helperText: string;
    maxLength: number | null;
    required: boolean;
    isDisabled: boolean;
    resize: 'both' | 'horizontal' | 'vertical' | 'none';
    density: 'low' | 'medium' | 'high';
    state: 'default' | 'error' | 'success' | 'warning' | 'info';
    stateMessage: string;
    showCharCount: boolean;
    limitType: 'max' | 'counter';
    rows: number;
    cols: number;
    textChange: EventEmitter<string>;
    value: string;
    focused: boolean;
    touched: boolean;
    get remainingChars(): number;
    get charCount(): number;
    get ariaDescribedBy(): string;
    ngOnInit(): void;
    onChange: any;
    onTouched: any;
    writeValue(value: string): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState(isDisabled: boolean): void;
    onInput(event: any): void;
    onBlur(): void;
    onFocus(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TextareaComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TextareaComponent, "cfc-textarea", never, { "label": { "alias": "label"; "required": false; }; "labelPosition": { "alias": "labelPosition"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "helperText": { "alias": "helperText"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "required": { "alias": "required"; "required": false; }; "isDisabled": { "alias": "isDisabled"; "required": false; }; "resize": { "alias": "resize"; "required": false; }; "density": { "alias": "density"; "required": false; }; "state": { "alias": "state"; "required": false; }; "stateMessage": { "alias": "stateMessage"; "required": false; }; "showCharCount": { "alias": "showCharCount"; "required": false; }; "limitType": { "alias": "limitType"; "required": false; }; "rows": { "alias": "rows"; "required": false; }; "cols": { "alias": "cols"; "required": false; }; }, { "textChange": "textChange"; }, never, never, false, never>;
}
