import { CountryCode, CountryCallingCode, E164Number, NumberFormat } from 'libphonenumber-js'; export { CountryCode, E164Number, NumberFormat, ValidatePhoneNumberLengthResult } from 'libphonenumber-js'; import * as _angular_core from '@angular/core'; import { PipeTransform } from '@angular/core'; import { ControlValueAccessor, Validator, AbstractControl, ValidationErrors } from '@angular/forms'; interface PrefixEntry { country: CountryCode; prefix: CountryCallingCode; name: string; } declare class PhoneNumberInputComponent implements ControlValueAccessor, Validator { #private; readonly label: _angular_core.InputSignal; readonly autocomplete: _angular_core.InputSignal<"off" | "tel">; /** * Which countries should be shown? Defaults to empty array which means all of them. * * You can use CountryCode to make sure it's properly typed on your end, string is also accepted */ readonly allowedCountries: _angular_core.InputSignal; readonly noAutoPlaceholder: _angular_core.InputSignal; readonly defaultCountryCode: _angular_core.InputSignal; readonly countryChange: _angular_core.OutputEmitterRef; readonly currentValue: _angular_core.WritableSignal; disabled: boolean; prefixEntries: { country: CountryCode; prefix: CountryCallingCode; name: string; }[]; query: _angular_core.WritableSignal; protected prefixesDisplay: _angular_core.Signal<{ country: CountryCode; prefix: CountryCallingCode; name: string; }[]>; countryCodeSelected: _angular_core.WritableSignal; countryCode: _angular_core.Signal; placeholder: _angular_core.Signal; displayedNumber: _angular_core.WritableSignal; readonly prefixEntry: _angular_core.Signal<{ country: CountryCode; prefix: CountryCallingCode; name: string; }>; protected getPrefixKey: (prefix: PrefixEntry) => CountryCode; protected prefixComparator: (a: PrefixEntry, b: PrefixEntry) => boolean; writeValue(value: string): void; registerOnChange(fn: (value: E164Number) => void): void; registerOnTouched(fn: () => void): void; setDisabledState?(isDisabled: boolean): void; updatePrefix(prefixEntry: PrefixEntry): void; updateNumber(number: string): void; updateModel(): void; touched(): void; formatNationalNumber(): void; validate(control: AbstractControl): ValidationErrors; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class PhoneNumberValidators { static validPhoneNumber(control: AbstractControl, countryCode?: CountryCode): { validPhoneNumber: string; }; } declare class PhoneNumberFormatter { static format(phoneNumber: E164Number, format?: NumberFormat): string; } declare class PhoneNumberFormatPipe implements PipeTransform { transform(value: E164Number, format?: NumberFormat): unknown; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵpipe: _angular_core.ɵɵPipeDeclaration; } export { PhoneNumberFormatPipe, PhoneNumberFormatter, PhoneNumberInputComponent, PhoneNumberValidators };