UNPKG

bongabdo

Version:

Modern TypeScript library for converting Gregorian dates to Bengali calendar (বঙ্গাব্দ)

60 lines (53 loc) 2.47 kB
interface BanglaDate { year: number; date: number; month: string; day: string; season: string; } interface BongabdoOptions { date?: Date | string; format?: string; showSeason?: boolean; showWeekDays?: boolean; convertToBanglaDigits?: boolean; } /** * Convert a Gregorian date to Bengali calendar date */ declare function convertToBanglaDate(givenDate: Date): BanglaDate; /** * Format a Bengali date according to the specified format */ declare function formatBanglaDate(banglaDate: BanglaDate, options?: BongabdoOptions): string; /** * Check if a year is a leap year */ declare function isLeapYear(year: number): boolean; /** * Convert English digits to Bengali digits */ declare function convertToBanglaDigits(text: string): string; /** * Parse date input to Date object */ declare function parseDateInput(dateInput?: Date | string): Date; declare const BANGLA_MONTHS: readonly ["বৈশাখ", "জ্যৈষ্ঠ", "আষাঢ়", "শ্রাবণ", "ভাদ্র", "আশ্বিন", "কার্তিক", "অগ্রহায়ণ", "পৌষ", "মাঘ", "ফাল্গুন", "চৈত্র"]; declare const WEEK_DAYS: readonly ["রবিবার", "সোমবার", "মঙ্গলবার", "বুধবার", "বৃহস্পতিবার", "শুক্রবার", "শনিবার"]; declare const BANGLA_SEASONS: readonly ["গ্রীষ্ম", "বর্ষা", "শরৎ", "হেমন্ত", "শীত", "বসন্ত"]; declare const TOTAL_MONTH_DAYS: readonly [31, 31, 31, 31, 31, 30, 30, 30, 30, 30, 30, 30]; declare const BANGLA_DIGITS: Record<string, string>; declare const DEFAULT_FORMAT = "DD MM, YY"; /** * Main function to convert a Gregorian date to Bengali calendar format */ declare function bongabdo(dateInput?: Date | string, options?: BongabdoOptions): string; /** * Get raw Bengali date object without formatting */ declare function getBanglaDate(dateInput?: Date | string): BanglaDate; /** * Format an existing Bengali date object */ declare function formatBanglaDateOnly(banglaDate: BanglaDate, options?: BongabdoOptions): string; export { BANGLA_DIGITS, BANGLA_MONTHS, BANGLA_SEASONS, type BanglaDate, type BongabdoOptions, DEFAULT_FORMAT, TOTAL_MONTH_DAYS, WEEK_DAYS, bongabdo, convertToBanglaDate, convertToBanglaDigits, formatBanglaDate, formatBanglaDateOnly, getBanglaDate, isLeapYear, parseDateInput };