UNPKG

europa-core

Version:

Europa core engine for converting HTML into valid Markdown

25 lines (24 loc) 998 B
import { Plugin } from "./Plugin"; import { PluginApi } from "./PluginApi"; /** * A collection of plugins that hook into the {@link EuropaCore} conversion process. */ export interface Preset { /** * The plugins that belong to this preset. */ readonly plugins?: Plugin[]; } /** * Provider a plugin preset compatible with {@link EuropaCore}. * * Invoked internally by {@link PluginManager#addPreset} in order to get the preset and is passed an `api`, which it can * choose to use or not, although typically this will be passed to plugin providers to build its list of plugins. * * Any error that is thrown will bubble up and prevent any plugins within the preset from being added. * * @param api - The {@link PluginApi} that provides useful methods for preset and plugin providers. * @return The provided {@link Preset}. * @throws If a problem occurs while providing the preset or any of its plugins. */ export declare type PresetProvider = (api: PluginApi) => Preset;