import { Node } from 'ts-morph';
import { SymbolType } from '../types';
/**
 * ノード操作に関するユーティリティクラス
 */
export declare class NodeUtils {
    /**
     * ノードのコンテキスト情報を取得する
     * @param node 対象ノード
     * @returns コンテキスト情報
     */
    getNodeContext(node: Node): string;
    /**
     * シンボルの種類を判定する
     * @param definitionNode 定義ノード
     * @returns シンボルの種類
     */
    determineSymbolType(definitionNode: Node): SymbolType;
    /**
     * 参照が有効かどうかをチェックする
     * @param node 参照ノード
     * @param definitionNode 定義ノード
     * @returns 有効な参照かどうか
     */
    isValidReference(node: Node, definitionNode: Node): boolean;
    /**
     * ノードの型情報を取得する
     * @param node 対象ノード
     * @returns 型情報
     */
    getNodeTypeInfo(node: Node): string;
}
