hindu-devotional-texts
Version:
Hand-curated, typed, authoritative Hindu devotional content — aartis, chalisas, kathas, stotras, mantras, ashtottaras & sahasranamas, Vedic suktas, daily prayers, puja vidhi, Navratri, tirthas, the festival/ekadashi calendar, and full scriptures (Bhagavad
67 lines • 3.26 kB
TypeScript
import type { Bilingual, Deity } from '../types.js';
import type { MantraSlug } from '../mantras/index.js';
import type { PujaSlug } from '../puja/index.js';
/** The canonical list a tīrtha belongs to (the entry discriminator). */
export type TirthaCategory = 'jyotirlinga' | 'shakti-peetha' | 'char-dham' | 'chota-char-dham' | 'sapta-puri' | 'sacred-river';
/**
* A unified entry across every category — a single shape with a `category`
* discriminator and category-specific OPTIONAL fields (chosen over a
* discriminated union so `getAllTirthas()` returns one array type and the data
* files stay uniform). Which optionals are populated is governed by `category`:
* - `jyotirlinga` → `jyotirlingaNumber`
* - `shakti-peetha` → `bodyPart`, `shakti`, `bhairava?`, `isAshtadasha?`
* - `char-dham` → `direction`
* - others → none beyond the base.
*/
export interface TirthaEntry {
/** Stable kebab-case slug, unique across the whole module ('somnath', 'kamakhya'). */
id: string;
category: TirthaCategory;
/** Display name of the site. */
name: Bilingual;
/** Devanagari proper name, where it differs usefully from `name.hi`. */
nameSanskrit?: string;
/** Town / place. */
location: Bilingual;
/** Modern Indian state — or country, for the overseas Śakti Pīṭhas. */
state?: Bilingual;
/**
* Roster cross-link to per-deity content (aarti/chalisa/…). `null` when the
* presiding form is not in the 19-deity roster (e.g. the river goddesses).
*/
deity: Deity | null;
/** One- or two-sentence significance / distinguishing note. */
significance: Bilingual;
/** 1..12 — position in the Dvādaśa-Jyotirliṅga stotra (jyotirlinga only). */
jyotirlingaNumber?: number;
/** Cardinal direction the dhām represents — N/W/E/S (char-dham only). */
direction?: Bilingual;
/** The aṅga of Satī that fell at the site (shakti-peetha only). */
bodyPart?: Bilingual;
/** The presiding Śakti / Devī name (shakti-peetha only). */
shakti?: Bilingual;
/** The accompanying Bhairava (Śiva form) — thinly sourced, provisional. */
bhairava?: Bilingual;
/** One of the **18 Aṣṭādaśa Mahā** Śakti Pīṭha (the "Laṅkāyāṃ Śāṅkarī…" stotra). */
isAshtadasha?: boolean;
/** One of the **4 Ādi** (Chatasraḥ Ādi) Śakti Pīṭha: Kāmākhyā, Kālīghāṭ, Vimalā, Tārā-Tāriṇī. */
isAdiShaktiPeetha?: boolean;
/** In the widely-published **Sati-aṅga 51** (the body-part list). */
inSati51?: boolean;
/** In the **Devī Bhāgavata Aṣṭottara-śata (108)** enumeration (identifiable sites only). */
inAshtottara108?: boolean;
storySlug?: string;
pujaSlug?: PujaSlug;
mantraSlug?: MantraSlug;
}
/**
* A short reference śloka attached to a list (the Dvādaśa-Jyotirliṅga stotra,
* the Sapta-Purī śloka, the sapta-nadī invocation). `iast` is machine-generated
* from `devanagari` with sanscript and round-trip-verified — the Geeta/mantra
* bar (anusvāra normalised to `ṃ`). Asserted in `scripts/audit-verify.cjs`.
*/
export interface TirthaSloka {
devanagari: string;
iast: string;
}
//# sourceMappingURL=types.d.ts.map