import { UserPreferences, GenerationOptions, EmbeddingSettings } from '../types/index.js';
interface ExportData {
    format: string;
    version: string;
    preferences: Partial<UserPreferences>;
    sessions?: unknown[];
    documents?: unknown[];
    exportedAt: string;
}
declare class PreferencesService {
    private defaultPreferences;
    constructor();
    private ensurePreferencesExist;
    getPreferences(userId?: string): UserPreferences;
    private mergeWithDefaults;
    updatePreferences(updates: Partial<UserPreferences>, userId?: string): UserPreferences;
    setDefaultModel(model: string, userId?: string): UserPreferences;
    setTheme(theme: 'light' | 'dark' | 'ophelia', userId?: string): UserPreferences;
    setSystemMessage(systemMessage: string, userId?: string): UserPreferences;
    getSystemMessage(userId?: string): string;
    getDefaultModel(userId?: string): string;
    getGenerationOptions(userId?: string): GenerationOptions;
    updateGenerationOptions(options: Partial<GenerationOptions>, userId?: string): UserPreferences;
    setGenerationOptions(options: GenerationOptions, userId?: string): UserPreferences;
    resetGenerationOptions(userId?: string): UserPreferences;
    getEmbeddingSettings(userId?: string): EmbeddingSettings;
    updateEmbeddingSettings(settings: Partial<EmbeddingSettings>, userId?: string): UserPreferences;
    setEmbeddingSettings(settings: EmbeddingSettings, userId?: string): UserPreferences;
    resetEmbeddingSettings(userId?: string): UserPreferences;
    resetToDefaults(userId?: string): UserPreferences;
    importData(data: ExportData, mergeStrategy?: 'merge' | 'replace', userId?: string): UserPreferences;
}
declare const preferencesService: PreferencesService;
export default preferencesService;
//# sourceMappingURL=preferencesService.d.ts.map