import type { Katha } from '../types.js'
import satyanarayan from './satyanarayan/index.js'
import karvaChauth from './karva-chauth/index.js'
import vaibhavLakshmi from './vaibhav-lakshmi/index.js'
import santoshiMata from './santoshi-mata/index.js'
import solahSomvar from './solah-somvar/index.js'
import ahoiAshtami from './ahoi-ashtami/index.js'

// `as const satisfies` keeps the literal key union (so `KathaSlug` auto-
// updates as kathas are added) while still type-checking each value
// against `Katha`.
const kathasBySlug = {
  satyanarayan,
  'karva-chauth': karvaChauth,
  'vaibhav-lakshmi': vaibhavLakshmi,
  'santoshi-mata': santoshiMata,
  'solah-somvar': solahSomvar,
  'ahoi-ashtami': ahoiAshtami,
} as const satisfies Record<string, Katha>

export type KathaSlug = keyof typeof kathasBySlug

export default kathasBySlug
