import { derived, writable, type Readable } from 'svelte/store'; export const useState = (initialState: T): [Readable, (newState: T) => void] => { const state = writable(initialState); const dispatch = (newState: T) => state.set(newState); const readableState = derived(state, ($state) => $state); return [readableState, dispatch]; };