import type { Mixedbread } from "../client.mjs"; import type { FileObject, FileCreateParams } from "../resources/files/files.mjs"; import type { RequestOptions } from "../internal/request-options.mjs"; import { APIPromise } from "../core/api-promise.mjs"; export interface PartUploadEvent { /** 1-based part number that just completed. */ partNumber: number; /** Total number of parts in this upload. */ totalParts: number; /** Size of this part in bytes. */ partSize: number; /** Cumulative bytes uploaded so far. */ uploadedBytes: number; /** Total file size in bytes. */ totalBytes: number; } export interface MultipartUploadConfig { /** Maximum number of concurrent part uploads. Defaults to 5. */ concurrency?: number; /** File size threshold in bytes above which multipart upload is used. Minimum 5MB. Defaults to 100MB. */ threshold?: number; /** Size of each part in bytes. Minimum 5MB. Must not produce more than 10,000 parts. Defaults to 100MB. */ partSize?: number; /** Called after each part is successfully uploaded. */ onPartUpload?: (event: PartUploadEvent) => void; } export declare class MultipartUploadError extends Error { readonly uploadId: string; constructor(message: string, uploadId: string); } export declare function handleFileCreate(client: Mixedbread, body: FileCreateParams & { multipartUpload?: MultipartUploadConfig; }, options?: RequestOptions): APIPromise; //# sourceMappingURL=upload-file.d.mts.map