import type { GoalEvidence, GoalHistoryEntry, GoalSpec } from "../contracts/goal.js";
export interface GoalPersister {
    load(goalId: string): Promise<GoalSpec | null>;
    save(spec: GoalSpec): Promise<void>;
    list(): Promise<string[]>;
    loadEvidence(goalId: string): Promise<GoalEvidence[]>;
    saveEvidence(goalId: string, evidence: GoalEvidence[]): Promise<void>;
    appendHistory(goalId: string, entry: GoalHistoryEntry): Promise<void>;
    loadLatestActive(): Promise<GoalSpec | null>;
}
export declare function createGoalPersister(basePath?: string): GoalPersister;
