import type { EnvInfo, EnvCollector } from '@cicctencent/agent-core'; /** * Node.js 运行时环境采集器 * * 在 agent-core 的 LocalEnvCollector 基础上,增加: * - Python 版本探测 * - Node.js 版本(详细) * - 包管理器版本(pnpm/yarn/npm) * * 使用场景:Agent 需要知道运行环境中有哪些工具可用, * 以便正确选择脚本执行方式(Node.js vs Python)和包管理器。 */ export declare class NodeEnvCollector implements EnvCollector { private cachedInfo; private cacheReady; private pending; /** * 异步预加载环境信息(不阻塞事件循环) * * 使用 child_process.exec 异步探测 Python / pnpm / yarn / npm 版本, * 完成后写入 cachedInfo。应在应用启动时调用。 */ preload(): void; collect(): Promise; /** * 同步获取环境信息(供需要立即返回的场景使用) */ collectSync(): EnvInfo; /** * 异步采集(不阻塞事件循环) * 并行执行所有版本探测命令,完成后组装 EnvInfo */ private doCollectAsync; /** * 同步采集(阻塞,仅在预加载未完成时首次调用兜底) */ private doCollectSync; private buildEnvInfo; private execAsync; private execSyncSafe; format(info: EnvInfo): string; private formatBytes; } export declare function getEnvCollector(): NodeEnvCollector; /** * 预加载环境信息(应用启动时调用) */ export declare function preloadEnvInfo(): void; /** * 采集环境信息(同步,返回缓存或立即采集) */ export declare function collectEnvInfo(): EnvInfo; /** * 重置单例(测试用) */ export declare function resetEnvCollector(): void; //# sourceMappingURL=env-collector.d.ts.map