@lumina-study/user-settings-redux
Version:
Redux store for Lumina Study user settings with unstorage persistence
34 lines • 1.92 kB
TypeScript
import { PayloadAction } from '@reduxjs/toolkit';
import type { UserSettings } from '@lumina-study/user-settings';
/**
* Redux slice for user settings
* Manages the state of user preferences including language
*/
export declare const userSettingsSlice: import("@reduxjs/toolkit").Slice<UserSettings, {
/**
* Set the complete user settings state
* Used primarily when loading persisted settings from storage
*/
setUserSettings: (state: import("@reduxjs/toolkit").WritableDraft<UserSettings>, action: PayloadAction<UserSettings>) => UserSettings;
/**
* Update the user interface language
*/
setLanguage: (state: import("@reduxjs/toolkit").WritableDraft<UserSettings>, action: PayloadAction<UserSettings["language"]>) => void;
/**
* Update partial user settings
*/
updateUserSettings: (state: import("@reduxjs/toolkit").WritableDraft<UserSettings>, action: PayloadAction<Partial<UserSettings>>) => {
language: "he" | "en";
fontFamily?: string | null;
shuffleQuestions?: boolean;
devMode?: boolean;
};
/**
* Reset settings to default values
*/
resetUserSettings: () => UserSettings;
}, "userSettings", "userSettings", import("@reduxjs/toolkit").SliceSelectors<UserSettings>>;
export declare const setUserSettings: import("@reduxjs/toolkit").ActionCreatorWithPayload<UserSettings, "userSettings/setUserSettings">, setLanguage: import("@reduxjs/toolkit").ActionCreatorWithPayload<"en" | "he", "userSettings/setLanguage">, updateUserSettings: import("@reduxjs/toolkit").ActionCreatorWithPayload<Partial<UserSettings>, "userSettings/updateUserSettings">, resetUserSettings: import("@reduxjs/toolkit").ActionCreatorWithoutPayload<"userSettings/resetUserSettings">;
declare const _default: import("@reduxjs/toolkit").Reducer<UserSettings>;
export default _default;
//# sourceMappingURL=userSettingsSlice.d.ts.map