UNPKG

@marp-team/marp-cli

Version:

A CLI interface for Marp and Marpit based converters

53 lines (52 loc) 1.64 kB
import { Marpit, Options, RenderResult } from '@marp-team/marpit'; import { OutlinePage } from '../engine/pdf/outline-plugin'; import { EngineTransition } from '../engine/transition-plugin'; type RendererResult = RenderResult & TemplateMeta & { length: number; size: RenderedSize; transition?: EngineTransition; outline?: OutlinePage[]; }; interface TemplateRendererOptions extends Options { modifier?: (marpit: Marpit) => void; } interface TemplateCoreOption { base?: string; notifyWS?: string; renderer: (tplOpts: TemplateRendererOptions) => RendererResult | Promise<RendererResult>; } export interface TemplateMeta { author: string | undefined; description: string | undefined; image: string | undefined; keywords: string[] | undefined; title: string | undefined; url: string | undefined; lang: string | undefined; } interface RenderedSize { height: number; width: number; } export type TemplateOption = TemplateBareOption | TemplateBespokeOption; interface TemplateBareOption { } interface TemplateBespokeOption { osc?: boolean; progress?: boolean; transition?: boolean; } export interface TemplateResult { rendered: RendererResult; result: string; } export type Template<T = TemplateOption> = ((locals: TemplateCoreOption & T) => Promise<TemplateResult>) & { printable?: boolean; }; export declare const bare: Template<TemplateBareOption>; export declare const bespoke: Template<TemplateBespokeOption>; declare const _default: { bare: Template<TemplateBareOption>; bespoke: Template<TemplateBespokeOption>; }; export default _default;