import { OnInit, EventEmitter, SimpleChanges, OnChanges, AfterViewInit, ElementRef, ChangeDetectorRef } from '@angular/core';
import { FormControl, ControlValueAccessor, FormGroupDirective, NgForm } from '@angular/forms';
import { ErrorStateMatcher } from '@angular/material';
/** Error when invalid control is dirty or touched*/
export declare class MyErrorStateMatcher implements ErrorStateMatcher {
    isErrorState(control: FormControl | null, form: FormGroupDirective | NgForm | null): boolean;
}
export declare const CHI_INPUT_COMPONENT_CONTROL_VALUE_ACCESSOR: any;
export declare class ChiInputComponent implements OnInit, ControlValueAccessor, OnChanges, AfterViewInit {
    private cdRef;
    type: string;
    direction: string;
    floatLabel: string;
    pattern: string;
    petternMessage: string;
    className: any;
    readonly: any;
    required: any;
    placeHolder: any;
    hintText: any;
    minLength: any;
    maxLength: any;
    showValidatorMessage: boolean;
    showSuffix: boolean;
    suffixIcon: string;
    isDirty: any;
    focuse: any;
    suffixClicked: EventEmitter<any>;
    isValid: EventEmitter<boolean>;
    name: any;
    matcher: MyErrorStateMatcher;
    id: string;
    element: FormControl;
    inputEl: ElementRef;
    private innerValue;
    private onTouchedCallback;
    private onChangeCallback;
    value: any;
    onBlur(validate: any): void;
    writeValue(value: any): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    changedInput(event: any, validate: any): void;
    onFocused(validate: any): void;
    constructor(cdRef: ChangeDetectorRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): void;
    getErrorMessage(): string;
    suffixClick(val: any): void;
    idGenerator(): string;
    faNumberToEn: (value: any) => any;
    toPersianChar: (value: any) => any;
}
