import { ElementRef, EventEmitter } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { TranslateService } from '@ngx-translate/core'; import { Subject } from 'rxjs'; import { IconName } from '../../shared/icon/icon.component'; import { ErrorsList } from '../errors/errors.component'; import { FocusableComponent } from '../switchable/switchable.component'; import { FormatDatePipe } from '../../../pipes/format-date.pipe'; import * as i0 from "@angular/core"; export type InputType = 'text' | 'number' | 'password' | 'email' | 'tel' | 'date' | 'search'; export interface InputProps { type?: string; placeholder?: string; value: string | number; leftIcon?: IconName; rightIcon?: IconName; valueChange: EventEmitter; defaultRightIcon: IconName; showCloseIcon?: boolean; errors?: ErrorsList; field?: string; } export declare class InputComponent implements InputProps, ControlValueAccessor, FocusableComponent { private translateService; private formatDatePipe; type?: InputType; placeholder?: string; leftIcon?: IconName; rightIcon?: IconName; _value: string | number; readonly: boolean; showCloseIcon?: boolean; errors?: ErrorsList; field?: string; rightIconAction: EventEmitter; valueChange: EventEmitter; change: EventEmitter; input?: ElementRef; onEnter: Subject; defaultRightIcon: IconName; onChange: (val: string | number) => void; onTouched: () => void; private dateSeparator; constructor(translateService: TranslateService, formatDatePipe: FormatDatePipe); get translatedPlaceholder(): string; get value(): string | number; set value(val: string | number); clear(): void; writeValue(value: string | number): void; registerOnChange(fn: () => void): void; registerOnTouched(fn: () => void): void; handleChange(): void; validations(event: KeyboardEvent): boolean; validateDate(event: KeyboardEvent): boolean; validateTel(event: KeyboardEvent): boolean; focus(): void; handleEnter(event: Event): void; getText(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }