vue-markdown-unified
Version:
Vue3 VNode to render markdown
38 lines (37 loc) • 939 B
TypeScript
import { Components } from 'hast-util-to-jsx-runtime';
import type { Pluggable } from 'unified';
export interface PrismOptions {
ignoreMissing?: Boolean;
defaultLanguage?: string;
showLineNumbers?: Boolean | string[] | false;
}
export interface VueMarkdownOptions {
animated?: Boolean;
enableSanitize?: Boolean;
isBreaks?: Boolean;
enableLatex?: Boolean;
allowHtml?: Boolean;
/**
* List of remark plugins to use.
*/
remarkPlugins?: Pluggable[];
/**
* List of rehype plugins to use.
*/
rehypePlugins?: Pluggable[];
/**
* Options for `remark-rehype`.
*/
remarkRehypeOptions?: Record<string, unknown>;
/**
* Components to use for rendering.
*/
components?: Components;
prismOptions?: PrismOptions;
}
export interface MarkdownProps extends VueMarkdownOptions {
/**
* Markdown content to render.
*/
content: string;
}