2025-04-02 21:57:33 +08:00

71 lines
2.6 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import { Config, InternalConfig, UploadInfo } from '../upload';
import * as utils from '../utils';
interface UpHosts {
data: {
up: {
acc: {
main: string[];
backup: string[];
};
};
};
}
export declare function getUpHosts(accessKey: string, bucketName: string, protocol: InternalConfig['upprotocol']): Promise<UpHosts>;
export interface InitPartsData {
/** 该文件的上传 id 后续该文件其他各个块的上传,已上传块的废弃,已上传块的合成文件,都需要该 id */
uploadId: string;
/** uploadId 的过期时间 */
expireAt: number;
}
/**
* @param token 上传鉴权凭证
* @param bucket 上传空间
* @param key 目标文件名
* @param uploadUrl 上传地址
*/
export declare function initUploadParts(token: string, bucket: string, key: string | null | undefined, uploadUrl: string): utils.Response<InitPartsData>;
export interface UploadChunkData {
etag: string;
md5: string;
}
/**
* @param token 上传鉴权凭证
* @param index 当前 chunk 的索引
* @param uploadInfo 上传信息
* @param options 请求参数
*/
export declare function uploadChunk(token: string, key: string | null | undefined, index: number, uploadInfo: UploadInfo, options: Partial<utils.RequestOptions & {
md5: string;
}>): utils.Response<UploadChunkData>;
export declare type UploadCompleteData = any;
/**
* @param token 上传鉴权凭证
* @param key 目标文件名
* @param uploadInfo 上传信息
* @param options 请求参数
*/
export declare function uploadComplete(token: string, key: string | null | undefined, uploadInfo: UploadInfo, options: Partial<utils.RequestOptions>): utils.Response<UploadCompleteData>;
/**
* @param token 上传鉴权凭证
* @param key 目标文件名
* @param uploadInfo 上传信息
*/
export declare function deleteUploadedChunks(token: string, key: string | null | undefined, uploadinfo: UploadInfo): utils.Response<void>;
/**
* @param {string} url
* @param {FormData} data
* @param {Partial<utils.RequestOptions>} options
* @returns Promise
* @description 直传接口
*/
export declare function direct(url: string, data: FormData, options: Partial<utils.RequestOptions>): Promise<UploadCompleteData>;
export declare type UploadUrlConfig = Partial<Pick<Config, 'upprotocol' | 'uphost' | 'region' | 'useCdnDomain'>>;
/**
* @param {UploadUrlConfig} config
* @param {string} token
* @returns Promise
* @description 获取上传 url
*/
export declare function getUploadUrl(_config: UploadUrlConfig, token: string): Promise<string>;
export {};