/** * External File Upload API Client * * Handles communication with the external file upload service. * Provides methods for initiating uploads and marking them complete. */ export interface InitiateUploadRequest { owner_type: 'conversation' | 'user'; file_name: string; mime_type: string; document_type?: string; storage_backend_name?: string; } export interface InitiateUploadResponse { content_id: string; upload_url: string; status: string; created_at: string; } export interface UploadCompleteRequest { content_id: string; } export interface UploadCompleteResponse { content_id: string; status: 'uploaded' | 'processing' | 'available'; file_size: number; mime_type: string; } export declare class FileUploadApiError extends Error { statusCode?: number | undefined; response?: any | undefined; constructor(message: string, statusCode?: number | undefined, response?: any | undefined); } export declare class FileUploadApi { private apiUrl; private getAuthHeaders; constructor(apiUrl: string, getAuthHeaders: () => Promise> | Record); /** * Initiate a file upload and get a presigned URL */ initiateUpload(request: InitiateUploadRequest): Promise; /** * Mark an upload as complete */ uploadComplete(contentId: string): Promise; } //# sourceMappingURL=fileUploadApi.d.ts.map