@mdfriday/foundry
Version:
The core engine of MDFriday. Convert Markdown and shortcodes into fully themed static sites – Hugo-style, powered by TypeScript.
27 lines (26 loc) • 962 B
TypeScript
import { Item, Items } from "@pkg/md/parser/item";
import { Iterator } from '@pkg/md/parser/pagelexer';
export type ItemHandler = (item: Item) => Promise<void> | void;
export type IterHandler = (item: Item, iter: Iterator) => Promise<void> | void;
export interface SourceHandlers {
frontMatterHandler(): ItemHandler;
summaryHandler(): IterHandler;
bytesHandler(): ItemHandler;
shortcodeHandler(): IterHandler;
}
export declare class SourceParseInfo {
private source;
private posMainContent;
private itemsStep1;
private handlers;
constructor(source: Uint8Array, handlers: SourceHandlers);
private validateHandlers;
isEmpty(): boolean;
parse(): Promise<void>;
handle(): Promise<void>;
getMainContentPosition(): number;
getItems(): Items;
getSource(): Uint8Array;
private createError;
}
export declare function createSourceParseInfo(source: Uint8Array, handlers: SourceHandlers): SourceParseInfo;