import { create } from 'zustand' import { persist } from 'zustand/middleware' interface SettingsState { fontSize: number tabSize: number fontFamily: string wordWrap: boolean lineNumbers: boolean ruler: boolean rulerColumn: number autoSave: boolean autoSaveDelay: number set: (key: K, value: SettingsState[K]) => void } export const useSettingsStore = create()( persist( (set) => ({ fontSize: 14, tabSize: 2, fontFamily: 'JetBrains Mono', wordWrap: true, lineNumbers: true, ruler: true, rulerColumn: 80, autoSave: false, autoSaveDelay: 2000, set: (key, value) => set({ [key]: value }), }), { name: 'yace-settings' } ) )