import type { LevelUpEvent, ProgressFile, ScoredCommit } from "./types.js"; export interface AwardResult { file: ProgressFile; gained: number; levelUp: LevelUpEvent | null; } /** Streak multiplier for the current streak length (in days). */ export declare function streakMultiplier(days: number): number; /** Raw XP for a commit of a given size (before multipliers/caps). */ export declare function commitXp(linesChanged: number): number; /** Update streak for an XP event happening now. Returns the active multiplier. */ export declare function applyStreak(file: ProgressFile, now: number): number; /** * Award XP for one completed prompt (caller ensures the run finished, not canceled, ≥1 turn). * Diminishing returns: after 15 prompts in a rolling hour, +2 instead of +10. */ export declare function awardPrompt(file: ProgressFile, now: number, cwd?: string): AwardResult; /** * Award XP for new commits. Dedupes by patch-id (reverts/recommits score 0) and caps * XP-earning commits at 6 per rolling hour (extra commits still count in totals). */ export declare function awardCommits(file: ProgressFile, commits: ScoredCommit[], now: number, cwd?: string): AwardResult; //# sourceMappingURL=engine.d.ts.map