import { DoCheck, EventEmitter, OnInit, OnChanges, OnDestroy, SimpleChanges } from '@angular/core'; import { FormControl } from '@angular/forms'; import { PhoneInputMetadata, PhoneInputChangeEvent, CountryCode } from './types'; import * as i0 from "@angular/core"; export declare class PhoneInputComponent implements OnInit, OnChanges, OnDestroy, DoCheck { private presets; /** * Preset name to apply. Presets define reusable phone input configurations * that can be registered at app level via provideValtechPresets(). * * @example * */ preset?: string; /** * Phone input configuration object. Values here override preset values. */ props: Partial; /** * Resolved props after merging preset + explicit props. */ resolvedProps: PhoneInputMetadata; phoneChange: EventEmitter; states: { ENABLED: "ENABLED"; DISABLED: "DISABLED"; WORKING: "WORKING"; ERROR: "ERROR"; }; internalCountryControl: FormControl; internalNumberControl: FormControl; private valueSubscription; private isInternalUpdate; /** Último valor del control externo ya reflejado en el input. */ private lastSyncedValue; ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; /** * Refleja cambios del control externo que NO emiten `valueChanges` — p. ej. * `patchValue(..., { emitEvent: false })` en una carga programática de datos. * Sin esto el input quedaría vacío tras un `patchValue` silencioso. */ ngDoCheck(): void; ngOnDestroy(): void; /** * Merge preset configuration with explicit props. * Explicit props take precedence over preset values. */ private resolveProps; private setupComponent; private parsePhoneNumber; getLabel(): string; getPlaceholder(): string; getHint(): string; getCountryList(): CountryCode[]; getSelectedCountry(): CountryCode | null; get hasError(): boolean; getErrorMessage(): string; onCountryChange(event: CustomEvent): void; onNumberInput(event: CustomEvent): void; onNumberInputNative(event: Event): void; onBlur(): void; private updateMainControl; private validateNumber; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }