import type { FikaDocument } from './types'; import type { PresentationExportOptions } from '../hooks/useExport'; export interface FikaExportProgress { phase: 'preparing' | 'rendering' | 'packaging' | 'complete'; completed: number; total: number; /** Normalized 0..1; reaches 1 only when downloadable bytes are ready. */ progress: number; } export interface FikaExportOptions extends Pick { /** Runtime assets/chunks when exporting before mounting an editor. */ assetBaseUrl?: string; /** PDF raster width in pixels. Default 2560, maximum 8192. */ width?: number; /** JPEG avoids PNG decode/recompression in the PDF writer. Default image/jpeg. */ imageFormat?: 'image/jpeg' | 'image/png'; /** JPEG quality, 0–1. Default 0.95. PNG remains available for lossless output. */ quality?: number; /** Resource timeout per slide in milliseconds. Default 30000. */ timeoutMs?: number; onProgress?: (completed: number, total: number, detail?: FikaExportProgress) => void; } /** Editable PPTX bytes. No mount, dialog, browser download, or editor mutations. */ export declare function exportPresentationPptx(document: FikaDocument, options?: FikaExportOptions): Promise; /** High-resolution image PDF, one slide per page, using Fika's existing painter. */ export declare function exportPresentationPdf(document: FikaDocument, options?: FikaExportOptions): Promise;