import type { Prayer } from '../types.js'
import karagreVasateLakshmi from './karagre-vasate-lakshmi.js'
import samudraVasaneDevi from './samudra-vasane-devi.js'
import brahmarpanam from './brahmarpanam.js'
import shubhamKarotiKalyanam from './shubham-karoti-kalyanam.js'
import karacharanaKritam from './karacharana-kritam.js'
import vakratundaMahakaya from './vakratunda-mahakaya.js'
import tvamevaMata from './tvameva-mata.js'

// Slug-keyed (these daily prayers are not deity-keyed — most are universal).
// `as const satisfies` keeps the literal key union (so `PrayerSlug` auto-
// updates as prayers are added) while type-checking each value against `Prayer`.
// Ordered by the daily cycle: morning → bath → meal → evening → night, then
// the two occasion-framing prayers (invocation, closing).
const prayersBySlug = {
  'karagre-vasate-lakshmi': karagreVasateLakshmi,
  'samudra-vasane-devi': samudraVasaneDevi,
  'brahmarpanam': brahmarpanam,
  'shubham-karoti-kalyanam': shubhamKarotiKalyanam,
  'karacharana-kritam': karacharanaKritam,
  'vakratunda-mahakaya': vakratundaMahakaya,
  'tvameva-mata': tvamevaMata,
} as const satisfies Record<string, Prayer>

export type PrayerSlug = keyof typeof prayersBySlug

export default prayersBySlug
