import { OnInit, EventEmitter, OnChanges, SimpleChanges, ElementRef } from '@angular/core'; import { ControlValueAccessor } from '@angular/forms'; import { IonInput, Platform } from '@ionic/angular'; import { IonicSelectableComponent } from 'ionic-selectable'; import { CountryI } from '../models/country.model'; import { IonIntlTelInputModel } from '../models/ion-intl-tel-input.model'; import { IonIntlTelInputService } from '../ion-intl-tel-input.service'; import { TranslateService } from '@ngx-translate/core'; import * as i0 from "@angular/core"; /** * @ignore */ export declare class IonIntlTelInputComponent implements ControlValueAccessor, OnInit, OnChanges { private el; private platform; private ionIntlTelInputService; private translate; cssClass: boolean; isIos: boolean; isMD: boolean; hasFocus: any; get hasValueCssClass(): boolean; get isEnabled(): boolean; /** * Iso Code of default selected Country. * See more on. * * @default '' * @memberof IonIntlTelInputComponent */ defaultCountryiso: string; /** * Determines whether to use `00` or `+` as dial code prefix. * Available attributes are '+' | '00'. * See more on. * * @default + * @memberof IonIntlTelInputComponent */ dialCodePrefix: '+' | '00'; /** * Determines whether to select automatic country based on user input. * See more on. * * @default false * @memberof IonIntlTelInputComponent */ enableAutoCountrySelect: boolean; /** * Determines whether an example number will be shown as a placeholder in input. * See more on. * * @default true * @memberof IonIntlTelInputComponent */ enablePlaceholder: boolean; /** * A fallaback placeholder to be used if no example number is found for a country. * See more on. * * @default '' * @memberof IonIntlTelInputComponent */ fallbackPlaceholder: string; /** * If a custom placeholder is needed for input. * If this property is set it will override `enablePlaceholder` and only this placeholder will be shown. * See more on. * * @default '' * @memberof IonIntlTelInputComponent */ inputPlaceholder: string; /** * Maximum Length for input. * See more on. * * @default '15' * @memberof IonIntlTelInputComponent */ maxLength: string; /** * Title of modal opened to select country dial code. * See more on. * * @default 'Select Country' * @memberof IonIntlTelInputComponent */ modalTitle: string; /** * Placeholder for the select dropdown * See more on. * * @default 'Country' * @memberof IonIntlTelInputComponent */ dropdownPlaceholder: string; /** * CSS class to attach to dial code selectionmodal. * See more on. * * @default '' * @memberof IonIntlTelInputComponent */ modalCssClass: string; /** * Placeholder for input in dial code selection modal. * See more on. * * @default 'Enter country name' * @memberof IonIntlTelInputComponent */ modalSearchPlaceholder: string; /** * Text for close button in dial code selection modal. * See more on. * * @default 'Close' * @memberof IonIntlTelInputComponent */ modalCloseText: string; /** * Slot for close button in dial code selection modal. [Ionic slots](https://ionicframework.com/docs/api/item) are supported * See more on. * * @default 'end' * @memberof IonIntlTelInputComponent */ modalCloseButtonSlot: 'start' | 'end' | 'primary' | 'secondary'; /** * Determines whether dial code selection modal should be searchable or not. * See more on. * * @default 'true' * @memberof IonIntlTelInputComponent */ modalCanSearch: boolean; /** * Determines whether dial code selection modal is closed on backdrop click. * See more on. * * @default 'true' * @memberof IonIntlTelInputComponent */ modalShouldBackdropClose: boolean; /** * Determines whether input should be focused when dial code selection modal is opened. * See more on. * * @default 'true' * @memberof IonIntlTelInputComponent */ modalShouldFocusSearchbar: boolean; /** * Message to show when no countries are found for search in dial code selection modal. * See more on. * * @default 'true' * @memberof IonIntlTelInputComponent */ modalSearchFailText: string; /** * Item icon slot. * See more on. * * @default 'start' * @memberof IonIntlTelInputComponent */ modalItemIconSlot: string; /** * List of iso codes of manually selected countries as string, which will appear in the dropdown. * **Note**: `onlyCountries` should be a string array of country iso codes. * See more on. * * @default null * @memberof IonIntlTelInputComponent */ onlyCountries: Array; /** * List of iso codes as string of countries, which will appear at the top in dial code selection modal. * **Note**: `preferredCountries` should be a string array of country iso codes. * See more on. * * @default null * @memberof IonIntlTelInputComponent */ preferredCountries: Array; /** * Determines whether first country should be selected in dial code select or not. * See more on. * * @default true * @memberof IonIntlTelInputComponent */ selectFirstCountry: boolean; /** * Determines whether to visually separate dialcode into the drop down element. * See more on. * * @default true * @memberof IonIntlTelInputComponent */ separateDialCode: boolean; /** * Fires when the Phone number Input is changed. * See more on. * * @memberof IonIntlTelInputComponent */ readonly numberChange: EventEmitter; /** * Fires when the Phone number Input is blurred. * See more on. * * @memberof IonIntlTelInputComponent */ readonly numberBlur: EventEmitter; /** * Fires when the Phone number Input is focused. * See more on. * * @memberof IonIntlTelInputComponent */ readonly numberFocus: EventEmitter; /** * Fires when the user is typing in Phone number Input. * See more on. * * @memberof IonIntlTelInputComponent */ readonly numberInput: EventEmitter; /** * Fires when the dial code selection is changed. * See more on. * * @memberof IonIntlTelInputComponent */ readonly codeChange: EventEmitter; /** * Fires when the dial code selection modal is opened. * See more on. * * @memberof IonIntlTelInputComponent */ readonly codeOpen: EventEmitter; /** * Fires when the dial code selection modal is closed. * See more on. * * @memberof IonIntlTelInputComponent */ readonly codeClose: EventEmitter; /** * Fires when a dial code is selected in dial code selection modal. * See more on. * * @memberof IonIntlTelInputComponent */ readonly codeSelect: EventEmitter; numberInputEl: IonInput; private _value; country: CountryI; phoneNumber: string; countries: CountryI[]; disabled: boolean; phoneUtil: any; translationPrefix: string; onTouched: () => void; propagateChange: (_: IonIntlTelInputModel | null) => void; constructor(el: ElementRef, platform: Platform, ionIntlTelInputService: IonIntlTelInputService, translate: TranslateService); get value(): IonIntlTelInputModel | null; set value(value: IonIntlTelInputModel | null); emitValueChange(change: IonIntlTelInputModel | null): void; ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; writeValue(obj: IonIntlTelInputModel): void; setDisabledState(isDisabled: boolean): void; fillValues(value: IonIntlTelInputModel): void; hasValue(): boolean; onCodeOpen(): void; onCodeChange(event: { component: IonicSelectableComponent; value: any; }): void; onCodeClose(): void; onCodeSearchCountries(event: { component: IonicSelectableComponent; text: string; }): void; onCodeSelect(): void; onIonNumberChange(event: Event): void; onIonNumberBlur(): void; onIonNumberFocus(): void; onIonNumberInput(event: KeyboardEvent): void; onNumberChange(): void; onNumberKeyDown(event: KeyboardEvent): void; private filterCountries; private getCountryIsoCode; private fetchAllCountries; private getCountryByIsoCode; private isNullOrWhiteSpace; private removeDialCode; private setCountry; private setPreferredCountries; private startsWith; private getClasses; private setClasses; private setIonicClasses; private setItemClass; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }