import { ComputedRef, MaybeRefOrGetter, Ref } from 'vue'; /** Délais de la sonde de rendu natif, en millisecondes. */ export interface PdfProbeDelays { /** Attente avant la mesure initiale du contenu de repli. Défaut : 400. */ delay?: number; /** * Attente supplémentaire avant la mesure qui confirme l'échec. À augmenter si le * lecteur natif est lent à afficher le document sur les appareils cibles. Défaut : 800. */ confirmDelay?: number; } export interface UseNativePdfFallback { /** Le rendu pdf.js doit remplacer l'`` natif. */ prefersPdfJs: ComputedRef; /** La sonde a rendu son verdict : le contenu de repli peut cesser d'être masqué. */ probeDone: Ref; /** Élément de repli de l'``, mesuré par la sonde (à lier via `ref`). */ fallbackRef: Ref; } /** * Décide quel moteur de rendu PDF utiliser : le lecteur natif du navigateur * (``) ou pdf.js. * * Aucune déclaration du navigateur n'étant fiable (Chrome sur Android annonce un * lecteur PDF qu'il n'a pas), la décision *a priori* est doublée d'une **sonde du * rendu réel** : un `` qui n'affiche pas le PDF rend son contenu de repli, * lequel occupe alors une boîte dans la page. Une hauteur non nulle signe l'échec du * rendu natif, quel que soit le navigateur — mais seulement si elle est confirmée par * une seconde mesure : sur un appareil lent, le lecteur natif peut n'avoir pas encore * affiché le document. * * @param file - Document affiché : la sonde est relancée à chaque changement. * @param isNativeWanted - `true` quand le rendu natif est celui qu'on chercherait à * utiliser (fichier PDF, et pdf.js non demandé explicitement par le consommateur). * @param delays - Délais de la sonde, pour les parcs d'appareils lents. */ export declare function useNativePdfFallback(file: MaybeRefOrGetter, isNativeWanted: MaybeRefOrGetter, delays?: MaybeRefOrGetter): UseNativePdfFallback;