import { type ParsedScene, type ParsedNode } from '../../tscn/tscn-parser.js'; export interface SceneScan { /** res:// 相对路径 */ scenePath: string; absPath: string; parsed: ParsedScene | null; parseError?: string; } export interface ProjectScan { root: string; scenes: SceneScan[]; /** res:// 相对 .gd 路径 */ scripts: string[]; stats: { sceneCount: number; scriptCount: number; connectionCount: number; parseErrors: number; }; } /** 绝对路径 → res:// 相对(正斜杠) */ export declare function toResPath(root: string, absPath: string): string; /** 项目级扫描:全部 .tscn 逐个 parse + 全部 .gd 列表 */ export declare function scanProject(projectPath: string): ProjectScan; /** 节点绑定的脚本 res:// 路径(script = ExtResource("id") → extResources.path)。无脚本返回 null。 */ export declare function nodeScriptPath(node: ParsedNode, scene: ParsedScene): string | null; /** 场景内全部 node→脚本 对(含递归子节点)。instance 场景的脚本在子场景文件内,不在此列。 */ export declare function sceneScriptBindings(scene: ParsedScene): Array<{ nodePath: string; scriptPath: string; }>;