from abc import ABC, abstractmethod class FileReaderInterface(ABC): """ Interface pour lire le contenu de fichiers texte, PDF, CSV, Excel, qu'ils soient locaux ou téléchargés avec authentification. """ @abstractmethod def read(self, file_path: str) -> str: """ Lit un fichier donné et retourne son contenu textuel. Args: file_path (str): Chemin local ou nom du fichier distant à lire. Returns: str: Contenu du fichier ou message d'erreur. """ pass