/** * StorageService - Unified persistence layer * * Manages JSON file storage for all Foundation modules: * - Worktrees * - Sessions * - Context Snapshots * - Provider Health * * Storage locations: * - ~/.foundation/state/ (global state) * - .foundation/ (project-specific state) */ import type { Worktree, Session, ContextSnapshot, ProviderHealth } from '../types/index.js'; export declare class StorageService { private static instance; private globalStateDir; private projectStateDir; private state; private initialized; private constructor(); static getInstance(): StorageService; /** * Initialize storage by loading existing state */ init(): Promise; getWorktrees(): Worktree[]; getWorktree(id: string): Worktree | undefined; getWorktreeByPath(path: string): Worktree | undefined; getWorktreeByAlias(alias: string): Worktree | undefined; addWorktree(worktree: Worktree): void; updateWorktree(id: string, updates: Partial): void; removeWorktree(id: string): void; getSessions(): Session[]; getSession(id: string): Session | undefined; getActiveSessions(): Session[]; addSession(session: Session): void; updateSession(id: string, updates: Partial): void; removeSession(id: string): void; getSnapshots(): ContextSnapshot[]; getSnapshot(id: string): ContextSnapshot | undefined; getSnapshotByName(name: string): ContextSnapshot | undefined; addSnapshot(snapshot: ContextSnapshot): void; removeSnapshot(id: string): void; getProviderHealth(): ProviderHealth[]; getProviderHealthByName(provider: string): ProviderHealth | undefined; updateProviderHealth(provider: string, updates: Partial): void; private ensureDir; private getFilePath; private loadFile; private saveFile; /** * Get the global state directory path */ getGlobalStateDir(): string; /** * Get the project state directory path */ getProjectStateDir(): string; } //# sourceMappingURL=storage.service.d.ts.map