export interface UserStats { textsHumanized: number; // Number of texts humanized wordsProcessed: number; // Total words processed gptAverage: number; // GPT score or percentage totalSessions: number; // Total sessions the user has used totalDuration: number; averageSessionTime: number; // Average session time in minutes } export interface UserPreferences { theme: 'light' | 'dark' | 'system'; // Theme preference language: string; // Language code, e.g., 'en' timezone: string; // Timezone, e.g., 'UTC' emailNotifications: boolean; // Receive email notifications pushNotifications: boolean; // Receive push notifications marketingEmails: boolean; // Marketing emails subscription twoFactorEnabled: boolean; // 2FA enabled profileVisibility: 'public' | 'private' | 'friends'; // Profile visibility } export interface UserProfile { id: string; // UID of the user name: string; // Full name nickname: string; // Nickname username: string; // Username handle usernameChanged?: boolean; // Whether username was changed bio: string; // User bio email: string; // Email address avatar: string; // Avatar image URL joinDate: string; // Join date lastActive: string; // Last active time stats: UserStats; // Nested stats object preferences: UserPreferences; // Nested preferences object } export interface UserActivity { id: string; // Activity document ID action: string; // Action description timestamp: string; // Activity timestamp details?: string; // Optional extra details type: 'login' | 'profile' | 'settings' | 'security' | 'data'; // Activity type }