📄 File detail

hooks/useSettings.ts

🧩 .ts📏 18 lines💾 618 bytes📝 text
← Back to All Files

🎯 Use case

This file lives under “hooks/”, which covers reusable UI or integration hooks. On the API surface it exposes ReadonlySettings and useSettings — mainly functions, hooks, or classes. It composes internal code from state (relative imports).

Generated from folder role, exports, dependency roots, and inline comments — not hand-reviewed for every path.

🧠 Inline summary

import { type AppState, useAppState } from '../state/AppState.js' /** * Settings type as stored in AppState (DeepImmutable wrapped). * Use this type when you need to annotate variables that hold settings from useSettings().

📤 Exports (heuristic)

  • ReadonlySettings
  • useSettings

🖥️ Source preview

import { type AppState, useAppState } from '../state/AppState.js'

/**
 * Settings type as stored in AppState (DeepImmutable wrapped).
 * Use this type when you need to annotate variables that hold settings from useSettings().
 */
export type ReadonlySettings = AppState['settings']

/**
 * React hook to access current settings from AppState.
 * Settings automatically update when files change on disk via settingsChangeDetector.
 *
 * Use this instead of getSettings_DEPRECATED() in React components for reactive updates.
 */
export function useSettings(): ReadonlySettings {
  return useAppState(s => s.settings)
}