import { ButtonMetadata } from '../../types'; import * as i0 from "@angular/core"; /** * `val-login-attempt-modal` — modal de confirmación de intento de inicio de sesión. * * Se abre cuando el usuario llega a la vista Seguridad vía * `?token=...` desde el email/push de "nuevo acceso". Muestra el dispositivo * detectado y dos acciones: confirmar que fue uno mismo (cierra sin hacer nada) * o bloquear el dispositivo (ejecuta el token de acción). * * Inputs vía `componentProps` del ModalService. Sin `@Output` (no funcionan con * `modalController.create()`) — usa callback `onBlock` y `_modalRef.dismiss`. * Recibe los labels ya traducidos (agnóstico a i18n). * * Header canónico (Regla #5): sin `ion-title`, botón Cerrar texto en `slot=end`, * título en el body con `val-display`. */ export declare class LoginAttemptModalComponent { /** Título del modal (i18n ya resuelto). */ title: string; /** Texto explicativo. */ body: string; /** Descripción del dispositivo (navegador · OS · ubicación). */ deviceLabel: string; /** Metadata secundaria (fecha, IP). Opcional. */ metaLabel: string; /** Mensaje mostrado tras bloquear. */ doneLabel: string; /** Labels de botones. */ mineLabel: string; blockLabel: string; closeLabel: string; /** `true` si el dispositivo es móvil — cambia el icono. */ isMobile: boolean; /** * Callback que ejecuta el bloqueo (executeAction con el token) contra el * backend. Lo provee el parent vía `componentProps`. Debe lanzar si falla. */ onBlock?: () => Promise; /** Inyectado por `ModalService.open` — referencia para cerrar. */ _modalRef?: { dismiss: (data?: unknown, role?: string) => void; }; /** `true` tras bloquear con éxito — cambia el modal a estado "hecho". */ protected readonly done: import("@angular/core").WritableSignal; private working; get deviceIcon(): string; /** "Sí, fui yo" — cierra sin acción. El dispositivo ya está activo. */ confirmMine(): void; /** "No fui yo" — ejecuta el bloqueo y pasa a estado done. */ confirmBlock(): Promise; close(): void; get mineBtn(): Partial; get blockBtn(): Partial; get closeBtn(): Partial; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }