/**
 * Skill refinements ledger — append-only record of applied/rejected
 * refinements targeting a given skill. Stored at
 * `.specweave/state/skill-refinements.json`.
 *
 * Shape (from 0671 plan.md §"Data Schemas"):
 * ```
 * {
 *   "refinements": [
 *     {
 *       "id": "ref_<hex>",
 *       "targetSkill": "<slug>",
 *       "author": "<email>",
 *       "signalIds": ["sig_..."],
 *       "diffSha": "<git commit SHA | ''>",
 *       "rationale": "<string>",
 *       "appliedAt": "<ISO-8601>",
 *       "status": "applied" | "rejected",
 *       "rejectionReason"?: "<string>"
 *     }
 *   ]
 * }
 * ```
 *
 * @module types/skill-refinements
 */
import { z } from 'zod';
export type RefinementStatus = 'applied' | 'rejected';
export interface RefinementLedgerEntry {
    id: string;
    targetSkill: string;
    author: string;
    signalIds: string[];
    /** Git commit SHA for applied entries; empty string for rejected entries. */
    diffSha: string;
    rationale: string;
    appliedAt: string;
    status: RefinementStatus;
    rejectionReason?: string;
}
export interface RefinementLedger {
    refinements: RefinementLedgerEntry[];
}
export declare const RefinementLedgerEntrySchema: z.ZodObject<{
    id: z.ZodString;
    targetSkill: z.ZodString;
    author: z.ZodString;
    signalIds: z.ZodArray<z.ZodString>;
    diffSha: z.ZodString;
    rationale: z.ZodString;
    appliedAt: z.ZodString;
    status: z.ZodEnum<{
        rejected: "rejected";
        applied: "applied";
    }>;
    rejectionReason: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const RefinementLedgerSchema: z.ZodObject<{
    refinements: z.ZodArray<z.ZodObject<{
        id: z.ZodString;
        targetSkill: z.ZodString;
        author: z.ZodString;
        signalIds: z.ZodArray<z.ZodString>;
        diffSha: z.ZodString;
        rationale: z.ZodString;
        appliedAt: z.ZodString;
        status: z.ZodEnum<{
            rejected: "rejected";
            applied: "applied";
        }>;
        rejectionReason: z.ZodOptional<z.ZodString>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const EMPTY_LEDGER: RefinementLedger;
//# sourceMappingURL=skill-refinements.d.ts.map