/**
 * Documentation Generator Tool
 *
 * Automatically generates documentation from TypeScript/JavaScript code:
 * - JSDoc extraction and parsing
 * - API documentation generation
 * - README generation
 * - Markdown output
 */
export interface DocEntry {
    name: string;
    kind: 'function' | 'class' | 'interface' | 'type' | 'variable' | 'enum';
    description?: string;
    params?: ParamDoc[];
    returns?: ReturnDoc;
    examples?: string[];
    deprecated?: string;
    since?: string;
    see?: string[];
    file: string;
    line: number;
    exported: boolean;
    signature?: string;
}
export interface ParamDoc {
    name: string;
    type?: string;
    description?: string;
    optional?: boolean;
    defaultValue?: string;
}
export interface ReturnDoc {
    type?: string;
    description?: string;
}
export interface ModuleDoc {
    name: string;
    path: string;
    description?: string;
    entries: DocEntry[];
}
export interface GeneratedDocs {
    modules: ModuleDoc[];
    generatedAt: Date;
    totalEntries: number;
}
export interface GeneratorOptions {
    /** Root directory to scan */
    rootDir?: string;
    /** Glob patterns for files to include */
    include?: string[];
    /** Glob patterns for files to exclude */
    exclude?: string[];
    /** Only include exported items */
    exportedOnly?: boolean;
    /** Include private items (starting with _) */
    includePrivate?: boolean;
}
/**
 * Generate documentation for a project
 */
export declare function generateDocs(options?: GeneratorOptions): Promise<GeneratedDocs>;
/**
 * Format documentation as Markdown
 */
export declare function formatDocsAsMarkdown(docs: GeneratedDocs): string;
/**
 * Format documentation as JSON
 */
export declare function formatDocsAsJson(docs: GeneratedDocs): string;
/**
 * Generate and write documentation to file
 */
export declare function generateDocsToFile(outputPath: string, options?: GeneratorOptions, format?: 'markdown' | 'json'): Promise<void>;
export default generateDocs;
