UNPKG

taro-hooks

Version:
18 lines (17 loc) 939 B
import Taro from '@tarojs/taro'; import type { UploadTask, DownloadTask } from '@tarojs/taro'; import type { ExcludeOption, PromiseAction } from '../type'; export type CommonOption<R> = { afterSend?: (task: R) => void; }; export type Task = UploadTask.UploadTaskPromise | DownloadTask.DownloadTaskPromise; export type ListenOptions = Partial<Task & CommonOption<Task>>; export type UploadOption = ExcludeOption<Taro.uploadFile.Option> & Partial<UploadTask.UploadTaskPromise> & CommonOption<UploadTask>; export type DownloadOption = ExcludeOption<Taro.downloadFile.Option> & Partial<DownloadTask.DownloadTaskPromise> & CommonOption<DownloadTask>; export type Upload = PromiseAction<UploadOption, Taro.uploadFile.SuccessCallbackResult>; export type Download = PromiseAction<DownloadOption, Taro.downloadFile.FileSuccessCallbackResult>; declare function useFile(): { upload: Upload; download: Download; }; export default useFile;