Standalone Type Guards
bn-calendar/utils provides the following type guards:
isBanglaYear()
typescript
function isBanglaYear(value: unknown): value is BanglaYearChecks whether a value is a valid Bangla year in Bangla digits (০-৯৯৯৯).
typescript
import { isBanglaYear } from 'bn-calendar/utils';
isBanglaYear('১৪৩০'); // true
isBanglaYear('১০০০০'); // false (too long)
isBanglaYear('1430'); // false (Latin digits)isBanglaMonth()
typescript
function isBanglaMonth(value: unknown): value is BanglaMonthChecks whether a value is a valid Bangla month string in Bangla digits (১-১২).
typescript
import { isBanglaMonth } from 'bn-calendar/utils';
isBanglaMonth('১'); // true
isBanglaMonth('১২'); // true
isBanglaMonth('১৩'); // falseisBanglaDate()
typescript
function isBanglaDate(value: unknown): value is BanglaDateChecks whether a value is a valid day of month in Bangla digits (১-৩১).
typescript
import { isBanglaDate } from 'bn-calendar/utils';
isBanglaDate('১'); // true
isBanglaDate('৩১'); // true
isBanglaDate('৩২'); // falseisBanglaDateString()
typescript
function isBanglaDateString(value: unknown): value is stringChecks whether a string is a valid Bangla date formatted as YYYY-MM-DD using Bangla digits and supported separators.
Note
Supported separators are -, /, _, ., and space ().
typescript
import { isBanglaDateString } from 'bn-calendar/utils';
isBanglaDateString('১৪৩০-০১-০১'); // true
isBanglaDateString('১৪৩০/১/১'); // true (single-digit month/date)
isBanglaDateString('1430-01-01'); // false (Latin digits)
isBanglaDateString('১৪৩০-১৩-০১'); // false (invalid month)