import { ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { MatFormFieldControl } from '@angular/material/form-field'; import { FormGroupDirective, NgControl, NgForm } from '@angular/forms'; import { CountryCode as CC, E164Number, NationalNumber, PhoneNumber } from 'libphonenumber-js'; import { FocusMonitor } from '@angular/cdk/a11y'; import { CanUpdateErrorState, ErrorStateMatcher, _AbstractConstructor, _Constructor } from '@angular/material/core'; import { MatMenu } from '@angular/material/menu'; import { Subject } from 'rxjs'; import { CountryCode } from '../base/consts/country-codes'; import { Country, PhoneNumberFormat } from '../base/models/phone.models'; import * as i0 from "@angular/core"; declare class NgxMatIntlTelInputBase { _defaultErrorStateMatcher: ErrorStateMatcher; _parentForm: NgForm; _parentFormGroup: FormGroupDirective; ngControl: NgControl; readonly stateChanges: Subject; constructor(_defaultErrorStateMatcher: ErrorStateMatcher, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl); } declare type CanUpdateErrorStateCtor = _Constructor & _AbstractConstructor; declare const _NgxMatIntlTelInputMixinBase: CanUpdateErrorStateCtor & typeof NgxMatIntlTelInputBase; export declare class EcabsBasePhoneComponent extends _NgxMatIntlTelInputMixinBase implements OnInit, OnDestroy, DoCheck, CanUpdateErrorState, MatFormFieldControl { private changeDetectorRef; private countryCodeData; private fm; private elRef; ngControl: NgControl; preferredCountries: string[]; enablePlaceholder: boolean; inputPlaceholder: string | undefined; cssClass: string | undefined; name: string | undefined; onlyCountries: string[]; errorStateMatcher: ErrorStateMatcher; enableSearch: boolean; searchPlaceholder: string | undefined; describedBy: string; debounceTimeMs: any; get format(): PhoneNumberFormat; get placeholder(): string; get required(): boolean; get disabled(): boolean; countryChanged: EventEmitter; matMenu: MatMenu | undefined; searchInput: ElementRef; matCustomInput: ElementRef; id: string; get shouldLabelFloat(): boolean; static nextId: number; private _changeSubject; private _placeholder; private _required; private _disabled; private _previousFormattedNumber; private _format; stateChanges: Subject; focused: boolean; phoneNumber: NationalNumber | string | undefined; allCountries: Country[]; preferredCountriesInDropDown: Country[]; selectedCountry: Country | undefined; numberInstance: PhoneNumber | undefined; value: E164Number | string | undefined; searchCriteria: string | undefined; get empty(): boolean; set format(value: PhoneNumberFormat); set placeholder(value: string); set required(value: boolean); set disabled(value: boolean); static getPhoneNumberPlaceHolder(countryISOCode: CC): string | undefined; onTouched: () => void; propagateChange: (_: unknown) => void; constructor(changeDetectorRef: ChangeDetectorRef, countryCodeData: CountryCode, fm: FocusMonitor, elRef: ElementRef, ngControl: NgControl, parentForm: NgForm, parentFormGroup: FormGroupDirective, defaultErrorStateMatcher: ErrorStateMatcher); ngOnInit(): void; ngDoCheck(): void; ngOnDestroy(): void; onPhoneNumberChangeDebounce(): void; onPhoneNumberChange(): void; onCountrySelect(country: Country): void; getCountry(code: string): Country; onInputKeyPress(event: KeyboardEvent): void; flagClass(lang: string): string; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; setDisabledState(isDisabled: boolean): void; writeValue(value: any): void; setDescribedByIds(ids: string[]): void; onContainerClick(event: MouseEvent): void; reset(): void; onSearchInput(): void; protected fetchCountryData(): void; private get formattedPhoneNumber(); private formatAsYouTypeIfEnabled; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};