export interface NotificationSettings {
  email_notifications: boolean;
  push_notifications: boolean;
  browser_notifications: boolean;
  email_on_follow: boolean;
  email_on_like: boolean;
  email_on_comment: boolean;
  email_on_message: boolean;
  email_on_mention: boolean;
  email_marketing: boolean;
}

export interface PrivacySettings {
  allow_search_indexing: boolean;
  show_activity: boolean;
}

export interface ContentSettings {
  explicit_content: boolean;
  autoplay: boolean;
}

export interface PreferenceSettings {
  language: string; // ISO 639-1
  timezone: string; // IANA timezone
  theme: 'light' | 'dark' | 'auto';
}

// FE-PAGE-004: Playback Settings
export interface PlaybackSettings {
  quality: 'low' | 'medium' | 'high' | 'lossless';
  volume: number; // 0-1
  crossfade: number; // seconds, 0-12
  autoplay: boolean;
}

export interface UserSettings {
  notifications: NotificationSettings;
  privacy: PrivacySettings;
  content: ContentSettings;
  preferences: PreferenceSettings;
  playback?: PlaybackSettings; // FE-PAGE-004: Optional playback settings
}

export interface UpdateSettingsRequest {
  notifications?: Partial<NotificationSettings>;
  privacy?: Partial<PrivacySettings>;
  content?: Partial<ContentSettings>;
  preferences?: Partial<PreferenceSettings>;
  playback?: Partial<PlaybackSettings>; // FE-PAGE-004: Playback settings
}
