import { ElementRef, OnInit } from '@angular/core'; import { I18nService } from '../../../services/i18n'; import { AttachmentItem, AttachmentUploaderMetadata } from './types'; import * as i0 from "@angular/core"; export declare class AttachmentUploaderComponent implements OnInit { cameraPicker: ElementRef; cameraVideo: ElementRef; props: import("@angular/core").InputSignal; attachmentsChange: import("@angular/core").OutputEmitterRef; protected i18n: I18nService; private feedbackService; private imageService; attachments: import("@angular/core").WritableSignal; showCameraOverlay: import("@angular/core").WritableSignal; private cameraStream; maxFiles: import("@angular/core").Signal; accept: import("@angular/core").Signal; maxReached: import("@angular/core").Signal; isDisabled: import("@angular/core").Signal; isUploading: import("@angular/core").Signal; get readyUrls(): string[]; ngOnInit(): void; constructor(); openCamera(): Promise; capturePhoto(): void; closeCamera(): void; onFilesSelected(event: Event): Promise; private processFiles; private compressImage; /** * Genera y sube la miniatura de una imagen ya comprimida. * * Recibe el archivo COMPRIMIDO a propósito: `compressorjs` ya normalizó la * orientación EXIF, y `ImageService` trabaja sobre canvas sin leer EXIF — si * se le pasara el original, las fotos verticales de teléfono saldrían * rotadas. Ver la nota en `generateThumbnail` (types.ts). * * Nunca es fatal: si falla, el adjunto queda subido sin miniatura y las * listas caen al archivo grande. Perder la miniatura no justifica perder la * foto que el usuario acaba de subir. */ private uploadThumbnail; private uploadFile; remove(id: string): void; thumbFailed(id: string): void; formatSize(bytes: number): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }