/** * 生成唯一 ID */ export declare function generateId(): string; /** * 延迟执行 */ export declare function delay(ms: number): Promise; /** * 格式化时间戳为文件名友好的格式 */ export declare function formatTimestamp(timestamp: number): string; /** * 解析版本号 */ export declare function parseVersion(version: string): number[]; /** * 比较版本号 * @returns 1 if v1 > v2, -1 if v1 < v2, 0 if equal */ export declare function compareVersions(v1: string, v2: string): number; /** * 检查是否为合并文件(merged-{timestamp}.json) * 排除 merged-up-to-* 标记文件(不以 .json 结尾) */ export declare function isMergedFile(filename: string): boolean; /** * 检查是否为数据文件(非合并) * 必须同时以 .json 结尾,排除原子写入产生的 .tmp 临时文件(data-*.json.tmp) */ export declare function isDataFile(filename: string): boolean; /** * 从 data/merged 文件名解析 timestamp(rev2 命名:data-{timestamp}.json) */ export declare function parseTimestampFromFilename(filename: string): number | null; /** * 计算字符串的 UTF-8 字节长度(跨平台,浏览器/Node 均可用 TextEncoder) */ export declare function byteLengthOf(str: string): number; /** * 生成「UTC 月份」键,形如 2026-08。 * 合并去重以 UTC 月为维度,确保不同时区/不同本地时钟的电脑看到同一份"月份", * 避免东京已是 8 月、洛杉矶仍是 7 月导致同一个月被合并两次。 */ export declare function utcMonthKey(date?: Date): string; /** * 上一个 UTC 月份的键(用于「每月合并上个月」语义)。 * 直接用 Date 回退一个月,规避各月天数不同的问题。 */ export declare function previousMonthKey(date?: Date): string; /** * 从 data 文件名(data-YYYY-MM-DDTHH-MM-SS-mmmZ.json)解析其所属 UTC 月份键。 * 用于判断文件是否属「本月」(本月文件不参与合并,留到下月)。 */ export declare function monthKeyOfDataFile(filename: string): string | null; //# sourceMappingURL=helpers.d.ts.map