Skip to main content

useSimpleAchievements

useSimpleAchievements(): object

Defined in: src/hooks/useSimpleAchievements.ts:8

A simplified hook for achievement tracking. Provides the local-first happy path for tracking, progress, and explicit state names.

Returns​

all​

all: AchievementWithStatus[] = achievementState.allAchievements

Deprecated​

Use allAchievements instead. This alias will be removed in the next major release.

allAchievements​

allAchievements: AchievementWithStatus[] = achievementState.allAchievements

completionPercent​

completionPercent: number

emit()​

emit: (name, payload?) => void | Promise<void | AchievementClientMutationResult> = event

Parameters​

name​

string

payload?​

unknown

Returns​

void | Promise<void | AchievementClientMutationResult>

error​

error: Error | null

event()​

event: (name, payload?) => void | Promise<void | AchievementClientMutationResult>

Parameters​

name​

string

payload?​

unknown

Returns​

void | Promise<void | AchievementClientMutationResult>

exportData()​

exportData: () => string

Returns​

string

getAllAchievements()​

getAllAchievements: () => AchievementWithStatus[]

Returns​

AchievementWithStatus[]

getState()​

getState: () => object

Returns​

object

metrics​

metrics: Record<string, any>

unlocked​

unlocked: string[]

importData()​

importData: (jsonString, options?) => ImportResult

Parameters​

jsonString​

string

options?​

ImportOptions

Returns​

ImportResult

increment()​

increment: (metric, amount) => void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

Parameters​

metric​

string

amount​

number = 1

Returns​

void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

isLoading​

isLoading: boolean

lockedAchievements​

lockedAchievements: AchievementWithStatus[]

metrics​

metrics: Record<string, any> = achievementState.metrics

nextAchievement​

nextAchievement: AchievementWithStatus

refresh()​

refresh: () => Promise<AchievementSnapshot>

Returns​

Promise<AchievementSnapshot>

reset()​

reset: () => void | Promise<void>

Returns​

void | Promise<void>

totalCount​

totalCount: number = achievementState.totalCount

track()​

track: (metric, value) => void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

Parameters​

metric​

string

value​

any

Returns​

void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

trackMultiple()​

trackMultiple: (metrics) => void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

Parameters​

metrics​

Record<string, any>

Returns​

void | AchievementUpdateResult | Promise<void | AchievementClientMutationResult>

unlocked​

unlocked: string[] = achievementState.unlockedIds

Deprecated​

Use unlockedIds instead. This alias will be removed in the next major release.

unlockedAchievements​

unlockedAchievements: AchievementWithStatus[] = achievementState.unlockedAchievements

unlockedCount​

unlockedCount: number = achievementState.unlockedCount

unlockedIds​

unlockedIds: string[] = achievementState.unlockedIds