import { EventEmitter, type OnChanges, type SimpleChanges } from '@angular/core';
import type { BehaviorSubject, Subscription } from 'rxjs';
import type { InputCustomEvent, IonInput } from '@ionic/angular';
import type { CfCodeInputUserFeedbackMessagesI } from '../../interfaces/verification-code.interface';
import * as i0 from "@angular/core";
export declare class VerificationCodeComponent implements OnChanges {
    valueToVerify: string;
    status: BehaviorSubject<'initial' | 'invalid'>;
    userFeedbackMessages?: CfCodeInputUserFeedbackMessagesI;
    outcome: EventEmitter<string>;
    resendClickEvent: EventEmitter<true>;
    myInput1?: IonInput;
    myInput2?: IonInput;
    myInput3?: IonInput;
    myInput4?: IonInput;
    myInput5?: IonInput;
    validationCodeError: boolean;
    verificationCodeInputArr: (number | null)[];
    loading: boolean;
    commsSentCount: number;
    validationCode: string | undefined;
    statusSub$?: Subscription;
    constructor();
    ionViewDidEnter(): void;
    ngOnChanges(changes: SimpleChanges): void;
    resendVerificationCode(): void;
    formulateAndCheckVerificationCode(event: InputCustomEvent, index: number): void;
    private resetAllInputFields;
    private setFocusToNext;
    private clearCodeInput;
    ionViewWillLeave(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<VerificationCodeComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<VerificationCodeComponent, "cf-verification-code", never, { "valueToVerify": { "alias": "valueToVerify"; "required": false; }; "status": { "alias": "status"; "required": false; }; "userFeedbackMessages": { "alias": "userFeedbackMessages"; "required": false; }; }, { "outcome": "outcome"; "resendClickEvent": "resendClickEvent"; }, never, never, false, never>;
}
