import { Project, SourceFile } from 'ts-morph';
import { AnalyzerOptions } from '../types/index.js';
/**
 * TypeScriptプロジェクトの初期化と管理を行うクラス
 */
export declare class ProjectManager {
    private project;
    private basePath;
    /**
     * コンストラクタ
     * @param options 設定オプション
     */
    constructor(options: AnalyzerOptions);
    /**
     * プロジェクトを初期化する
     * @param tsConfigPath tsconfig.jsonのパス
     * @param includePatterns 含めるファイルパターン
     * @param excludePatterns 除外するファイルパターン
     * @returns 初期化されたプロジェクト
     */
    private initializeProject;
    /**
     * プロジェクトインスタンスを取得する
     * @returns プロジェクトインスタンス
     */
    getProject(): Project;
    /**
     * ベースパスを取得する
     * @returns ベースパス
     */
    getBasePath(): string;
    /**
     * ファイルをプロジェクトに追加する
     * @param filePath ファイルパス
     * @returns 追加されたかどうか
     */
    addFile(filePath: string): boolean;
    /**
     * ファイルをプロジェクトから削除する
     * @param filePath ファイルパス
     * @returns 削除されたかどうか
     */
    removeFile(filePath: string): boolean;
    /**
     * プロジェクト内のすべてのソースファイルを取得
     */
    getSourceFiles(): SourceFile[];
}
//# sourceMappingURL=ProjectManager.d.ts.map