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.
56 lines • 1.28 kB
TypeScript
import { GameRule, GameEvent } from '../types';
/**
* Manages game rules and their evaluation
*/
export declare class RuleEngine {
private readonly rules;
/**
* Add a new rule to the engine
*/
addRule(rule: GameRule): void;
/**
* Remove a rule from the engine
*/
removeRule(ruleId: string): boolean;
/**
* Get all rules
*/
getRules(): GameRule[];
/**
* Get rules that are applicable to a specific event
*/
getApplicableRules(event: GameEvent): GameRule[];
/**
* Get rules by event type
*/
getRulesByEventType(eventType: string): GameRule[];
/**
* Enable a rule
*/
enableRule(ruleId: string): boolean;
/**
* Disable a rule
*/
disableRule(ruleId: string): boolean;
/**
* Update rule priority
*/
updateRulePriority(ruleId: string, priority: number): boolean;
/**
* Get rule by ID
*/
getRule(ruleId: string): GameRule | undefined;
/**
* Check if a rule exists
*/
hasRule(ruleId: string): boolean;
/**
* Get total number of rules
*/
getRuleCount(): number;
/**
* Get number of enabled rules
*/
getEnabledRuleCount(): number;
}
//# sourceMappingURL=RuleEngine.d.ts.map