import { type Stats } from 'node:fs'; import { type Goal } from './schema.js'; export interface GoalProjectionCacheEntry { stat: Stats; value: T; } interface GoalListResult { goals: T[]; errors: { goalId: string; error: Error; }[]; } export declare class GoalStore { private readonly cwd; private readonly root; constructor(cwd: string); create(input: Goal): Promise; assertAbsent(id: string): void; get(id: string): Promise; find(id: string): Goal | undefined; iterate(): AsyncGenerator; iterateProjected(cache: Map>, project: (goal: Goal) => T): AsyncGenerator; private iterateIds; getSync(id: string): Goal; update(id: string, transform: (goal: Goal) => Goal, onSaved?: () => void): Promise; list(): Promise; list(project: (goal: Goal) => T | undefined): Promise>; private filePath; private read; } export {}; //# sourceMappingURL=store.d.ts.map