/** * 开源生态影响力评分(纯函数、零依赖)—— dsh-community 域。 * * 「影响力」不是一个数字能说清的,但一个 0-100 的 pulse 分数 + 分项 + 建议, * 足够让 agent(和人)每天早上知道生态哪里好、哪里该发力: * - stars 星标基数(对数级分档,20%) * - downloads npm 周下载(分档,15%) * - momentum 星标增速(相对上一期,25%) * - health 社区响应健康度(积压 issue/PR 占比,20%) * - freshness 发布新鲜度(距上次 release 天数,20%) * * 缺失的可选项取中性值 50(不惩罚信息不足),保证分数可解释、可手算、可测试。 */ export interface OssPulseInput { /** 当前星标数(必填) */ stars: number; /** 最近 7 天 npm 下载量 */ downloadsWeekly?: number; /** 上一期星标数(如 7 天前),用于计算增速 */ starsPrevious?: number; /** 打开的 issue 数(不含 PR) */ openIssues?: number; /** 打开的 PR 数 */ openPullRequests?: number; /** 距上次 release 的天数 */ daysSinceRelease?: number; } export interface OssPulseOutput { /** 0-100 综合分(四舍五入取整) */ score: number; grade: 'A' | 'B' | 'C' | 'D'; components: { stars: number; downloads: number; momentum: number; health: number; freshness: number; }; suggestions: string[]; summary: string; } /** * 计算开源生态影响力 pulse(0-100)+ 等级 + 行动建议。 * 输入全部可手算验证;非法输入(负数等)抛 RangeError。 */ export declare function ossPulse(input: OssPulseInput): OssPulseOutput;