interface UsePrintWhenStableOptions { /** * Tempo em ms para considerar o DOM estável (sem mutações) * @default 500 */ debounceTime?: number; /** * Elemento raiz para observar (se não fornecido, usa document.body) */ rootElement?: HTMLElement | null; /** * Callback executado quando o DOM está estável e pronto para impressão */ onStable?: () => void; /** * Callback executado ao iniciar a observação */ onStart?: () => void; /** * Tempo máximo de espera em ms antes de forçar a impressão * @default 10000 (10 segundos) */ maxWaitTime?: number; } /** * Hook que usa MutationObserver para detectar quando o DOM está estável * e então executa a impressão. Isso garante que todos os dados foram carregados * e renderizados antes de gerar o PDF. */ export declare const usePrintWhenStable: (options?: UsePrintWhenStableOptions) => { /** * Inicia a observação do DOM e imprime quando estável */ printWhenStable: () => void; /** * Para a observação e limpa os timers */ cancel: () => void; /** * Indica se está aguardando o DOM estabilizar */ isWaiting: boolean; }; export default usePrintWhenStable;