UNPKG

@marp-team/marp-cli

Version:

A CLI interface for Marp and Marpit based converters

127 lines (126 loc) 4.38 kB
import type { FinderName } from './browser/finder'; import { ConvertType, type ConverterOption } from './converter'; import { ResolvableEngine, ResolvedEngine } from './engine'; import { TemplateOption } from './templates'; import { ThemeSet } from './theme'; type Overwrite<T, U> = Omit<T, Extract<keyof T, keyof U>> & U; interface IMarpCLIArguments { _?: string[]; allowLocalFiles?: boolean; author?: string; baseUrl?: string; 'bespoke.osc'?: boolean; 'bespoke.progress'?: boolean; 'bespoke.transition'?: boolean; browser?: string | string[]; browserPath?: string; browserProtocol?: string; browserTimeout?: number; configFile?: string | false; description?: string; engine?: string; html?: boolean; image?: string; images?: string; imageScale?: number; inputDir?: string; jpegQuality?: number; keywords?: string; notes?: boolean; ogImage?: string; output?: string | false; parallel?: number | boolean; pdf?: boolean; pdfNotes?: boolean; pdfOutlines?: boolean; 'pdfOutlines.pages'?: boolean; 'pdfOutlines.headings'?: boolean; pptx?: boolean; pptxEditable?: boolean; preview?: boolean; server?: boolean; template?: string; theme?: string; themeSet?: string[]; title?: string; url?: string; watch?: boolean; } export type IMarpCLIConfig = Overwrite<Omit<IMarpCLIArguments, '_' | 'configFile' | 'bespoke.osc' | 'bespoke.progress' | 'bespoke.transition' | 'pdfOutlines' | 'pdfOutlines.pages' | 'pdfOutlines.headings'>, { bespoke?: { osc?: boolean; progress?: boolean; transition?: boolean; }; browser?: 'auto' | FinderName | FinderName[]; browserProtocol?: 'cdp' | 'webdriver-bidi'; engine?: ResolvableEngine; html?: ConverterOption['html']; keywords?: string | string[]; lang?: string; options?: ConverterOption['options']; pdfOutlines?: boolean | { pages?: boolean; headings?: boolean; }; themeSet?: string | string[]; }>; export declare const DEFAULT_PARALLEL = 5; export declare class MarpCLIConfig { args: IMarpCLIArguments; conf: IMarpCLIConfig; confPath?: string; engine: ResolvedEngine; static moduleName: "marp"; static fromArguments(args: IMarpCLIArguments): Promise<MarpCLIConfig>; static isESMAvailable(): boolean; private constructor(); browserManagerOption(): { readonly finders: "chrome" | "firefox" | "edge" | ("chrome" | "firefox" | "edge")[] | undefined; readonly path: string | undefined; readonly protocol: "cdp" | "webDriverBiDi"; readonly timeout: number | undefined; }; converterOption(): Promise<{ readonly imageScale: number | undefined; readonly inputDir: string | undefined; readonly output: string | false | undefined; readonly parallel: number; readonly pdfNotes: boolean; readonly pdfOutlines: false | { pages: boolean; headings: boolean; }; readonly pptxEditable: boolean; readonly preview: boolean; readonly server: boolean; readonly template: string; readonly templateOption: TemplateOption; readonly themeSet: ThemeSet; readonly type: ConvertType; readonly allowLocalFiles: boolean; readonly baseUrl: string | undefined; readonly engine: import("./engine").Engine<typeof Marpit.Marpit>; readonly globalDirectives: { readonly author: string | undefined; readonly description: string | undefined; readonly image: string | undefined; readonly keywords: string[] | undefined; readonly theme: string | undefined; readonly title: string | undefined; readonly url: string | undefined; }; readonly html: boolean | import("@marp-team/marp-core/types/src/html/allowlist").HTMLAllowList | undefined; readonly jpegQuality: number; readonly lang: string; readonly options: Marpit.Options; readonly pages: boolean; readonly watch: boolean; }>; get files(): string[]; private inputDir; private loadConf; private loadTheme; } export declare const fromArguments: typeof MarpCLIConfig.fromArguments; export {};