import { AgoraLogUploadTask } from './type'; import { AgoraHttpAuthHeadersProvider } from '../../../core/services/type'; export type AgoraUploadTask = { id: number; file: File; }; export interface AgoraUploadHandler { handleUpload(task: T): Promise; } export type BaseUploadParams = { appId: string; appVersion: string; }; export declare class AgoraLogUploadHandler implements AgoraUploadHandler { private _authHeadersProvider; protected _policyHost: string; protected _httpTimeout: number; protected _osName: string; protected _osVersion: string; protected _appId: string; protected _appVersion: string; protected _platform: string; constructor({ appId, appVersion }: BaseUploadParams, _authHeadersProvider: AgoraHttpAuthHeadersProvider); handleUpload(task: AgoraLogUploadTask): Promise; private _putFile; private _fetchPresignedArgs; private _request; } export declare class AgoraWebLogUploadHandler extends AgoraLogUploadHandler { constructor(uploadParams: BaseUploadParams, authHeadersProvider: AgoraHttpAuthHeadersProvider); } export declare class AgoraElectronLogUploadHandler extends AgoraLogUploadHandler { constructor(uploadParams: BaseUploadParams, authHeadersProvider: AgoraHttpAuthHeadersProvider); }