import { FileAttachment, UploadedFileMetadata } from './types.js'; export interface FileUploadManagerConfig { onError?: (error: string) => void; onStateChange?: () => void; } export declare class FileUploadManager { private _config; private _attachments; private _abortCallbacks; constructor(config: FileUploadManagerConfig); get pendingAttachments(): FileAttachment[]; get completedAttachments(): FileAttachment[]; get allAttachments(): FileAttachment[]; get isUploading(): boolean; updateConfig(config: Partial): void; addAttachment(fileId: string, metadata: Omit): void; removeAttachment(attachmentId: string): void; removeCompletedAttachment(attachmentId: string): void; updateProgress(fileId: string, progress: number): void; markComplete(fileId: string, uploadedFile: UploadedFileMetadata): void; markError(fileId: string, error: string): void; registerOnAbort(fileId: string, callback: () => void): void; abort(fileId: string): void; canSend(): boolean; getCompletedUploads(): UploadedFileMetadata[]; clear(): void; }