@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
31 lines (30 loc) • 1.61 kB
TypeScript
import { Highlighter, HighlightResult, CodeblockContext, FlexiWriter } from '../type';
import { HighlightConfig } from './config';
export declare class HighlightResultImpl implements HighlightResult {
private wrappedContent;
private innerContent;
constructor(wrappedContent: string, innerContent: string);
wrapped(): string;
inner(): string;
}
export declare class DefaultHighlighter implements Highlighter {
private config;
constructor(config: HighlightConfig);
highlight(code: string, lang: string, opts?: any): Promise<string>;
highlightCodeBlock(ctx: CodeblockContext, opts?: any): Promise<HighlightResult>;
renderCodeblock(cctx: any, w: FlexiWriter, ctx: CodeblockContext): Promise<void>;
isDefaultCodeBlockRenderer(): boolean;
private escapeHTML;
private addLineNumbers;
}
export declare class ExternalHighlighter implements Highlighter {
private highlightFn;
private config;
constructor(highlightFn: (code: string, lang: string) => Promise<string>, config?: HighlightConfig);
highlight(code: string, lang: string, opts?: any): Promise<string>;
highlightCodeBlock(ctx: CodeblockContext, opts?: any): Promise<HighlightResult>;
renderCodeblock(cctx: any, w: FlexiWriter, ctx: CodeblockContext): Promise<void>;
isDefaultCodeBlockRenderer(): boolean;
}
export declare function createDefaultHighlighter(config?: Partial<HighlightConfig>): DefaultHighlighter;
export declare function createExternalHighlighter(highlightFn: (code: string, lang: string) => Promise<string>, config?: Partial<HighlightConfig>): ExternalHighlighter;