export interface SkillUsageRecord {
    /** Skill name (matches SKILL.md frontmatter `name`). */
    name: string;
    /** ISO timestamp of the last time the skill was used (executed by an agent). */
    lastUsedAt?: string;
    /** ISO timestamp of the last time the skill was viewed (opened in UI / list_skills surfaced it). */
    lastViewedAt?: string;
    /** Number of times the agent has executed this skill. */
    useCount: number;
    /** Number of times the skill has appeared in a list / been viewed. */
    viewCount: number;
    /** When true, the Curator must not archive or merge this skill. */
    pinned: boolean;
    /** When true, the skill was moved to .harness/skills/_archive/. Curator can still see it for analysis. */
    archived: boolean;
    /** ISO timestamp when the skill was created (best-effort, populated lazily). */
    firstSeenAt: string;
    /** ISO timestamp the record was last written. */
    updatedAt: string;
}
export interface SkillUsageStore {
    version: 1;
    records: Record<string, SkillUsageRecord>;
}
export declare function loadSkillUsage(projectDir: string): Promise<SkillUsageStore>;
export declare function saveSkillUsage(projectDir: string, store: SkillUsageStore): Promise<void>;
export declare function recordSkillView(projectDir: string, name: string, now?: Date): Promise<SkillUsageRecord>;
export declare function recordSkillUse(projectDir: string, name: string, now?: Date): Promise<SkillUsageRecord>;
export declare function setSkillPinned(projectDir: string, name: string, pinned: boolean, now?: Date): Promise<SkillUsageRecord>;
export declare function setSkillArchived(projectDir: string, name: string, archived: boolean, now?: Date): Promise<SkillUsageRecord>;
export declare function listSkillUsage(projectDir: string): Promise<SkillUsageRecord[]>;
export declare function getSkillUsage(projectDir: string, name: string): Promise<SkillUsageRecord | undefined>;
//# sourceMappingURL=skillUsage.d.ts.map