import { EventEmitter } from '../../stencil-public-runtime'; export declare class SpwFileUpload { private inputElement; el: HTMLSpwFileUploadElement; /** Indique si le champ est désactivé, rendant le téléversement de fichiers non disponible */ disabled: boolean; /** Nom de l'élément utilisé dans les formulaires pour associer la valeur des fichiers */ name: string; /** Valeur actuelle sélectionnée, utilisée pour les formulaires */ value: File[]; /** Active ou désactive la zone de dépôt pour le glisser-déposer de fichiers */ enableDropZone: boolean; /** Permet de téléverser plusieurs fichiers si vrai */ multiple: boolean; /** Types de fichiers acceptés, spécifiés sous forme de chaîne de types MIME ou extensions (whitelist) */ accept: string; /** Types de fichiers refusés, spécifiés sous forme de chaîne de types MIME ou extensions (blacklist) */ refuse: string; /** Taille maximale autorisée pour chaque fichier, en Mo */ maxFileSize: number; /** Unité de mesure pour maxFileSize ('mo' ou 'go') */ maxFileSizeUnit: 'mo' | 'go'; /** Nombre maximal de fichiers pouvant être téléversés */ maxFiles: number; /** Texte du bouton pour sélectionner un fichier (mode simple) */ textChooseFile: string; /** Texte du bouton pour sélectionner plusieurs fichiers (mode multiple) */ textChooseFiles: string; /** Texte de la zone de dépôt pour un fichier */ textDropFile: string; /** Texte de la zone de dépôt pour plusieurs fichiers */ textDropFiles: string; /** Texte du lien pour choisir depuis l'ordinateur */ textChooseFromComputer: string; /** Texte du lien de suppression */ textDelete: string; /** Texte pour la taille maximale par fichier (utiliser {size} et {unit} comme placeholders) */ textMaxFileSize: string; /** Texte pour le nombre maximum de fichiers (utiliser {count} comme placeholder) */ textMaxFiles: string; /** Texte pour les formats autorisés (utiliser {formats} comme placeholder) */ textAcceptedFormats: string; /** Texte pour les formats refusés (utiliser {formats} comme placeholder) */ textRefusedFormats: string; /** Texte quand tous les formats sont autorisés */ textAllFormats: string; /** Message d'erreur quand le format n'est pas autorisé (utiliser {filename} comme placeholder) */ textErrorFormat: string; /** Message d'erreur quand la taille est dépassée (utiliser {filename} comme placeholder) */ textErrorSize: string; /** Message d'erreur quand le format et la taille sont invalides (utiliser {filename} comme placeholder) */ textErrorFormatAndSize: string; /** Message quand la limite de fichiers est atteinte */ textLimitReached: string; /** Message quand on dépasse la limite de fichiers (utiliser {count} comme placeholder) */ textLimitExceeded: string; selectedFiles: File[]; fileTypeErrors: string[]; fileLimitErrors: string[]; isDragging: boolean; isMaxFilesReachedExact: boolean; internals: ElementInternals; /** Événement émis lorsque la sélection de fichiers change */ spwFileChange: EventEmitter<{ files: File[]; }>; watchValueHandler(newValue: File[]): void; componentWillLoad(): void; get isMaxFilesReached(): boolean; private handleFileChange; private processFiles; private isFileAccepted; private isFileSizeValid; private updateFormValue; /** Réinitialise le champ de téléchargement de fichiers */ resetInput(): Promise; formResetCallback(): void; private handleDragOver; private handleDragLeave; private handleDrop; private removeFile; private handleKeydown; private get elementClass(); private get hintsMessages(); render(): any; }