@wu_rong_tai/react-native-cos-xml
Version:
Tencent COS XML SDK for React Native
53 lines (52 loc) • 1.63 kB
TypeScript
export declare type progressListener = (processedBytes: number, targetBytes: number) => void;
export declare type ProgressEvent = {
requestId: string;
processedBytes: number;
targetBytes: number;
};
export declare type UploadObjectRequest = {
requestId?: string;
bucket: string;
object: string;
fileUri: string;
};
export declare type UploadObjectResult = {
Bucket: string;
Key: string;
Location: string;
ETag: string;
VersionID: string | null;
};
export declare type DownloadObjectRequest = {
requestId?: string;
bucket: string;
object: string;
filePath?: string;
};
export declare type Secret = {
secretId: string;
secretKey: string;
};
export declare type SessionCredential = {
tmpSecretId: string;
tmpSecretKey: string;
sessionToken: string;
expiredTime: number;
beginTime: number;
};
declare class COSTransferManagerService {
private callbacks;
private requests;
private emitter;
private initialized;
constructor();
initWithPlainSecret(configurations: object, credential: Secret): void;
initWithSessionCredentialCallback(configurations: object, callback: () => Promise<SessionCredential>): void;
upload(request: UploadObjectRequest, progressListener?: progressListener): Promise<UploadObjectResult>;
pause(request: UploadObjectRequest): Promise<void>;
download(request: DownloadObjectRequest, progressListener?: progressListener): Promise<string>;
private removeRequestIdRecord;
private uniqueRequestId;
}
declare const _default: COSTransferManagerService;
export default _default;