import { create } from "zustand"; import { persist } from "zustand/middleware"; export type Theme = | "obsidian" | "arctic" | "midnight" | "vault" | "terminal" | "synthwave" | "ledger"; interface UiState { theme: Theme; sidebarOpen: boolean; currency: string; setTheme: (t: Theme) => void; setSidebarOpen: (v: boolean) => void; setCurrency: (c: string) => void; } export const useUiStore = create()( persist( (set) => ({ theme: "obsidian", sidebarOpen: true, currency: "GBP", setTheme: (theme) => set({ theme }), setSidebarOpen: (v) => set({ sidebarOpen: v }), setCurrency: (c) => set({ currency: c }), }), { name: "finance-ui" } ) );