UNPKG

hybrid_plus

Version:

Hybrid Flutter Javascript SDK

139 lines (138 loc) 3.91 kB
import { ExecOptions } from "./core.ts"; /** * 文件实体 * @description 文件实体 * @param {string} path 文件本地路径 * @param {string?} url 文件远程地址 * @param {string?} base64 文件base64 * @param {string} name 文件名称 * @param {string} 远程文件存储id * @param {string} identifier 文件信息 * @param {number} size 文件大小 */ export interface FileEntity { name: string; identifier?: string; path: string; url?: string; id?: string; base64?: string; size: number; } /** 文件类型 */ export declare enum FileType { any = 0, media = 1, image = 2, video = 3, audio = 4, custom = 5 } /** * 文件选择选项 * @param {string} dialogTitle 选择页面标题 * @param {string?} initialDirectory 初始目录 * @param {FileType?} type 文件类型 * @param {string[]?} allowedExtensions 允许选择的文件类型 * @param {boolean} allowCompression 是否允许压缩 * @param {boolean} lockParentWindow 选择器窗口是否锁定在Native页面上方 * @param {boolean} toBase64 是否返回base64 * @param {boolean} upload 是否上传 * @param {boolean} multiple 是否多选 */ export interface PickFileOptions extends ExecOptions<FileEntity | FileEntity[], any> { upload?: boolean; multiple?: boolean; toBase64?: boolean; dialogTitle?: string; initialDirectory?: string; type?: FileType; allowedExtensions?: string[]; allowCompression?: boolean; lockParentWindow?: boolean; } /** * 打开本地文件选项 * @param {string} path 本地文件路径 */ export interface OpenFileOptions extends ExecOptions<any, any> { path: string; } /** * 打开网络文件选项 * @param {string} url 文件地址 * @param {string} name 文件名 */ export interface OpenNetworkFileOptions extends ExecOptions<any, any> { url: string; name: string; } /** * 判断文件是否存在选项 * @param {string} path 文件本地路径 */ export interface IsFileExistOptions extends ExecOptions<boolean, any> { path: string; } /** Http请求返回数据类型 */ export declare enum HttpResponseType { json = 0, stream = 1, plain = 2, bytes = 3 } /** * Http 请求选项 * @param {string} method 请求方式 * @param {number?} receiveTimeout 响应超时时间,单位ms * @param {number?} sendTimeout 发送超时事件,单位ms * @param {object} extra 额外配置 * @param {object} headers 请求头 * @param {boolean} preserveHeaderCase 是否应保留headers的大小写。 * @param {HttpResponseType} responseType 响应数据类型 * @param {string} contentType 请求内容类型 * @param {boolean} receiveDataWhenStatusError 状态码表示请求失败时是否检索数据 */ export interface HttpOptions { method?: string; receiveTimeout?: number; sendTimeout?: number; extra?: object; headers?: object; preserveHeaderCase?: boolean; responseType?: HttpResponseType; contentType?: string; receiveDataWhenStatusError?: boolean; followRedirects?: boolean; maxRedirects?: number; persistentConnection?: boolean; } /** * 文件下载选项 * @param {string} url 文件远程地址 * @param {string} bane 文件名 * @param {string} savePath 文件本地保存路径 * @param {HttpOptions} options Http请求选项 */ export interface DownloadOptions extends ExecOptions<any, any> { url: string; name?: string; savePath?: string; options?: HttpOptions; } /** * 文件上传选项 * @param {string} path 文件本地路径 * @param {string} server 服务器地址 */ export interface UploadOptions extends ExecOptions<any, any> { path: string; server?: string; } /** * 获取文件目录选项 * @param {string} path 自定义路径 */ export interface GetFileDirectoryOptions extends ExecOptions<string, any> { path?: string; }