import { Overlay } from '@angular/cdk/overlay'; import { ElementRef, EventEmitter, OnInit, TemplateRef, ViewContainerRef, AfterViewInit, Injector } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { Maybe } from '../../../types/maybe.type'; import { CalendarDay } from '../../../utils/calendar'; import { TextboxCurrencyConfigInterface } from './../../../models/textbox-currency-config.interface'; import { IconInterface } from './../../../models/icon-interface'; import { SizeType } from '../../../types/size.type'; import { FormElementBaseComponent } from '../../../models/base-form-element.component'; import * as i0 from "@angular/core"; type StatusType = 'normal' | 'error' | 'warning' | 'success'; export type LabelType = 'side' | 'float'; export interface TextboxComponentPropsInterface { type?: string; id?: string; size?: SizeType; name?: string; autocomplete?: string; autofocus?: string; readonly?: string; placeholder?: string; iconUrl?: string; hasError?: boolean; mask?: any; onlyNumber?: boolean; maxlength?: number; minlength?: number; multiline?: boolean; disabled?: boolean; rows?: string; tabIndex?: string | number; currency?: boolean; currencyConfig?: TextboxCurrencyConfigInterface; startIcon?: IconInterface; endIcon?: IconInterface; caption?: string; status?: StatusType; statusIcon?: boolean; label?: string; labelType?: LabelType; hideBorder?: boolean; } export declare class TextboxComponent extends FormElementBaseComponent implements OnInit, AfterViewInit, ControlValueAccessor, TextboxComponentPropsInterface { viewContainerRef: ViewContainerRef; private overlay; _value: string; type?: string; id?: string; inputId?: string; size?: SizeType; name?: string; autocomplete?: string; autofocus?: string; readonly?: string; placeholder?: string; iconUrl?: string; hasError?: boolean; mask?: any; onlyNumber?: boolean; maxlength?: number; minlength?: number; multiline?: boolean; disabled?: boolean; rows?: string; tabIndex?: string | number; currency?: boolean; currencyConfig?: TextboxCurrencyConfigInterface; startIcon?: IconInterface; endIcon?: IconInterface; caption?: string; status?: StatusType; statusIcon?: boolean; label?: string; labelType?: LabelType; labelShowRequiredSign?: boolean; minYear: number; maxYear: number; spinnerIsShow?: boolean; direction: 'ltr' | 'rtl' | undefined; hideBorder?: boolean; enterCallback: EventEmitter; iconClickCallback: EventEmitter; blurCallback: EventEmitter; focusCallback: EventEmitter; keyDownCallback: EventEmitter; changeCallback: EventEmitter; tabCallback: EventEmitter; textbox?: ElementRef; datePickerMenuTemplateRef: TemplateRef; textboxWrapperElement: ElementRef; isNumeric: boolean; customMaskConfig: { showMaskTyped?: boolean; allowNegativeNumbers?: boolean; prefix?: string; suffix?: string; dropSpecialCharacters?: boolean; clearIfNotMatch?: boolean; validation?: boolean; keepCharacterPositions?: boolean; leadZero?: boolean; thousandSeparator?: string; decimalMarker?: '.' | ',' | ['.', ',']; hiddenInput?: boolean; }; hasDatePicker?: Maybe; datePickerMenuIsShow?: Maybe; selectedDate?: Maybe; hasMaskPlaceholder: boolean; private overlayRef; constructor(viewContainerRef: ViewContainerRef, overlay: Overlay, injector: Injector); ngOnInit(): void; ngAfterViewInit(): void; get value(): string; set value(val: string); onChange: (_: any) => void; onTouched: () => void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; writeValue(obj: any): void; setDisabledState(isDisabled: boolean): void; changeHandler(): void; enterHander(event: Event): void; tabHander(event: Event): void; blurHandler(event: Event): void; focusHandler(event: Event): void; keyDownHandler(event: Event): void; keyUpHandler(event: Event): void; openDatePickerMenu(): void; closeDatePickerMenu(): void; selectDayHandler(data: CalendarDay): void; private createTreeMenuOverlay; focus(): void; generateUniqueId(): string; getLabelBackStyle(): "disabled" | "default" | "readonly"; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};