/**
* El modo presentación NO refresca los datos.
*
* Tenía un auto-refresco global configurable, y se quitó por una razón de fondo:
* cada widget ya se refresca solo con su propia `refresh_policy`, que es lo que le
* puso quien lo creó. Un temporizador global dispara los ocho a la vez —una
* estampida contra el proxy, cada una con su salto HTTP— y además pisa el ritmo que
* cada indicador tenía configurado, que no tiene por qué ser el mismo: un stock
* crítico y un consolidado de ventas no necesitan la misma frecuencia.
*
* Lo que este modo aporta es lo que el navegador no da solo: pantalla completa,
* escala tipográfica y rotación entre categorías.
*/
/** Cada cuánto rota entre categorías, cuando la rotación está activa. */
export declare const DEFAULT_ROTATE_SECONDS = 30;
interface UsePresentationModeOptions {
/** Se llama en cada rotación, con el índice de la siguiente categoría. */
onRotate?: (nextIndex: number) => void;
/** Cuántas categorías hay para rotar. Con menos de 2, no se rota. */
rotatableCount?: number;
}
export interface PresentationMode {
isActive: boolean;
enter: () => void;
exit: () => void;
isRotating: boolean;
setRotating: (value: boolean) => void;
/** Ref del elemento que se lleva a pantalla completa. */
containerRef: React.RefObject;
}
/**
* Modo presentación: el tablero a pantalla completa, para dejarlo en un monitor.
*
* Usa la Fullscreen API del navegador y no un overlay propio. El diseño pide
* que se oculten "navegación, breadcrumb y selector de compañía", y esas tres cosas
* son del HOST, no de este componente — el kit no las dibuja ni sabe que existen.
* Pantalla completa sobre el contenedor del tablero las tapa todas sin que el host
* tenga que cooperar en nada, y `Esc` sale de forma nativa.
*
* Funciona porque el host integra por single-spa y comparte el documento del shell.
* Bajo una integración por iframe haría falta `allow="fullscreen"` en el iframe, que
* es una decisión del host; en ese caso `enter()` falla y el modo simplemente no se
* activa, sin romper nada.
*/
export declare function usePresentationMode({ onRotate, rotatableCount, }?: UsePresentationModeOptions): PresentationMode;
export {};
//# sourceMappingURL=usePresentationMode.d.ts.map