import { FocusMonitor } from '@angular/cdk/a11y'; import { ChangeDetectorRef, DoCheck, ElementRef, EventEmitter, OnDestroy, OnInit } from '@angular/core'; import { FormGroupDirective, NgControl, NgForm } from '@angular/forms'; import { ErrorStateMatcher } from '@angular/material/core'; import { MatMenu } from '@angular/material/menu'; import { CountryCode as CC, E164Number, NationalNumber, PhoneNumber } from 'libphonenumber-js'; import { Subject } from 'rxjs'; import { CountryCode } from './country-code'; import { Country } from './country.model'; import { PhoneNumberFormat } from './phone-number-format.model'; import * as i0 from "@angular/core"; declare class matTelInputBase { _defaultErrorStateMatcher: ErrorStateMatcher; _parentForm: NgForm; _parentFormGroup: FormGroupDirective; ngControl: NgControl; constructor(_defaultErrorStateMatcher: ErrorStateMatcher, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, ngControl: NgControl); } export declare class MatTelInput extends matTelInputBase implements OnInit, DoCheck, OnDestroy { private _changeDetectorRef; private countryCodeData; private _focusMonitor; private _elementRef; static nextId: number; matMenu: MatMenu; menuSearchInput?: ElementRef; focusable: ElementRef; id: string; get shouldLabelFloat(): boolean; autocomplete: 'off' | 'tel'; cssClass?: string; errorStateMatcher: ErrorStateMatcher; placeholder: string; maxLength: string | number; name?: string; onlyCountries: string[]; preferredCountries: string[]; searchPlaceholder: string; enablePlaceholder: boolean; enableSearch: boolean; resetOnChange: boolean; set format(value: PhoneNumberFormat); get format(): PhoneNumberFormat; private _required; set required(value: boolean); get required(): boolean; private _disabled; set disabled(value: boolean); get disabled(): boolean; get empty(): boolean; countryChanged: EventEmitter; stateChanges: Subject; focused: boolean; describedBy: string; phoneNumber?: E164Number | NationalNumber; allCountries: Country[]; preferredCountriesInDropDown: Country[]; selectedCountry: Country; numberInstance?: PhoneNumber; value?: any; searchCriteria?: string; private _previousFormattedNumber?; private _format; onTouched: () => void; propagateChange: (_: any) => void; private errorState?; constructor(_changeDetectorRef: ChangeDetectorRef, countryCodeData: CountryCode, _focusMonitor: FocusMonitor, _elementRef: ElementRef, _ngControl: NgControl, _parentForm: NgForm, _parentFormGroup: FormGroupDirective, _defaultErrorStateMatcher: ErrorStateMatcher); ngOnInit(): void; updateErrorState(): void; private _setDefaultCountry; ngDoCheck(): void; ngOnDestroy(): void; onPhoneNumberChange(): void; private _setCountry; onCountrySelect(country: Country, el: HTMLInputElement): void; getCountry(code: CC): Country; onInputKeyPress(event: any): void; protected fetchCountryData(): void; private _getPhoneNumberPlaceHolder; 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; private formattedPhoneNumber; private formatAsYouTypeIfEnabled; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; static ngAcceptInputType_enablePlaceholder: unknown; static ngAcceptInputType_enableSearch: unknown; static ngAcceptInputType_resetOnChange: unknown; static ngAcceptInputType_required: unknown; static ngAcceptInputType_disabled: unknown; } export {};