import { markdown } from '@codemirror/lang-markdown'; import { Language, LanguageDescription } from '@codemirror/language'; import { Parser } from '@lezer/common'; import { Highlighter } from '@lezer/highlight'; /** * Configuration for the markdown parser used when highlighting `markdown`/`md` * input. Mirrors the relevant subset of `@codemirror/lang-markdown`'s `markdown()` * options so callers can opt into GFM (`base: markdownLanguage`) and custom Lezer * markdown extensions (e.g. app-specific node props, GFM alerts). * * Defaults match `@codemirror/lang-markdown`: a CommonMark base with no extensions. */ export type MarkdownConfig = Pick[0]>, 'base' | 'extensions'>; export declare function getMarkdownParser(input: string, languages?: LanguageDescription[], markdownConfig?: MarkdownConfig): Promise; export declare function getCodeParser(input: string, languageName: string, fallbackLanguage?: Language, languages?: LanguageDescription[], markdownConfig?: MarkdownConfig): Promise; export declare function highlightCode(languageName: string, input: string, highlighter: Highlighter | readonly Highlighter[], fallbackLanguage: Language | undefined, languages: LanguageDescription[] | undefined, callback: (text: string, style: string | null, from: number, to: number) => Output, markdownConfig?: MarkdownConfig): Promise;