/** 审计轨迹条目 */ export interface AuditTrailEntry { /** Agent 身份码(agentId 或 shortCode) */ agentId: string; /** 时间戳(ISO 8601) */ timestamp: string; /** 审计规则 ID(如 A3) */ ruleId: string; /** 审计结果 */ severity: 'PASS' | 'WARN' | 'FAIL'; /** 一行摘要 */ summary: string; /** 设备指纹(SHA-256(hostname + platform + arch) 前 8 位) */ deviceFingerprint: string; } /** 聚合统计 */ export interface TrailAggregate { /** 总审计次数 */ total: number; /** 通过次数 */ passed: number; /** 失败次数 */ failed: number; /** 命中的规则列表 */ rulesHit: string[]; } /** * 计算设备指纹。 * * SHA-256(hostname + platform + arch) 前 8 位。 * 同一台设备的指纹确定不变。 * * @returns 8 位十六进制设备指纹 */ export declare function getDeviceFingerprint(): string; /** * 解析 audit-trail.jsonl 的路径。 * * @param dataDirOverride 可选的数据目录覆盖(测试用) * @returns audit-trail.jsonl 文件路径 */ export declare function resolveTrailPath(dataDirOverride?: string): string; /** * 追加一条审计轨迹到 JSONL 文件。 * * @param entry 审计轨迹条目 * @param dataDirOverride 可选的数据目录覆盖(测试用) */ export declare function appendAuditTrail(entry: Omit & { deviceFingerprint?: string; timestamp?: string; }, dataDirOverride?: string): void; /** * 读取 audit-trail.jsonl 并解析为条目数组。 * * @param opts 可选过滤条件 * @param opts.dataDirOverride 数据目录覆盖 * @param opts.since 只返回此时间之后的条目(ISO 8601) * @param opts.agentId 只返回指定 agent 的条目 * @param opts.severity 只返回指定严重级别的条目 * @returns 审计轨迹条目数组 */ export declare function readAuditTrails(opts?: { dataDirOverride?: string; since?: string; agentId?: string; severity?: AuditTrailEntry['severity']; }): AuditTrailEntry[]; /** * 按指定维度聚合审计轨迹。 * * @param entries 审计轨迹条目数组 * @param groupBy 分组维度 * @returns Map<分组键, 该组的聚合统计> */ export declare function aggregateTrails(entries: AuditTrailEntry[], groupBy: 'agentId' | 'ruleId' | 'deviceFingerprint'): Map; /** * 生成审计报告摘要文本。 * * @param entries 审计轨迹条目数组 * @returns 人类可读的报告摘要 */ export declare function formatTrailReport(entries: AuditTrailEntry[]): string; //# sourceMappingURL=audit-trail.d.ts.map