synapse-react-client
Version:
[](https://badge.fury.io/js/synapse-react-client) [](https://github.com/prettier/prettie
32 lines • 1.55 kB
TypeScript
import { ProgressCallback } from '@/synapse-client/index';
import { BaseFileUploadArgs } from '@/utils/hooks/useUploadFileEntity/useUploadFiles';
import { FilePreparedForUpload } from './usePrepareFileEntityUpload';
export type UploadFileStatus = 'PREPARING' | 'UPLOADING' | 'PAUSED' | 'CANCELED_BY_USER' | 'FAILED' | 'COMPLETE';
export type TrackedUploadProgress = {
filePreparedForUpload: FilePreparedForUpload;
progress: ProgressCallback;
abortController: AbortController;
status: UploadFileStatus;
failureReason?: string;
fileHandleId?: string;
};
export declare const PENDING_UPLOAD_STATES: TrackedUploadProgress['status'][];
/**
* Hook used to track the state of multiple file uploads, providing methods that can be used to interact with the upload state.
*/
export declare function useTrackFileUploads(): {
trackedUploadProgress: Map<File, TrackedUploadProgress>;
setProgress: (file: File, progress: ProgressCallback) => void;
setIsUploading: (file: File) => void;
trackNewFiles: <T extends BaseFileUploadArgs = BaseFileUploadArgs>(...preparedFiles: T[]) => Map<File, TrackedUploadProgress>;
bytesPendingUpload: number;
pauseUpload: (file: File) => void;
cancelUpload: (file: File) => void;
removeUpload: (file: File) => void;
setComplete: (file: File, fileHandleId: string) => void;
setFailed: (file: File, failureReason: string) => void;
isUploading: boolean;
isUploadComplete: boolean;
activeUploadCount: number;
};
//# sourceMappingURL=useTrackFileUploads.d.ts.map