import { Token } from "markdown-it"; import { CompileMDVOptions, MDVNode } from "@mdv/types/mdv-config"; /** * Parse frontmatter * * Extracts YAML frontmatter from markdown and returns content and metadata * * @param mdContent * @returns content, meta */ export declare function parseFrontmatter(mdContent: string): { content: string; meta: { [key: string]: any; }; }; /** * Markdown parser to AST * * Converts markdown to Abstract Syntax Tree * * @returns ast, shikis, imports, components * * @param mdContent * @param shikiPath * @param customComponents */ export declare function markdownToAST(mdContent: string, shikiPath: string, customComponents?: Record): Promise<{ ast: MDVNode; shikis: Record; imports: string[]; components: string[]; }>; /** * Validate MDV containers * * Checks for unmatched closing containers * * Checks for missing closing containers * * Throws error if validation fails * * @param tokens */ export declare function validateMDVContainers(tokens: Token[]): void; /** * Transform AST for inline and blocked components, dynamic tables, etc. * * @param ast * @returns */ export declare function transformAST(ast: MDVNode): MDVNode; /** * Merge custom syntaxes for props line e.g. classes, ids, etc. (.class, #id, etc.) * */ export declare function compilePropsLine(propsLine?: string): { tag?: string; type?: 'component' | 'slot'; slotProps?: string; props?: string; }; export declare function extractTrailingProps(line?: string): { start: number; props: string; } | undefined; /** * Convert AST to template * * @returns * @param ast */ export declare function astToTemplate(ast: MDVNode): string; /** * Extract user