import type Mixedbread from "@mixedbread/sdk"; import type { FileCreateParams } from "@mixedbread/sdk/resources/stores"; export declare const UPLOAD_TIMEOUT: number; export interface MultipartUploadOptions { threshold?: number; partSize?: number; concurrency?: number; } /** * Compute multipart config based on file size and system resources. * User-provided overrides take precedence. */ export declare function resolveMultipartConfig(fileSize: number, overrides?: MultipartUploadOptions): { threshold: number; partSize: number; concurrency: number; }; export interface UploadProgress { fileName: string; partsCompleted: number; totalParts: number; uploadedBytes: number; totalBytes: number; } export interface UploadFileOptions { metadata?: Record; strategy?: FileCreateParams.Config["parsing_strategy"]; externalId?: string; multipartUpload?: MultipartUploadOptions; onProgress?: (progress: UploadProgress) => void; } export interface FileToUpload { path: string; strategy: FileCreateParams.Config["parsing_strategy"]; metadata: Record; } export interface UploadResults { uploaded: number; updated: number; skipped: number; failed: number; successfulSize: number; } /** * Upload a single file to a store */ export declare function uploadFile(client: Mixedbread, storeIdentifier: string, filePath: string, options?: UploadFileOptions): Promise; /** * Upload multiple files to a store with batch processing */ export declare function uploadFilesInBatch(client: Mixedbread, storeIdentifier: string, files: FileToUpload[], options: { unique: boolean; existingFiles: Map; parallel: number; showStrategyPerFile?: boolean; multipartUpload?: MultipartUploadOptions; }): Promise; //# sourceMappingURL=upload.d.ts.map