This commit is contained in:
2025-12-11 13:50:38 +01:00
parent e4c1be628d
commit c7e5de40d6
212 changed files with 2965 additions and 763 deletions

View File

@@ -1,10 +1,12 @@
/**
* Domain Entity: Achievement
*
*
* Represents an achievement that can be earned by users.
* Achievements are categorized by role (driver, steward, admin) and type.
*/
import type { IEntity } from '@gridpilot/shared/domain';
export type AchievementCategory = 'driver' | 'steward' | 'admin' | 'community';
export type AchievementRarity = 'common' | 'uncommon' | 'rare' | 'epic' | 'legendary';
@@ -30,7 +32,7 @@ export interface AchievementRequirement {
operator: '>=' | '>' | '=' | '<' | '<=';
}
export class Achievement {
export class Achievement implements IEntity<string> {
readonly id: string;
readonly name: string;
readonly description: string;