import { BridgeUrl, StartUploadResponse, FinishUploadResponse, GetDownloadLinksResponse, NetworkRequestConfig, FinishUploadPayload, FinishMultipartUploadPayload } from './types'; import { AppDetails } from '../shared'; import { BasicAuth } from '../auth/types'; import { StartUploadPayload } from './types'; export * from './types'; export declare class DuplicatedIndexesError extends Error { constructor(); } export declare class InvalidFileIndexError extends Error { constructor(); } export declare class InvalidUploadIndexError extends Error { constructor(); } export declare class InvalidUploadSizeError extends Error { constructor(); } export declare class FileTooSmallForMultipartError extends Error { constructor(); } export declare class InvalidMultipartValueError extends Error { constructor(); } export declare class Network { private readonly client; private readonly appDetails; private readonly auth; static client(apiUrl: BridgeUrl, appDetails: AppDetails, opts: { bridgeUser: string; userId: string; }): Network; private constructor(); get credentials(): BasicAuth; startUpload(bucketId: string, payload: StartUploadPayload, parts?: number): Promise; finishUpload(bucketId: string, payload: FinishUploadPayload): Promise; finishMultipartUpload(bucketId: string, payload: FinishMultipartUploadPayload): Promise; getDownloadLinks(bucketId: string, fileId: string, token?: string): Promise; deleteFile(bucketId: string, fileId: string): Promise; /** * Creates entries for every upload in the request, returns the urls to upload * @param bucketId * @param uploads */ static startUpload(bucketId: string, payload: StartUploadPayload, { client, appDetails, auth }: NetworkRequestConfig, parts?: number): Promise; /** * Finishes the upload of a file * @param bucketId * @param index * @param shards */ private static finishUpload; /** * Gets the download links for a file * @param bucketId * @param file */ private static getDownloadLinks; /** * Deletes a file * @param bucketId * @param file */ private static deleteFile; /** * Gets headers with basic auth * @param appDetails * @param auth */ private static headersWithBasicAuth; private static headersWithAuthToken; }