Validation Methods
Static type guards and validation methods exposed on the BanglaCalendar class, as well as instance validation helpers.
Static Type Guards
1. isBanglaYear()
static isBanglaYear(value: unknown): value is BanglaYearChecks whether a value is a valid Bangla year in Bangla digits (০-৯৯৯৯).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaYear('১৪৩০'); // true
BanglaCalendar.isBanglaYear('১০০০০'); // false (too long)
BanglaCalendar.isBanglaYear('1430'); // false (Latin digits)2. isBanglaYearEn()
static isBanglaYearEn(value: number): booleanChecks whether a number is a valid Bangla year in Latin digits (0-9999).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaYearEn(1430); // true
BanglaCalendar.isBanglaYearEn(10000); // false
BanglaCalendar.isBanglaYearEn(-1); // false3. isBanglaMonth()
static isBanglaMonth(value: unknown): value is BanglaMonthChecks whether a value is a valid Bangla month string in Bangla digits (১-১২).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaMonth('১'); // true
BanglaCalendar.isBanglaMonth('১২'); // true
BanglaCalendar.isBanglaMonth('১৩'); // false4. isBanglaMonthEn()
static isBanglaMonthEn(value: unknown): value is NumberRange<1, 12>Checks whether a value is a valid Bangla month number in Latin digits (1-12).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaMonthEn(1); // true
BanglaCalendar.isBanglaMonthEn(12); // true
BanglaCalendar.isBanglaMonthEn(13); // false5. isBanglaDate()
static isBanglaDate(value: unknown): value is BanglaDateChecks whether a value is a valid day of month in Bangla digits (১-৩১).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaDate('১'); // true
BanglaCalendar.isBanglaDate('৩১'); // true
BanglaCalendar.isBanglaDate('৩২'); // false6. isBanglaDateEn()
static isBanglaDateEn(value: unknown): value is NumberRange<1, 31>Checks whether a value is a valid day of month in Latin digits (1-31).
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaDateEn(1); // true
BanglaCalendar.isBanglaDateEn(31); // true
BanglaCalendar.isBanglaDateEn(32); // false7. isBanglaDateString()
static 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.
TIP
Supported separators are -, /, _, ., and space ().
import { BanglaCalendar } from 'bn-calendar';
BanglaCalendar.isBanglaDateString('১৪৩০-০১-০১'); // true
BanglaCalendar.isBanglaDateString('1430-01-01'); // false (Latin digits)
BanglaCalendar.isBanglaDateString('১৪৩০/১/১'); // true (single-digit month/date)
BanglaCalendar.isBanglaDateString('১৪৩০-১৩-০১'); // false (invalid month)Instance Methods
$hasVariantConfig()
$hasVariantConfig(value: unknown): value is { variant: BnCalendarVariant }Checks if a given value is a configuration object containing a valid calendar variant.
import { BanglaCalendar } from 'bn-calendar';
const bnCal = new BanglaCalendar();
bnCal.$hasVariantConfig({ variant: 'revised-2019' }); // true
bnCal.$hasVariantConfig({ variant: 'revised-1966' }); // true
bnCal.$hasVariantConfig({ variant: 'invalid' }); // false
bnCal.$hasVariantConfig({}); // false