import { DocCollection, Processor } from 'dgeni';
import { Symbol } from 'typescript';
import { ExportDoc } from '../../api-doc-types/ExportDoc';
import { Host } from '../../services/ts-host/host';
import { TsParser } from '../../services/TsParser';
import { SourcePattern } from './SourcePattern';
export declare function readTypeScriptModules(tsParser: TsParser, tsHost: Host, modules: any, exportSymbolsToDocsMap: Map<Symbol, ExportDoc>, createDocMessage: any, log: any): ReadTypeScriptModules;
export declare class ReadTypeScriptModules implements Processor {
    private tsParser;
    private host;
    private modules;
    private exportSymbolsToDocsMap;
    private createDocMessage;
    private log;
    $runAfter: string[];
    $runBefore: string[];
    $validate: {
        basePath: {
            presence: boolean;
        };
        hidePrivateMembers: {
            inclusion: boolean[];
        };
        ignoreExportsMatching: {};
        sortClassMembers: {
            inclusion: boolean[];
        };
        sourceFiles: {
            presence: boolean;
        };
    };
    sourceFiles: Array<SourcePattern | string>;
    basePath: string;
    hidePrivateMembers: boolean;
    sortClassMembers: boolean;
    ignoreExportsMatching: Array<string | RegExp>;
    ignoreExportsRegexes: RegExp[];
    constructor(tsParser: TsParser, host: Host, modules: any, exportSymbolsToDocsMap: Map<Symbol, ExportDoc>, createDocMessage: any, log: any);
    $process(docs: DocCollection): void;
    private addModuleDocs;
    private addExportDocs;
    private addExportDoc;
    private addMemberDocs;
    private addParamDocs;
}
