import { OnInit } from '@angular/core';
import { ComponentState, FormMetadata, FormSubmit } from '../../types';
import * as i0 from "@angular/core";
/**
 * `val-delete-account-modal` — modal de eliminación de cuenta (organism,
 * cuenta-específico). Promovido desde `showcase` bajo el proceso de ADR-021.
 *
 * Decide el flujo según si la cuenta tiene contraseña:
 *  - **con password** → pide la contraseña actual y la verifica vía
 *    `auth.deleteAccount({ password })`.
 *  - **sin password** (cuenta OAuth) → envía un código por email
 *    (`auth.sendDeleteAccountCode()`) y lo pide para confirmar
 *    (`auth.deleteAccount({ code })`).
 *
 * Abierto vía `ModalService` — recibe `_modalRef` por `componentProps` para
 * cerrar desde dentro. Header canónico (Regla #5): sin `ion-title`, botón Cerrar
 * texto en `slot=end`, título/subtítulo en el body vía `val-form`.
 *
 * Auto-registra sus defaults i18n (es/en) en el constructor si el consumer no
 * proveyó el namespace `Settings.DeleteAccount`.
 */
export declare class DeleteAccountModalComponent implements OnInit {
    private auth;
    private errors;
    private i18n;
    private toast;
    /** Inyectado por `ModalService.open` — referencia para cerrar desde dentro. */
    _modalRef?: {
        dismiss: (data?: unknown, role?: string) => void;
    };
    /** Namespace i18n con que la vista resuelve sus textos. */
    i18nNamespace: string;
    readonly hasPassword: import("@angular/core").WritableSignal<boolean>;
    readonly codeSent: import("@angular/core").WritableSignal<boolean>;
    readonly formState: import("@angular/core").WritableSignal<ComponentState>;
    constructor();
    ngOnInit(): void;
    t: (key: string) => string;
    private submitBtn;
    readonly passwordFormProps: import("@angular/core").Signal<FormMetadata>;
    readonly sendCodeFormProps: import("@angular/core").Signal<FormMetadata>;
    readonly codeFormProps: import("@angular/core").Signal<FormMetadata>;
    close(): void;
    onPasswordSubmit(event: FormSubmit): Promise<void>;
    onSendCode(): Promise<void>;
    onResendCode(): Promise<void>;
    onCodeSubmit(event: FormSubmit): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<DeleteAccountModalComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DeleteAccountModalComponent, "val-delete-account-modal", never, { "_modalRef": { "alias": "_modalRef"; "required": false; }; "i18nNamespace": { "alias": "i18nNamespace"; "required": false; }; }, {}, never, never, true, never>;
}
