UNPKG

gamify-ui-core

Version:

🚀 The ultimate gamification engine for modern web applications. Framework-agnostic, real-time leaderboards, custom rule engine, streaks, missions, and AI-powered features.

68 lines • 1.65 kB
import { User, Badge, LeaderboardEntry } from '../types'; /** * Manages all user-related operations in the gamification system */ export declare class UserManager { private readonly users; /** * Create a new user */ createUser(id: string, name?: string, email?: string): User; /** * Get a user by ID */ getUser(id: string): User | undefined; /** * Update user information */ updateUser(id: string, updates: Partial<User>): User | null; /** * Get all users */ getAllUsers(): User[]; /** * Add XP to a user */ addXp(userId: string, xp: number): User | null; /** * Add a badge to a user */ addBadge(userId: string, badge: Badge): User | null; /** * Update user streak */ updateStreak(userId: string, streakType: 'daily' | 'weekly' | 'monthly'): User | null; /** * Get level progress for a user */ getLevelProgress(user: User): { current: number; next: number; progress: number; }; /** * Get leaderboard data */ getLeaderboard(limit?: number): LeaderboardEntry[]; /** * Check if user should level up */ private checkLevelUp; /** * Calculate XP required for a specific level */ private calculateXpForLevel; /** * Calculate level from XP (same logic as utils/user.ts) */ private calculateLevelFromXp; /** * Create a new streak */ private createNewStreak; /** * Update streak count based on time */ private updateStreakCount; } //# sourceMappingURL=UserManager.d.ts.map