import { ClassInfo } from '../types';
export declare class ClassAnalyzer {
    private astParser;
    private sourceDir;
    private interfacePattern?;
    constructor(sourceDir: string, interfacePattern?: string);
    collectTokens(filePaths: string[]): Promise<{
        interfaces: Set<string>;
        classNames: Set<string>;
        abstractClasses: Set<string>;
    }>;
    analyzeFiles(filePaths: string[], tokens?: {
        interfaces: Set<string>;
        classNames: Set<string>;
        abstractClasses: Set<string>;
        factoryNames: Set<string>;
        valueNames: Set<string>;
    }): Promise<ClassInfo[]>;
    analyzeFile(filePath: string, allInterfaces: Set<string>, allClassNames: Set<string>, allAbstractClasses: Set<string>): Promise<ClassInfo[]>;
    private analyzeFileFromAST;
    private resolveDependencies;
    private filterUnusedClasses;
    private generateImportPath;
}
//# sourceMappingURL=class-analyzer.d.ts.map