import { ContentDocument, ContentShape, MathFontMetrics, PageSize, PositionedFormula, TextMeasurer } from "document-schema.js"; import { LayoutDocument, LayoutImageAsset, LayoutItem } from "pdf-codec"; //#region src/layout/slides.d.ts interface SlidesLayoutOptions { readonly measurer: TextMeasurer; readonly mathMetricsAt: (sizePt: number) => MathFontMetrics; } interface PresentationLayoutResult { readonly document: LayoutDocument; readonly formulas: readonly PositionedFormula[]; readonly pages: readonly PageSize[]; } type PresentationContentDocument = Extract; interface ShapeFormulaContext { readonly pageIndex: number; readonly positioned: PositionedFormula[]; readonly mathMetricsAt: (sizePt: number) => MathFontMetrics; } declare function convertShape(shape: ContentShape, slideHeightPt: number, pageIndex: number, measurer: TextMeasurer, images: Record, out: LayoutItem[], formulaContext?: ShapeFormulaContext): void; declare function convertPresentationToLayout(doc: PresentationContentDocument, options: SlidesLayoutOptions): PresentationLayoutResult; //#endregion export { PresentationLayoutResult, ShapeFormulaContext, SlidesLayoutOptions, convertPresentationToLayout, convertShape };