// ─── Store Index ──────────────────────────────────────────
// Exports all stores and re-exports commonly used utilities

// Stores
export { useUIStore } from './uiStore';
export type { UIState } from './uiStore';

export { usePrestigeStore } from './prestigeStore';
export type { PrestigeState, PrestigeActions, PrestigeStore } from './prestigeStore';

export { useManaStore, makeInitialElements } from './manaStore';
export type { ManaState, ManaActions, ManaStore } from './manaStore';

export { useCombatStore, makeInitialSpells } from './combatStore';
export type { CombatState, CombatActions, CombatStore } from './combat-state.types';

export { useCraftingStore } from './craftingStore';
export type { CraftingState, CraftingActions, CraftingStore, CraftingAttunement } from './craftingStore.types';

export { useAttunementStore } from './attunementStore';
export type { AttunementStoreState } from './attunementStore';

export { useDisciplineStore } from './discipline-slice';
export type { DisciplineStoreState, DisciplineStoreActions, DisciplineStore } from './discipline-slice';

export { useGameStore } from './gameStore';
export { useGameLoop } from './gameHooks';
export type { GameCoordinatorState } from './gameStore.types';
export type { GameCoordinatorStore } from './gameStore';

// Re-export utilities from utils.ts and computed-stats
export {
  fmt,
  fmtDec,
  formatHour,
  getFloorMaxHP,
  getFloorElement,
  getFloorElements,
  computeMaxMana,
  computeRegen,
  computeEffectiveRegen,
  computeClickMana,
  getMeditationBonus,
  getBoonBonuses,
  calcDamage,
  calcInsight,
  getIncursionStrength,
  canAffordSpellCost,
  deductSpellCost,
} from '../utils';

export { getStudySpeedMultiplier, getStudyCostMultiplier } from '../constants';
