import { TransferFile } from "../../types" ; /**
 * An upload Provider provides blymp.io with file data for uploading
 */ export default interface UploadProvider { /**
     * Get the download processor needed for this Upload Provider
     */ getDownloadProcessor ( ) : string ; /**
     * Returns the number of files that will be uploaded
     */ getNumberOfFiles ( ) : number ; param index param beforePrepare getFileInfo ( index , beforePrepare ) : TransferFile ; param index param start param end getFileSlice ( index , start , end ) : Promise < ArrayBuffer | string > ; param index prepareFile ( index ) : Promise < void > ; /**
     * Get an estimated file size for all files
     */ getEstimatedTotalSize ( ) : number ; }