ai-knowledge-hub
Version:
MCP server that provides unified access to organizational knowledge across multiple platforms (local docs, Guru, Notion)
58 lines (57 loc) • 1.78 kB
TypeScript
/**
* High-Level Conversion Utilities
* Main entry points for markdown <-> notion conversions plus helper utilities
*/
import { ConversionOptions, ConversionResult } from '../types/markdown.js';
import { NotionBlock } from '../types/notion.js';
import { NotionBlockData } from './notion-blocks.js';
/**
* Convert markdown content to Notion blocks
*/
export declare function markdownToNotion(markdown: string, options?: Partial<ConversionOptions>): ConversionResult;
/**
* Convert Notion blocks to markdown
*/
export declare function notionToMarkdown(blocks: (NotionBlock | NotionBlockData)[], options?: Partial<ConversionOptions>): ConversionResult;
/**
* Parse markdown and extract title
*/
export declare function extractTitleFromMarkdown(markdown: string): string | null;
/**
* Extract page title from Notion page properties
*/
export declare function extractPageTitle(page: {
properties?: Record<string, unknown>;
}): string;
/**
* Validate markdown content
*/
export declare function validateMarkdown(content: string): {
isValid: boolean;
errors: string[];
warnings: string[];
};
/**
* Extract headings from markdown content
*/
export declare function extractHeadings(markdown: string): Array<{
level: number;
text: string;
anchor: string;
}>;
/**
* Calculate word count from markdown content
*/
export declare function getWordCount(markdown: string): number;
/**
* Check if content contains frontmatter
*/
export declare function hasFrontmatter(markdown: string): boolean;
/**
* Remove frontmatter from markdown content
*/
export declare function removeFrontmatter(markdown: string): string;
/**
* Extract frontmatter as object
*/
export declare function extractFrontmatter(markdown: string): Record<string, string | string[]>;