moxygen
Version:
Doxygen XML to Markdown converter
59 lines • 1.92 kB
TypeScript
import type { Filters, MoxygenOptions } from './types.js';
export declare const defaultFilters: Filters;
export declare const defaultOptions: MoxygenOptions;
export interface GeneratedPage {
slug: string;
title: string;
kind: string;
module?: string;
namespace?: string;
header?: string;
description: string;
searchEntries?: GeneratedSearchEntry[];
/** Rendered markdown body (no frontmatter; use metadata fields directly) */
markdown: string;
}
export interface GeneratedSearchEntry {
title: string;
content: string;
anchor?: string;
category: string;
symbolKind?: string;
owner?: string;
ownerKind?: string;
namespace?: string;
qualifiedName?: string;
}
interface CompoundMeta {
slug: string;
title: string;
kind: string;
module?: string;
namespace?: string;
header?: string;
description: string;
}
/**
* Generate YAML frontmatter string from metadata.
*/
export declare function generateFrontmatter(meta: CompoundMeta): string;
/**
* Parse Doxygen XML and return structured pages with rendered markdown.
* Markdown is the body only; metadata is in the structured fields.
* Uses Doxygen groups (@defgroup/@addtogroup) as the primary module
* organization when available, falling back to namespaces.
*/
export declare function generate(options: Partial<MoxygenOptions> & {
directory: string;
}): Promise<GeneratedPage[]>;
/**
* Parse Doxygen XML and render Markdown output to disk.
*/
export declare function run(options: Partial<MoxygenOptions> & {
directory: string;
}): Promise<void>;
export { loadIndex } from './parser.js';
export { filterChildren, toArray, toFilteredArray } from './compound.js';
export { renderCompound, resolveRefs, compoundPath } from './helpers.js';
export type { MoxygenOptions, Compound, Member, References, Filters } from './types.js';
//# sourceMappingURL=index.d.ts.map