import type { GoodVibesConfig } from '../config/schema.js'; /** * ProfileData - host-specific settings stored in a profile. * Excludes permissions and API keys, only display/behavior/provider settings. */ export interface ProfileData { display?: Partial | undefined; provider?: Pick | undefined; behavior?: Partial | undefined; } /** * ProfileInfo - Summary of a saved profile. */ export interface ProfileInfo { name: string; timestamp: number; filePath: string; } /** * ProfileManager - Save and load named SDK host config profiles. * * Profiles are stored as JSON files in the configured profile directory. * Only host-surface settings (display, provider, behavior categories) are saved; * permissions and API keys are never included. */ export declare class ProfileManager { private readonly profilesDir; private lastTimestamp; constructor(baseDir: string); get storagePath(): string; /** * save - Persist a profile under the given name. * Overwrites an existing profile with the same name. */ save(name: string, data: ProfileData): string; /** * load - Load a profile by name. Returns the profile data or throws if not found. */ load(name: string): { data: ProfileData; timestamp: number; }; /** * list - Return all saved profiles sorted by most recent first. */ list(): ProfileInfo[]; private nextTimestamp; /** * delete - Remove a profile by name. Returns true if deleted, false if not found. */ delete(name: string): boolean; /** * sanitizeName - Safe filename from profile name. */ sanitizeName(name: string): string; } //# sourceMappingURL=manager.d.ts.map