/**
 * Configuración acotada de `val-security-view` (object-first). Tres ejes de
 * variación permitidos — **NADA de slots arbitrarios** (ADR-021: una vista
 * full-feature no abre slots; si falta algo, se promueve un nuevo punto de
 * extensión):
 *
 *  - **secciones visibles** — gatean el render de cada bloque (sesiones,
 *    action-cards de cambiar contraseña / email / MFA, políticas legales).
 *  - **branding** — `i18nNamespace` para resolver los textos (default
 *    `'Settings.Security'`).
 *  - **comportamiento / callbacks** — manejo de deep-links del email
 *    (`?token`/`?action`/`?mfaCode`), ruta de "home" tras completar MFA y un
 *    hook opcional `onMfaCompleted`.
 */
export interface SecurityViewConfig {
    /** Muestra la sección de sesiones activas. Default `true`. */
    showSessions?: boolean;
    /** Incluye la action-card "Cambiar contraseña". Default `true`. */
    showChangePassword?: boolean;
    /** Incluye la action-card "Cambiar email". Default `true`. */
    showChangeEmail?: boolean;
    /** Incluye la action-card "Autenticación de dos pasos (MFA)". Default `true`. */
    showMfa?: boolean;
    /** Muestra la sección de políticas legales relacionadas. Default `true`. */
    showPolicies?: boolean;
    /**
     * Namespace i18n con el que la vista resuelve sus textos.
     * Default `'Settings.Security'`.
     */
    i18nNamespace?: string;
    /**
     * Habilita el manejo de los deep-links del email
     * (`?token`/`?action`/`?mfaCode`). Default `true`. Requiere que la vista esté
     * montada como ruta (hay `ActivatedRoute`); en modo embebido sin ruta es no-op.
     */
    handleDeepLinks?: boolean;
    /**
     * Ruta a la que navegar tras completar MFA vía deep-link. Default `'/app/home'`.
     * Ignorada si se provee `onMfaCompleted`.
     */
    homeRoute?: string;
    /**
     * Hook invocado cuando el usuario completa MFA vía deep-link. Si se provee, se
     * llama **en lugar** de navegar a `homeRoute`. Útil para apps que quieran
     * decidir el destino post-MFA.
     */
    onMfaCompleted?: () => void;
}
