UNPKG

react-achievements-zustand

Version:

This package allows users to transpose a React achievements engine over their React apps using Zustand for state management

32 lines (31 loc) 2.21 kB
import { PayloadAction } from '@reduxjs/toolkit'; import { InitialAchievementMetrics, AchievementMetrics, SerializedAchievementConfiguration } from '../types'; export interface AchievementState { config: SerializedAchievementConfiguration; metrics: AchievementMetrics; unlockedAchievements: string[]; previouslyAwardedAchievements: string[]; storageKey: string | null; } export declare const achievementSlice: import("@reduxjs/toolkit").Slice<AchievementState, { initialize: (state: import("immer/dist/internal").WritableDraft<AchievementState>, action: PayloadAction<{ config: SerializedAchievementConfiguration; initialState?: InitialAchievementMetrics & { previouslyAwardedAchievements?: string[]; }; storageKey: string; }>) => void; setMetrics: (state: import("immer/dist/internal").WritableDraft<AchievementState>, action: PayloadAction<AchievementMetrics>) => void; unlockAchievement: (state: import("immer/dist/internal").WritableDraft<AchievementState>, action: PayloadAction<string>) => void; markAchievementAsAwarded: (state: import("immer/dist/internal").WritableDraft<AchievementState>, action: PayloadAction<string>) => void; resetAchievements: (state: import("immer/dist/internal").WritableDraft<AchievementState>) => void; }, "achievements">; export declare const initialize: import("@reduxjs/toolkit").ActionCreatorWithPayload<{ config: SerializedAchievementConfiguration; initialState?: InitialAchievementMetrics & { previouslyAwardedAchievements?: string[]; }; storageKey: string; }, "achievements/initialize">, setMetrics: import("@reduxjs/toolkit").ActionCreatorWithPayload<AchievementMetrics, "achievements/setMetrics">, unlockAchievement: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "achievements/unlockAchievement">, resetAchievements: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"achievements/resetAchievements">, markAchievementAsAwarded: import("@reduxjs/toolkit").ActionCreatorWithPayload<string, "achievements/markAchievementAsAwarded">; declare const _default: import("@reduxjs/toolkit").Reducer<AchievementState>; export default _default;