UNPKG

@mdfriday/foundry

Version:

The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.

82 lines 2.21 kB
import { TocFragments, Header, Link, Paragraph } from '../type'; /** * Fragment represents a single TOC entry */ export interface Fragment { id: string; text: string; level: number; children?: Fragment[]; } /** * TableOfContentsImpl implements TocFragments */ export declare class TableOfContentsImpl implements TocFragments { private fragments; constructor(fragments?: Fragment[]); toHTML(startLevel: number, stopLevel: number, ordered: boolean): string; private filterByLevel; private renderFragments; private escapeHTML; addFragment(fragment: Fragment): void; getFragments(): Fragment[]; } /** * HeaderImpl implements Header interface */ export declare class HeaderImpl implements Header { private _name; private _level; private _links; private _paragraphs; private _listParagraphs; constructor(_name: string, _level: number, _links?: Link[], _paragraphs?: Paragraph[], _listParagraphs?: Paragraph[]); name(): string; level(): number; links(): Link[]; paragraphs(): Paragraph[]; listParagraphs(): Paragraph[]; addLink(link: Link): void; addParagraph(paragraph: Paragraph): void; addListParagraph(paragraph: Paragraph): void; } /** * LinkImpl implements Link interface */ export declare class LinkImpl implements Link { private _text; private _url; constructor(_text: string, _url: string); text(): string; url(): string; } /** * ParagraphImpl implements Paragraph interface */ export declare class ParagraphImpl implements Paragraph { private _text; constructor(_text: string); text(): string; } /** * TOC Builder utility class */ export declare class TOCBuilder { private fragments; private stack; addHeading(text: string, level: number, id: string): void; build(): TableOfContentsImpl; reset(): void; } /** * Auto ID generation utilities */ export declare class AutoIDGenerator { private usedIds; generateID(text: string, type?: 'github' | 'github-ascii' | 'blackfriday'): string; private githubStyle; private githubAsciiStyle; private blackfridayStyle; reset(): void; } //# sourceMappingURL=tableofcontents.d.ts.map