import type { LocalUsageStore } from './store.js'; /** * OpenClaw usage watcher * * 启动后: * 1. 扫现有 session/trajectory jsonl, 全量解析 (warm start) * 2. fs.watch 监听新文件 + 现有文件 append * 3. 增量解析 (记录每个 file 的最后 byte offset) * 4. 调 store.appendBatch 持久化 */ export declare class OpenClawWatcher { private offsets; private watchers; private agentsDir; private agent_harness; private store; private verbose; constructor(opts: { store: LocalUsageStore; agentsDir?: string; verbose?: boolean; }); /** 启动:warm-scan 现有文件 + 注册 fs.watch */ start(): Promise; /** 扫一次现有所有文件 (manual trigger, 用于 cron poll fallback) */ scanAll(): Promise; /** 关闭 watcher */ stop(): void; private discoverUsageFiles; private scanFile; private eventToRecord; private sessionMessageToRecord; private registerWatchers; private log; private isUsageJsonlFile; } //# sourceMappingURL=openclaw-watcher.d.ts.map