@iota-big3/sdk-production
Version:
Production readiness tools and utilities for SDK
88 lines • 2.08 kB
TypeScript
/**
* API Documentation Generator
* Generates comprehensive API documentation from TypeScript code
*/
export interface ApiDoc {
name: string;
type: 'class' | 'interface' | 'function' | 'enum';
description?: string;
methods?: MethodDoc[];
properties?: PropertyDoc[];
parameters?: ParameterDoc[];
returns?: string;
examples?: string[];
}
export interface MethodDoc {
name: string;
description?: string;
parameters: ParameterDoc[];
returns?: string;
examples?: string[];
}
export interface PropertyDoc {
name: string;
type: string;
description?: string;
optional?: boolean;
}
export interface ParameterDoc {
name: string;
type: string;
description?: string;
optional?: boolean;
}
export declare class ApiDocGenerator {
private config;
private program;
private checker;
constructor(config: {
tsConfigPath: string;
outputFormat?: 'markdown' | 'json' | 'html';
includePrivate?: boolean;
});
/**
* Generate documentation for all source files
*/
generateDocs(): Promise<Map<string, ApiDoc[]>>;
/**
* Extract documentation from a source file
*/
private extractDocs;
/**
* Extract class documentation
*/
private extractClassDoc;
/**
* Extract method documentation
*/
private extractMethodDoc;
/**
* Extract property documentation
*/
private extractPropertyDoc;
/**
* Extract interface documentation
*/
private extractInterfaceDoc;
/**
* Extract function documentation
*/
private extractFunctionDoc;
/**
* Extract parameter documentation
*/
private extractParameterDoc;
/**
* Get JSDoc comment for a symbol
*/
private getJsDocComment;
/**
* Get return type of a function/method
*/
private getReturnType;
/**
* Generate markdown documentation
*/
generateMarkdown(docs: Map<string, ApiDoc[]>): Promise<string>;
}
//# sourceMappingURL=api-doc-generator.d.ts.map