/** * AppConfig Types * * Tipos para el servicio de configuración remota de la aplicación. */ import { FirestoreDocument } from '../firebase/types'; /** * Configuración de la aplicación almacenada en Firestore. * * @property version - Versión más reciente de la app * @property minVersion - Versión mínima soportada (opcional) * @property maintenance - Modo mantenimiento global * @property features - Feature flags (key-value boolean) * @property variables - Variables dinámicas de configuración * @property announcements - Anuncios opcionales para mostrar */ export interface AppConfig extends FirestoreDocument { version: string; minVersion?: string; maintenance?: boolean; features: Record; variables: Record; announcements?: Announcement[]; } /** * Anuncio para mostrar en la aplicación. * * @property id - Identificador único del anuncio * @property type - Tipo de anuncio (info, warning, promo) * @property message - Mensaje en múltiples idiomas * @property active - Si el anuncio está activo * @property link - URL opcional para redirección */ export interface Announcement { id: string; type: 'info' | 'warning' | 'promo'; message: Record; active: boolean; link?: string; } /** * Configuración para el proveedor de AppConfigService. * * @property currentVersion - Versión actual de la aplicación * @property showUpdateBanner - Mostrar banner de actualización automáticamente */ export interface AppConfigServiceConfig { currentVersion: string; showUpdateBanner?: boolean; } /** * Configuración por defecto del servicio. */ export declare const DEFAULT_APP_CONFIG_SERVICE_CONFIG: AppConfigServiceConfig;