import type { Deity, Ashtottara } from '../types.js'
import ganeshaAshtottara from './ganesha.js'
import shivaAshtottara from './shiva.js'
import vishnuAshtottara from './vishnu.js'
import hanumanAshtottara from './hanuman.js'
import lakshmiAshtottara from './lakshmi.js'
import krishnaAshtottara from './krishna.js'
import ramaAshtottara from './rama.js'
import durgaAshtottara from './durga.js'
import saraswatiAshtottara from './saraswati.js'
import parvatiAshtottara from './parvati.js'
import kaliAshtottara from './kali.js'
import suryaAshtottara from './surya.js'
import brahmaAshtottara from './brahma.js'
import saiBabaAshtottara from './sai-baba.js'
import santoshiMataAshtottara from './santoshi-mata.js'
import sitaAshtottara from './sita.js'
import narasimhaAshtottara from './narasimha.js'

// Deity-keyed (one canonical ashtottara per deity, like aartis/chalisas).
// Missing keys return `undefined` from `getAshtottara` — by design for
// the two deferred deities:
//
//   - `vaishno-devi`: no canonical independent 108-name list exists;
//     the Vaishno Devi temple uses the Durga ashtottara. Consumers
//     should render `getAshtottara('durga')` for Vaishno-Devi puja UI.
//   - `khatu-shyam`: only ~40 famous epithets are preserved by the
//     Khatu temple tradition; no fixed-108 list exists. Consumers
//     should use `getMantra('om-shri-khatu-shyamaya-namah')` and the
//     aarti/chalisa for archana.
//
// See `SOURCES.md` for the full rationale.
const ashtottarasByDeity: Partial<Record<Deity, Ashtottara>> = {
  'ganesha': ganeshaAshtottara,
  'shiva': shivaAshtottara,
  'vishnu': vishnuAshtottara,
  'hanuman': hanumanAshtottara,
  'lakshmi': lakshmiAshtottara,
  'krishna': krishnaAshtottara,
  'rama': ramaAshtottara,
  'durga': durgaAshtottara,
  'saraswati': saraswatiAshtottara,
  'parvati': parvatiAshtottara,
  'kali': kaliAshtottara,
  'surya': suryaAshtottara,
  'brahma': brahmaAshtottara,
  'sai-baba': saiBabaAshtottara,
  'santoshi-mata': santoshiMataAshtottara,
  'sita': sitaAshtottara,
  'narasimha': narasimhaAshtottara,
  // 'vaishno-devi': deferred — see SOURCES.md
  // 'khatu-shyam': deferred — see SOURCES.md
}

export default ashtottarasByDeity
